aboutsummaryrefslogtreecommitdiffstats
path: root/lib/rubygems
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rubygems')
-rw-r--r--lib/rubygems/defaults.rb8
-rw-r--r--lib/rubygems/ext/ext_conf_builder.rb2
2 files changed, 9 insertions, 1 deletions
diff --git a/lib/rubygems/defaults.rb b/lib/rubygems/defaults.rb
index e4bf4e5a7f..715c0b71b3 100644
--- a/lib/rubygems/defaults.rb
+++ b/lib/rubygems/defaults.rb
@@ -152,4 +152,12 @@ module Gem
def self.default_gems_use_full_paths?
ruby_engine != 'ruby'
end
+
+ ##
+ # Install extensions into lib as well as into the extension directory.
+
+ def self.install_extension_in_lib # :nodoc:
+ true
+ end
+
end
diff --git a/lib/rubygems/ext/ext_conf_builder.rb b/lib/rubygems/ext/ext_conf_builder.rb
index 84d4609017..402aa966c0 100644
--- a/lib/rubygems/ext/ext_conf_builder.rb
+++ b/lib/rubygems/ext/ext_conf_builder.rb
@@ -44,7 +44,7 @@ class Gem::Ext::ExtConfBuilder < Gem::Ext::Builder
if tmp_dest
# TODO remove in RubyGems 3
- if lib_dir then
+ if Gem.install_extension_in_lib and lib_dir then
FileUtils.mkdir_p lib_dir
entries = Dir.entries(tmp_dest) - %w[. ..]
entries = entries.map { |entry| File.join tmp_dest, entry }