ruby/lib/rubygems/specification.rb
##
# Builds extensions for this platform if the gem has extensions listed and
# the gem.build_complete file is missing.
Builds extensions for this platform if the gem has extensions listed and
the gem.build_complete file is missing.
Builds extensions for this platform if the gem has extensions listed and the gem . build_complete file is missing .
def build_extensions 
    return if default_gem?
    return if extensions.empty?
    return if installed_by_version < Gem::Version.new('2.2.0.preview.2')
    return if File.exist? gem_build_complete_path
    return if !File.writable?(base_dir)
    return if !File.exist?(File.join(base_dir, 'extensions'))
    begin
      unresolved_deps = Gem::Specification.unresolved_deps.dup
      Gem::Specification.unresolved_deps.clear
      require 'rubygems/config_file'
      require 'rubygems/ext'
      require 'rubygems/user_interaction'
      ui = Gem::SilentUI.new
      Gem::DefaultUserInteraction.use_ui ui do
        builder = Gem::Ext::Builder.new self
        builder.build_extensions
      end
    ensure
      ui.close if ui
      Gem::Specification.unresolved_deps.replace unresolved_deps
    end
  end
def build_extensions return if default_gem? return if extensions . empty? return if installed_by_version < Gem :: Version . new ( '2.2.0.preview.2' ) return if File . exist? gem_build_complete_path return if ! File . writable? ( base_dir ) return if ! File . exist? ( File . join ( base_dir , 'extensions' ) ) begin unresolved_deps = Gem :: Specification . unresolved_deps . dup Gem :: Specification . unresolved_deps . clear require 'rubygems/config_file' require 'rubygems/ext' require 'rubygems/user_interaction' ui = Gem :: SilentUI . new Gem :: DefaultUserInteraction . use_ui ui do builder = Gem :: Ext :: Builder . new self builder . build_extensions end ensure ui . close if ui Gem :: Specification . unresolved_deps . replace unresolved_deps end end
Builds extensions for this platform if the gem has extensions listed and
the gem.build_complete file is missing.
Builds extensions for this platform if the gem has extensions listed and the gem . build_complete file is missing .
# :nodoc: # We need to require things in $LOAD_PATH without looking for the # extension we are about to build.