Type:
Class
Constants:
ENV_PATHS : %w[/usr/bin/env /bin/env]

Paths where env(1) might live. Some systems are broken and have it in /bin

CHDIR_MUTEX : Mutex.new # :nodoc:

The builder shells-out to run various commands after changing the directory. This means multiple installations cannot be allowed to build extensions in parallel as they may change each other's directories leading to broken extensions or failed installations.

The installer installs the files contained in the .gem into the Gem.home.

Gem::Installer does the work of putting files in all the right places on the filesystem including unpacking the gem into its gem dir, installing the gemspec in the specifications dir, storing the cached gem in the cache dir, and installing either wrappers or symlinks for executables.

The installer invokes pre and post install hooks. Hooks can be added either through a rubygems_plugin.rb file in an installed gem or via a rubygems/defaults/#{RUBY_ENGINE}.rb or rubygems/defaults/operating_system.rb file. See Gem.pre_install and Gem.post_install for details.

write_spec

write_spec() Instance Public methods Writes the .gemspec specification (in Ruby)

2015-04-09 10:39:47
generate_bin_symlink

generate_bin_symlink(filename, bindir) Instance Public methods Creates the symlinks

2015-04-09 09:48:14
generate_bin

generate_bin() Instance Public methods DOC: Missing docs or :nodoc:.

2015-04-09 09:44:01
extract_files

extract_files() Instance Public methods Reads the file index and extracts each

2015-04-09 09:27:04
build_extensions

build_extensions() Instance Public methods Builds extensions. Valid types of

2015-04-09 08:46:49
generate_bin_script

generate_bin_script(filename, bindir) Instance Public methods Creates the scripts

2015-04-09 09:46:35
installed_specs

installed_specs() Instance Public methods Return an Array of Specifications

2015-04-09 09:58:55
ensure_dependencies_met

ensure_dependencies_met() Instance Public methods DOC: Missing docs or :nodoc:

2015-04-09 08:58:00
ensure_dependency

ensure_dependency(spec, dependency) Instance Public methods Ensure that the

2015-04-09 09:03:55
exec_format

exec_format() Class Public methods Defaults to use Ruby's program prefix and

2015-04-09 08:32:43