Skip to content

Commit

Permalink
Fix rbinstall bugs (#2930)
Browse files Browse the repository at this point in the history
* Fix incorrect calls to `Gem.ensure_gem_subdirectories`

This method doesn't take keyword args.

* Remove stuff no longer necessary

Now `Gem.ensure_gem_subdirectories` is doing its job, so some stuff is
no longer needed.

* Use the proper method for default gems

* Respect DESTDIR when creating rubygems folder layout

* Use `Gem.default_specifications_dir`
  • Loading branch information
deivid-rodriguez committed Mar 8, 2020
1 parent 47a1872 commit 2b6ec76
Showing 1 changed file with 6 additions and 7 deletions.
13 changes: 6 additions & 7 deletions tool/rbinstall.rb
Expand Up @@ -819,12 +819,11 @@ def load_gemspec(file)

def install_default_gem(dir, srcdir)
gem_dir = Gem.default_dir
directories = Gem.ensure_gem_subdirectories(gem_dir, :mode => $dir_mode)
prepare "default gems from #{dir}", gem_dir, directories
install_dir = with_destdir(gem_dir)
Gem.ensure_default_gem_subdirectories(install_dir, $dir_mode)
prepare "default gems from #{dir}", gem_dir

spec_dir = File.join(gem_dir, directories.grep(/^spec/)[0])
default_spec_dir = "#{spec_dir}/default"
makedirs(default_spec_dir)
default_spec_dir = Gem.default_specifications_dir

gems = Dir.glob("#{srcdir}/#{dir}/**/*.gemspec").map {|src|
spec = load_gemspec(src)
Expand Down Expand Up @@ -866,9 +865,9 @@ def install_default_gem(dir, srcdir)

install?(:ext, :comm, :gem, :'bundled-gems') do
gem_dir = Gem.default_dir
directories = Gem.ensure_gem_subdirectories(gem_dir, :mode => $dir_mode)
prepare "bundled gems", gem_dir, directories
install_dir = with_destdir(gem_dir)
Gem.ensure_gem_subdirectories(install_dir, $dir_mode)
prepare "bundled gems", gem_dir
installed_gems = {}
options = {
:install_dir => install_dir,
Expand Down

0 comments on commit 2b6ec76

Please sign in to comment.