ruby/ext/dl/install.rb

50 строки
1.1 KiB
Ruby

require 'mkmf'
require 'ftools'
SO_LIBS = ["dl.so"]
$ruby_version = CONFIG['MAJOR'] + "." + CONFIG['MINOR']
$prefix = CONFIG['prefix']
$libdir = File.join($prefix,'lib')
$rubylibdir = File.join($libdir, 'ruby', $ruby_version)
$arch = CONFIG['arch']
$archdir = File.join($rubylibdir, $arch)
def find(dir, match = /./)
Dir.chdir(dir)
files = []
Dir.new(".").each{|file|
if( file != "." && file != ".." )
case File.ftype(file)
when "file"
if( file =~ match )
files.push(File.join(dir,file))
end
when "directory"
files += find(file, match).collect{|f| File.join(dir,f)}
end
end
}
Dir.chdir("..")
return files
end
def install()
rb_files = find(File.join(".","lib"), /.rb$/)
SO_LIBS.each{|f|
File.makedirs($rubylibdir, "#{$archdir}")
File.install(f, File.join($archdir,f), 0555, true)
}
rb_files.each{|f|
origfile = f
instfile = File.join($rubylibdir, origfile.sub("./lib/",""))
instdir = File.dirname(instfile)
File.makedirs(instdir)
File.install(origfile, instfile, 0644, true)
}
end
install()