summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorLamont Granquist <lamont@scriptkiddie.org>2013-11-16 21:43:09 -0800
committerLamont Granquist <lamont@scriptkiddie.org>2013-11-16 21:43:09 -0800
commit49cd5b0f29f42b807357bdf588415b0c8a402c1d (patch)
treeb340669443f83cba0fb57f5bf20880856a664389 /ext
parent0ef617d38872e6b2cc94e870fdd7e89e5854a7b9 (diff)
downloadffi-yajl-49cd5b0f29f42b807357bdf588415b0c8a402c1d.tar.gz
pass compiler flags around correctly (i hope)
- pass in fron ENV vars, through mkmf, then back out to ENV
Diffstat (limited to 'ext')
-rw-r--r--ext/libyajl2/extconf.rb38
1 files changed, 18 insertions, 20 deletions
diff --git a/ext/libyajl2/extconf.rb b/ext/libyajl2/extconf.rb
index a449001..f83435c 100644
--- a/ext/libyajl2/extconf.rb
+++ b/ext/libyajl2/extconf.rb
@@ -11,9 +11,9 @@ if !defined?(RUBY_ENGINE) || RUBY_ENGINE == 'ruby' || RUBY_ENGINE == 'rbx'
RbConfig::MAKEFILE_CONFIG['CC'] = ENV['CC'] if ENV['CC']
## except if you're doing an unoptimized gcc install we're going to help you out a bit
- #if RbConfig::MAKEFILE_CONFIG['CC'] =~ /gcc|clang/
- # $CFLAGS << " -O3" unless $CFLAGS[/-O\d/]
- #end
+ if RbConfig::MAKEFILE_CONFIG['CC'] =~ /gcc|clang/
+ $CFLAGS << " -O3" unless $CFLAGS[/-O\d/]
+ end
pkg_config('yajl')
@@ -26,19 +26,24 @@ if !defined?(RUBY_ENGINE) || RUBY_ENGINE == 'ruby' || RUBY_ENGINE == 'rbx'
create_makefile("dummy")
else
+ # always install libyajl2 on Jruby
+ # FIXME: get the conditional mkmf stuff to work on Jruby
libyajl2_ok = false
end
- prefix=File.expand_path(File.join(File.dirname(__FILE__), "..", ".."))
-
- unless libyajl2_ok
- system "wget -O yajl-2.0.1.tar.gz http://github.com/lloyd/yajl/tarball/2.0.1"
- system "tar xvf yajl-2.0.1.tar.gz"
- Dir.chdir "lloyd-yajl-f4b2b1a"
- system "./configure --prefix=#{prefix} > /tmp/libyajl.out"
- system "make install >> /tmp/libyajl.out"
- Dir.chdir ".."
- end
+prefix=File.expand_path(File.join(File.dirname(__FILE__), "..", ".."))
+
+unless libyajl2_ok
+ ENV['CFLAGS'] = $CFLAGS
+ ENV['LDFLAGS'] = $LDFLAGS
+ ENV['CC'] = RbConfig::MAKEFILE_CONFIG['CC']
+ system "wget -O yajl-2.0.1.tar.gz http://github.com/lloyd/yajl/tarball/2.0.1"
+ system "tar xvf yajl-2.0.1.tar.gz"
+ Dir.chdir "lloyd-yajl-f4b2b1a"
+ system "./configure --prefix=#{prefix} > /tmp/libyajl.out"
+ system "make install >> /tmp/libyajl.out"
+ Dir.chdir ".."
+end
File.open("Makefile", "w") do |mf|
@@ -46,10 +51,3 @@ File.open("Makefile", "w") do |mf|
mf.puts "all install::\n"
end
-##LIBYAJL_VERSION="2.0.1"
-##SUPPORT_LIB = FFI.map_library_name("libyajl2-#{LIBYAJL_VERSION}")
-##
-##prefix=File.expand_path(File.join(ENV['RUBYARCHDIR'], ".."))
-##
-##end
-#