rake-compiler plugin for hoe c-extensions.
This plugin is for extconf.rb based projects that want to use rake-compiler to deal with packaging binary gems. It expects a standard extconf setup, namely that your extconf.rb and c source is located in: ext/project-name.
Look at nokogiri for a good example of how to use this.
Compile your c-extension.
Optional: Defines what tasks need to be compile first. [default: test]
Activate the rake-compiler dependencies.
# File lib/hoe/compiler.rb, line 35 def activate_compiler_deps dependency "rake-compiler", ">= 0.7", :development gem "rake-compiler", ">= 0.7" end
Define tasks for compiler plugin.
# File lib/hoe/compiler.rb, line 43 def define_compiler_tasks require "rake/extensiontask" Rake::ExtensionTask.new self.name, spec do |ext| ext.lib_dir = File.join(*["lib", self.name, ENV["FAT_DIR"]].compact) end compile_tasks.each do |t| task t => :compile end end
Initialize variables for compiler plugin.
# File lib/hoe/compiler.rb, line 25 def initialize_compiler self.compile_tasks = [:multi, :test, :check_manifest] self.spec_extras = { :extensions => ["ext/#{self.name}/extconf.rb"] } clean_globs << "lib/#{self.name}/*.{so,bundle,dll}" end