aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-09-04 06:15:58 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-09-04 06:15:58 +0000
commitc07636bd6316aca1d7406e967303456e70821a50 (patch)
tree6b92bf971a0acb623232899a3f220c31b38daa3b
parent5334abe1854f4193f8ac366168819ea75d44fefc (diff)
downloadruby-c07636bd6316aca1d7406e967303456e70821a50.tar.gz
rbinstall.rb: chdir to gem directory [ci skip]
* tool/rbinstall.rb (gem): load gemspec files under each directories, since some gemspecs read files there. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rwxr-xr-xtool/rbinstall.rb6
1 files changed, 5 insertions, 1 deletions
diff --git a/tool/rbinstall.rb b/tool/rbinstall.rb
index 0d7ec57912..2081a1f9d9 100755
--- a/tool/rbinstall.rb
+++ b/tool/rbinstall.rb
@@ -755,7 +755,11 @@ install?(:ext, :comm, :gem) do
}
gem_ext_dir = "#$extout/gems/#{CONFIG['arch']}"
extensions_dir = Gem::StubSpecification.gemspec_stub("", gem_dir, gem_dir).extensions_dir
- Gem::Specification.each_spec([srcdir+'/gems/*']) do |spec|
+ Gem::Specification.each_gemspec([srcdir+'/gems/*']) do |path|
+ dir = File.dirname(path)
+ spec = Dir.chdir(dir) {
+ Gem::Specification.load(File.basename(path))
+ }
spec.extension_dir = "#{extensions_dir}/#{spec.full_name}"
if File.directory?(ext = "#{gem_ext_dir}/#{spec.full_name}")
spec.extensions[0] ||= "-"