diff options
author | Hiroshi SHIBATA <hsbt@ruby-lang.org> | 2019-07-28 09:59:07 +0800 |
---|---|---|
committer | Hiroshi SHIBATA <hsbt@ruby-lang.org> | 2019-07-31 07:47:02 +0800 |
commit | 77c0e23b0c28f543e1fb4fbf20cae216be0398f9 (patch) | |
tree | 94d3458bbeb8f99885b50b815dd14271bbd4d1cd /lib/rubygems/compatibility.rb | |
parent | 2a81d3a26a1b9512efb394ec87f73463496d830d (diff) | |
download | ruby-77c0e23b0c28f543e1fb4fbf20cae216be0398f9.tar.gz |
[rubygems/rubygems] Partly reverted be962ca0c411f3b4bcfebfb6e714c78cbad12775
* `Gem::ConfigMap` is still used by Bundler.
* `Gem::RubyGemsVersion` is also still referred by the old gems.
https://github.com/rubygems/rubygems/commit/249c3ff44f
Diffstat (limited to 'lib/rubygems/compatibility.rb')
-rw-r--r-- | lib/rubygems/compatibility.rb | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/lib/rubygems/compatibility.rb b/lib/rubygems/compatibility.rb new file mode 100644 index 0000000000..9238deee72 --- /dev/null +++ b/lib/rubygems/compatibility.rb @@ -0,0 +1,38 @@ +# frozen_string_literal: true +# :stopdoc: + +#-- +# This file contains all sorts of little compatibility hacks that we've +# had to introduce over the years. Quarantining them into one file helps +# us know when we can get rid of them. +# +# Ruby 1.9.x has introduced some things that are awkward, and we need to +# support them, so we define some constants to use later. +#++ + +# TODO remove at RubyGems 4 +module Gem + RubyGemsVersion = VERSION + + RbConfigPriorities = %w[ + MAJOR + MINOR + TEENY + EXEEXT RUBY_SO_NAME arch bindir datadir libdir ruby_install_name + ruby_version rubylibprefix sitedir sitelibdir vendordir vendorlibdir + rubylibdir + ].freeze + + unless defined?(ConfigMap) + ## + # Configuration settings from ::RbConfig + ConfigMap = Hash.new do |cm, key| + cm[key] = RbConfig::CONFIG[key.to_s] + end + else + RbConfigPriorities.each do |key| + ConfigMap[key.to_sym] = RbConfig::CONFIG[key] + end + end + +end |