diff options
Diffstat (limited to 'tool')
-rwxr-xr-x | tool/rbinstall.rb | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/tool/rbinstall.rb b/tool/rbinstall.rb index 28315f8bff..83e5c7e020 100755 --- a/tool/rbinstall.rb +++ b/tool/rbinstall.rb @@ -777,8 +777,15 @@ install?(:ext, :comm, :gem) do next if gems.empty? if defined?(Zlib) Gem.instance_variable_set(:@ruby, with_destdir(File.join(bindir, ruby_install_name))) + silent = Gem::SilentUI.new gems.each do |gem| - Gem.install(gem, Gem::Requirement.default, options) + inst = Gem::Installer.new(gem, options) + inst.spec.extension_dir = with_destdir(inst.spec.extension_dir) + begin + Gem::DefaultUserInteraction.use_ui(silent) {inst.install} + rescue Gem::InstallError => e + next + end gemname = File.basename(gem) puts "#{" "*30}#{gemname}" end |