mirror of
https://github.com/Stichting-MINIX-Research-Foundation/pkgsrc-ng.git
synced 2025-08-03 17:59:07 -04:00
50 lines
2.2 KiB
Ruby
50 lines
2.2 KiB
Ruby
$NetBSD: patch-lib_rubygems_installer.rb,v 1.1 2014/03/14 19:40:47 taca Exp $
|
|
|
|
* Add install_root option for pkgsrc's rubygems support.
|
|
* Tweak build_info directory with destdir to store build_args.
|
|
|
|
--- lib/rubygems/installer.rb.orig 2013-12-19 03:05:37.000000000 +0000
|
|
+++ lib/rubygems/installer.rb
|
|
@@ -95,6 +95,9 @@ class Gem::Installer
|
|
# foo_exec18.
|
|
# :ignore_dependencies:: Don't raise if a dependency is missing.
|
|
# :install_dir:: The directory to install the gem into.
|
|
+ # :install_root:: The directory to use as a buildroot for "destdir"-style
|
|
+ # installation. All paths during installation are relative
|
|
+ # to the buildroot.
|
|
# :security_policy:: Use the specified security policy. See Gem::Security
|
|
# :user_install:: Indicate that the gem should be unpacked into the users
|
|
# personal gem directory.
|
|
@@ -583,12 +586,20 @@ class Gem::Installer
|
|
@format_executable = options[:format_executable]
|
|
@security_policy = options[:security_policy]
|
|
@wrappers = options[:wrappers]
|
|
+ install_root = options[:install_root]
|
|
+ unless install_root.nil? or install_root.empty?
|
|
+ @install_root = File.expand_path install_root
|
|
+ @gem_home = File.join(@install_root, @gem_home)
|
|
+ end
|
|
@only_install_dir = options[:only_install_dir]
|
|
|
|
# If the user has asked for the gem to be installed in a directory that is
|
|
# the system gem directory, then use the system bin directory, else create
|
|
# (or use) a new bin dir under the gem_home.
|
|
- @bin_dir = options[:bin_dir] || Gem.bindir(gem_home)
|
|
+ @bin_dir = options[:bin_dir] || Gem.bindir(gem_home, @install_root)
|
|
+ unless @install_root.nil? or @install_root.empty?
|
|
+ @bin_dir = File.join(@install_root, @bin_dir)
|
|
+ end
|
|
@development = options[:development]
|
|
|
|
@build_args = options[:build_args] || Gem::Command.build_args
|
|
@@ -769,6 +780,9 @@ TEXT
|
|
return if @build_args.empty?
|
|
|
|
build_info_dir = File.join gem_home, 'build_info'
|
|
+ unless @install_root.nil? or @install_root.empty?
|
|
+ build_info_dir = File.join @gem_home, "build_info"
|
|
+ end
|
|
|
|
FileUtils.mkdir_p build_info_dir
|
|
|