Class: Bundler::Source::Path::Installer

Inherits:
RubyGemsGemInstaller show all
Defined in:
lib/bundler/source/path/installer.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from RubyGemsGemInstaller

#build_extensions, #check_executable_overwrite, #ensure_writable_dir, #gem_checksum, #generate_bin_script, #generate_plugins, #install, #pre_install_checks

Constructor Details

#initialize(spec, options = {}) ⇒ Installer

Returns a new instance of Installer.



11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/bundler/source/path/installer.rb', line 11

def initialize(spec, options = {})
  @options            = options
  @spec               = spec
  @gem_dir            = Bundler.rubygems.path(spec.full_gem_path)
  @wrappers           = true
  @env_shebang        = true
  @format_executable  = options[:format_executable] || false
  @build_args         = options[:build_args] || Bundler.rubygems.build_args
  @gem_bin_dir        = "#{Bundler.rubygems.gem_dir}/bin"
  @disable_extensions = options[:disable_extensions]
  @bin_dir = @gem_bin_dir
end

Instance Attribute Details

#specObject (readonly)

Returns the value of attribute spec.



9
10
11
# File 'lib/bundler/source/path/installer.rb', line 9

def spec
  @spec
end

Instance Method Details

#post_installObject



24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/bundler/source/path/installer.rb', line 24

def post_install
  run_hooks(:pre_install)

  unless @disable_extensions
    build_extensions
    run_hooks(:post_build)
  end

  generate_bin unless spec.executables.empty?

  run_hooks(:post_install)
end