Bug #15035 ยป make_install_rg.patch
| lib/rubygems/installer.rb | ||
|---|---|---|
|
# return the stub script text used to launch the true Ruby script
|
||
|
def windows_stub_script(bindir, bin_file_name)
|
||
|
rb_bindir = RbConfig::CONFIG["bindir"]
|
||
|
# All comparisons should be case insensitive
|
||
|
if bindir.downcase == RbConfig::CONFIG["bindir"].downcase
|
||
|
if bindir.downcase == rb_bindir.downcase
|
||
|
# stub & ruby.exe withing same folder. Portable
|
||
|
<<-TEXT
|
||
|
@ECHO OFF
|
||
|
@"%~dp0ruby.exe" "%~dpn0" %*
|
||
|
TEXT
|
||
|
elsif bindir.downcase.start_with? RbConfig::TOPDIR.downcase
|
||
|
elsif bindir.downcase.start_with? (RbConfig::TOPDIR || File.dirname(rb_bindir)).downcase
|
||
|
# stub within ruby folder, but not standard bin. Not portable
|
||
|
require 'pathname'
|
||
|
from = Pathname.new bindir
|
||
|
to = Pathname.new RbConfig::CONFIG["bindir"]
|
||
|
to = Pathname.new rb_bindir
|
||
|
rel = to.relative_path_from from
|
||
|
<<-TEXT
|
||
|
@ECHO OFF
|
||
| tool/rbinstall.rb | ||
|---|---|---|
|
}
|
||
|
gem_ext_dir = "#$extout/gems/#{CONFIG['arch']}"
|
||
|
extensions_dir = Gem::StubSpecification.gemspec_stub("", gem_dir, gem_dir).extensions_dir
|
||
|
Gem::Specification.each_gemspec([srcdir+'/gems/*']) do |path|
|
||
|
dirs = Gem::Util.glob_files_in_dir "*/", "#{srcdir}/gems"
|
||
|
Gem::Specification.each_gemspec(dirs) do |path|
|
||
|
spec = load_gemspec(path)
|
||
|
next unless spec.platform == Gem::Platform::RUBY
|
||
|
next unless spec.full_name == path[srcdir.size..-1][/\A\/gems\/([^\/]+)/, 1]
|
||