diff options
author | Andre Arko <andre@arko.net> | 2015-04-13 21:23:01 -0700 |
---|---|---|
committer | Andre Arko <andre@arko.net> | 2015-04-13 22:50:16 -0700 |
commit | e41edd133a737ed95581a4e850076c7160289269 (patch) | |
tree | 896f72d91172eea039efd8052dc1362ee5a05402 /lib/bundler/installer.rb | |
parent | 3c3d5c635c23abd43c1e2f1b72d55f6d38956119 (diff) | |
download | bundler-e41edd133a737ed95581a4e850076c7160289269.tar.gz |
Merge tag 'v1.9.4'
Version 1.9.4
Conflicts:
lib/bundler/installer.rb
lib/bundler/match_platform.rb
lib/bundler/source/rubygems.rb
Diffstat (limited to 'lib/bundler/installer.rb')
-rw-r--r-- | lib/bundler/installer.rb | 31 |
1 files changed, 19 insertions, 12 deletions
diff --git a/lib/bundler/installer.rb b/lib/bundler/installer.rb index 6cbdf3a6a9..7365b8f27e 100644 --- a/lib/bundler/installer.rb +++ b/lib/bundler/installer.rb @@ -98,20 +98,27 @@ module Bundler def install_gem_from_spec(spec, standalone = false, worker = 0, force = false) # Fetch the build settings, if there are any - settings = Bundler.settings["build.#{spec.name}"] - install_message = nil - post_install_message = nil - debug_message = nil - Bundler.rubygems.with_build_args [settings] do - install_message, post_install_message, debug_message = spec.source.install(spec, force) - if install_message.include? 'Installing' - Bundler.ui.confirm install_message - else - Bundler.ui.info install_message + settings = Bundler.settings["build.#{spec.name}"] + messages = nil + + if settings + # Build arguments are global, so this is mutexed + Bundler.rubygems.with_build_args [settings] do + messages = spec.source.install(spec, force) end - Bundler.ui.debug debug_message if debug_message - Bundler.ui.debug "#{worker}: #{spec.name} (#{spec.version}) from #{spec.loaded_from}" + else + messages = spec.source.install(spec, force) + end + + install_message, post_install_message, debug_message = *messages + + if install_message.include? 'Installing' + Bundler.ui.confirm install_message + else + Bundler.ui.info install_message end + Bundler.ui.debug debug_message if debug_message + Bundler.ui.debug "#{worker}: #{spec.name} (#{spec.version}) from #{spec.loaded_from}" if Bundler.settings[:bin] && standalone generate_standalone_bundler_executable_stubs(spec) |