diff options
Diffstat (limited to 'patchsets/patches-1.9.3_p194/009_no-gems.patch')
-rw-r--r-- | patchsets/patches-1.9.3_p194/009_no-gems.patch | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/patchsets/patches-1.9.3_p194/009_no-gems.patch b/patchsets/patches-1.9.3_p194/009_no-gems.patch new file mode 100644 index 0000000..0c60885 --- /dev/null +++ b/patchsets/patches-1.9.3_p194/009_no-gems.patch @@ -0,0 +1,55 @@ +--- ruby-1.9.3-preview1.orig/tool/rbinstall.rb ++++ ruby-1.9.3-preview1/tool/rbinstall.rb +@@ -532,51 +532,7 @@ install?(:local, :comm, :man) do + end + + install?(:ext, :comm, :gem) do +- $:.unshift(File.join(srcdir, "lib")) +- require("rubygems.rb") +- gem_dir = Gem.default_dir +- directories = Gem.ensure_gem_subdirectories(gem_dir) +- prepare "default gems", gem_dir, directories +- +- spec_dir = File.join(gem_dir, directories.grep(/^spec/)[0]) +- File.foreach(File.join(srcdir, "defs/default_gems")) do |line| +- line.chomp! +- line.sub!(/\s*#.*/, '') +- next if line.empty? +- words = [] +- line.scan(/\G\s*([^\[\]\s]+|\[([^\[\]]*)\])/) do +- words << ($2 ? $2.split : $1) +- end +- name, src, execs = *words +- next unless name and src +- execs ||= [] +- src = File.join(srcdir, src) +- version = open(src) {|f| f.find {|s| /^\s*\w*VERSION\s*=(?!=)/ =~ s}} or next +- version = version.split(%r"=\s*", 2)[1].strip[/\A([\'\"])(.*?)\1/, 2] +- full_name = "#{name}-#{version}" +- +- puts "#{" "*30}#{name} #{version}" +- open_for_install(File.join(spec_dir, "#{full_name}.gemspec"), $data_mode) do +- <<-GEMSPEC +-Gem::Specification.new do |s| +- s.name = #{name.dump} +- s.version = #{version.dump} +- s.summary = "This #{name} is bundled with Ruby" +- s.executables = #{execs.inspect} +-end +- GEMSPEC +- end +- +- unless execs.empty? then +- bin_dir = File.join(gem_dir, 'gems', full_name, 'bin') +- makedirs(bin_dir) +- +- execs.each do |exec| +- exec = File.join(srcdir, 'bin', exec) +- install(exec, bin_dir, :mode => $prog_mode) +- end +- end +- end ++ # gems are unbundled + end + + parse_args() |