From 3c411489d16076c2058b904b6b3d7a674643c754 Mon Sep 17 00:00:00 2001 From: evanweaver Date: Wed, 17 Oct 2007 03:27:51 +0000 Subject: paths shuffle git-svn-id: svn+ssh://rubyforge.org/var/svn/mongrel/trunk@662 19e92222-5c0b-0410-8929-a290d50e31e9 --- Rakefile | 86 +++++++++++++++++++++++++++++++++------------------------------- 1 file changed, 44 insertions(+), 42 deletions(-) (limited to 'Rakefile') diff --git a/Rakefile b/Rakefile index 16fbcc9..f758f3d 100644 --- a/Rakefile +++ b/Rakefile @@ -17,58 +17,60 @@ Echoe.new("mongrel") do |p| p.require_signed = true case RUBY_PLATFORM - when /mswin/ - p.certificate_chain = ['~/gem_certificates/mongrel-public_cert.pem', - '~/gem_certificates/luislavena-mongrel-public_cert.pem'] - else - p.certificate_chain = ['~/p/configuration/gem_certificates/mongrel/mongrel-public_cert.pem', - '~/p/configuration/gem_certificates/evan_weaver-mongrel-public_cert.pem'] - end + when /mswin/ + p.certificate_chain = ['~/gem_certificates/mongrel-public_cert.pem', + '~/gem_certificates/luislavena-mongrel-public_cert.pem'] + else + p.certificate_chain = ['~/p/configuration/gem_certificates/mongrel/mongrel-public_cert.pem', + '~/p/configuration/gem_certificates/evan_weaver-mongrel-public_cert.pem'] end p.eval = proc do case RUBY_PLATFORM - when /mswin/ - self.files += ['lib/http11.so'] - extensions.clear - self.platform = Gem::Platform::WIN32 - when /jruby/ - self.files += ['lib/http11.jar'] - extensions.clear - self.platform = 'jruby' - else - add_dependency('daemons', '>= 1.0.3') - add_dependency('fastthread', '>= 1.0.1') - end + when /mswin/ + extensions.clear + self.files += ['lib/http11.so'] + self.platform = Gem::Platform::WIN32 + when /jruby/ + extensions.clear + self.files += ['lib/http11.jar'] + self.platform = 'jruby' + else + add_dependency('daemons', '>= 1.0.3') + add_dependency('fastthread', '>= 1.0.1') + end end + end -case RUBY_PLATFORM - # A hack around RubyGems and Echoe for pre-compiled extensions. - when /mswin/ - file "lib/http11.so" do - extension = "ext/http11/extconf.rb" - directory = File.dirname(extension) - Dir.chdir(directory) do - ruby File.basename(extension) - system(PLATFORM =~ /win32/ ? 'nmake' : 'make') - end - move_extensions - end - task :compile => ["lib/http11.so"] - when /jruby/ - file "lib/http11.jar" do - directory = "jruby_ext/http11" - Dir.chdir(directory) { system "ant jar" } - move_extensions - end - task :compile => ["lib/http11.jar"] -end +#### A hack around RubyGems and Echoe for pre-compiled extensions. -#### Helper +extension = "ext/http11/extconf.rb" +extension_dir = File.dirname(extension) def move_extensions - Dir["#{directory}/*.#{Config::CONFIG['DLEXT']}"].each { |file| cp file, "lib/" } + Dir["#{extension_dir}/*.#{Config::CONFIG['DLEXT']}"].each { |file| cp file, "lib/" } +end + +case RUBY_PLATFORM +when /mswin/ + filename = "lib/http11.so" + file filename do + Dir.chdir(extension_dir) do + ruby File.basename(extension) + system(PLATFORM =~ /win32/ ? 'nmake' : 'make') + end + move_extensions + end + task :compile => [filename] + +when /jruby/ + filename = "lib/http11.jar" + file filename do + Dir.chdir(extension_dir) { sh "ant jar" } + move_extensions + end + task :compile => [filename] end #### Project-wide install and uninstall tasks -- cgit v1.2.3-24-ge0c7