# We can't use Ruby's standard build procedures # on Windows because the Ruby executable is # built with VC++ while here we want to build # with MingW. So just roll our own... require 'fileutils' require 'rbconfig' EXTENSION_NAME = "libxml_ruby.#{Config::CONFIG["DLEXT"]}" # MingW insists the import library is .dll.a EXTENSION_LIB_NAME = "libxml_ruby.dll.a" # This is called when the Windows GEM is installed! task :install do # Gems will pass these two environment variables: # RUBYARCHDIR=#{dest_path} # RUBYLIBDIR=#{dest_path} dest_path = ENV['RUBYLIBDIR'] # Copy the extension cp(EXTENSION_NAME, dest_path) # Copy the import library (used by libxslt) cp(EXTENSION_LIB_NAME, dest_path) # Copy dlls Dir.glob('*.dll').each do |dll| cp(dll, dest_path) end end task :default => :install