summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-07-18 07:17:43 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-07-18 07:17:43 +0000
commit5a03c2569046f9b3919429088f230b01e719360f (patch)
tree11bae103ca5b52f66804686d9ff3554bd92207ce /lib
parent5d743d7662abaf99577d2d6dd4264ea02ba87087 (diff)
mkmf.rb: hack for -framework
* lib/mkmf.rb (have_framework): get rid of separating -framework option and its argument and dealing with the argument as a library or an object name. if $LDFLAGS were an array... git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@36437 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib')
-rw-r--r--lib/mkmf.rb9
1 files changed, 6 insertions, 3 deletions
diff --git a/lib/mkmf.rb b/lib/mkmf.rb
index 85a372abaf..8dd36d3c3f 100644
--- a/lib/mkmf.rb
+++ b/lib/mkmf.rb
@@ -1017,9 +1017,12 @@ SRC
def have_framework(fw, &b)
checking_for fw do
src = cpp_include("#{fw}/#{fw}.h") << "\n" "int main(void){return 0;}"
- if try_link(src, opt = "-ObjC -framework #{fw}", &b)
+ if try_link(src, "-ObjC -framework #{fw}", &b)
$defs.push(format("-DHAVE_FRAMEWORK_%s", fw.tr_cpp))
- $LDFLAGS << " " << opt
+ # TODO: non-worse way than this hack, to get rid of separating
+ # option and its argument.
+ opt = " -ObjC -framework\0#{fw}"
+ $LDFLAGS << opt
true
else
false
@@ -1794,7 +1797,7 @@ INCFLAGS = -I. #$INCFLAGS
DEFS = #{CONFIG['DEFS']}
CPPFLAGS = #{extconf_h}#{$CPPFLAGS}
CXXFLAGS = $(CFLAGS) #{CONFIG['CXXFLAGS']}
-ldflags = #{$LDFLAGS}
+ldflags = #{$LDFLAGS.tr!("\0", " ")}
dldflags = #{$DLDFLAGS} #{CONFIG['EXTDLDFLAGS']}
ARCH_FLAG = #{$ARCH_FLAG}
DLDFLAGS = $(ldflags) $(dldflags) $(ARCH_FLAG)