Sha256: afc2916a240d47ce45177fb6912842760078e119e4f1894bc4b21dae67708be2
Contents?: true
Size: 1.28 KB
Versions: 3
Compression:
Stored size: 1.28 KB
Contents
require 'tmpdir' require 'open-uri' require 'archive/tar/minitar' require 'zlib' require 'fileutils' require 'bundler' Bundler::GemHelper.install_tasks desc 'Add ruby headers under lib for a given VERSION and PATHCLEVEL' task :add_source do version = ENV['VERSION'] or abort "Need a $VERSION" patchlevel = ENV['PATCHLEVEL'] or abort "Need a $PATCHLEVEL" ruby_dir = "ruby-#{version}" minor_version = version.split('.')[0..1].join('.') uri_path = "http://ftp.ruby-lang.org/pub/ruby/#{minor_version}/#{ruby_dir}.tar.gz" dest_dir = File.dirname(__FILE__) + "/lib/debase/ruby_core_source/#{ruby_dir}" if ENV['PATCHLEVEL'] dest_dir = dest_dir + "-p" + patchlevel end puts "Downloading #{uri_path}..." temp = open(uri_path) puts "Unpacking #{uri_path}..." tgz = Zlib::GzipReader.new(File.open(temp, "rb")) FileUtils.mkdir_p(dest_dir) Dir.mktmpdir do |dir| inc_dir = dir + "/" + ruby_dir + "/*.inc" hdr_dir = dir + "/" + ruby_dir + "/*.h" more_hdr_dir = dir + "/" + ruby_dir + "/ccan/**/*.h" Archive::Tar::Minitar.unpack(tgz, dir) Dir.glob([ inc_dir, hdr_dir, more_hdr_dir ]).each do |file| target = file.sub(dir + '/' + ruby_dir, dest_dir) FileUtils.mkdir_p(File.dirname(target)) FileUtils.cp(file, target, verbose: false) end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
debase-ruby_core_source-0.7.8 | Rakefile |
debase-ruby_core_source-0.7.7 | Rakefile |
debase-ruby_core_source-0.7.6 | Rakefile |