Sha256: ddd57639726a2a9a1957fa863e97199b52c73612ed9cbfc0f31fbd08350e9a2f
Contents?: true
Size: 1.12 KB
Versions: 2
Compression:
Stored size: 1.12 KB
Contents
namespace :extconf do extension = File.basename(__FILE__, '.rake') ext = "ext/#{extension}" ext_so = "#{ext}/#{extension}.#{Config::CONFIG['DLEXT']}" ext_files = FileList[ "#{ext}/*.c", "#{ext}/*.h", "#{ext}/*.rl", "#{ext}/extconf.rb", "#{ext}/Makefile", # "lib" ] task :compile => extension do if Dir.glob("**/#{extension}.{o,so,dll}").length == 0 STDERR.puts "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" STDERR.puts "Gem actually failed to build. Your system is" STDERR.puts "NOT configured properly to build charguess." STDERR.puts "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" exit(1) end end desc "Builds just the #{extension} extension" task extension.to_sym => ["#{ext}/Makefile", ext_so ] file "#{ext}/Makefile" => ["#{ext}/extconf.rb"] do Dir.chdir(ext) do ruby "extconf.rb" end end file ext_so => ext_files do Dir.chdir(ext) do sh(PLATFORM =~ /win32/ ? 'nmake' : 'make') do |ok, res| if !ok require "fileutils" FileUtils.rm Dir.glob('*.{so,o,dll,bundle}') end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
charguess-1.3 | tasks/extconf/charguess.rake |
charguess-1.2 | tasks/extconf/charguess.rake |