From 3a7367ccc319499127ead147e5a08f769e44208e Mon Sep 17 00:00:00 2001 From: Nobuyoshi Nakada Date: Tue, 10 Jan 2023 21:19:58 +0900 Subject: [PATCH] mkconfig: Map `includedir` only for system ruby Only when installing to the system path on macOS, prepend '$(SDKROOT)' and remap `includedir`. Fix https://github.com/rbenv/ruby-build/discussions/2123 --- test/mkmf/test_config.rb | 4 ++-- test/test_rbconfig.rb | 9 --------- tool/mkconfig.rb | 4 +++- 3 files changed, 5 insertions(+), 12 deletions(-) diff --git a/test/mkmf/test_config.rb b/test/mkmf/test_config.rb index 3878db1964..93ebe3a4ea 100644 --- a/test/mkmf/test_config.rb +++ b/test/mkmf/test_config.rb @@ -7,9 +7,9 @@ require 'mkmf' class TestMkmfConfig < Test::Unit::TestCase def test_dir_config bug8074 = '[Bug #8074]' - lib = RbConfig.expand(RbConfig::MAKEFILE_CONFIG["libdir"], "exec_prefix"=>"") + lib = RbConfig.expand(RbConfig::MAKEFILE_CONFIG["libdir"], "exec_prefix"=>"/test/foo") assert_separately %w[-rmkmf - -- --with-foo-dir=/test/foo], %{ - assert_equal(%w[/test/foo/include /test/foo#{lib}], dir_config("foo"), #{bug8074.dump}) + assert_equal(%w[/test/foo/include #{lib}], dir_config("foo"), #{bug8074.dump}) } end end diff --git a/test/test_rbconfig.rb b/test/test_rbconfig.rb index fcbbbd8500..1bbf01b9a6 100644 --- a/test/test_rbconfig.rb +++ b/test/test_rbconfig.rb @@ -51,13 +51,4 @@ class TestRbConfig < Test::Unit::TestCase assert_match(/\$\(sitearch|\$\(rubysitearchprefix\)/, val, "#{key} #{bug7823}") end end - - if /darwin/ =~ RUBY_PLATFORM - def test_sdkroot - assert_separately([{"SDKROOT" => "$(prefix)/SDKRoot"}], "#{<<~"begin;"}\n#{<<~'end;'}") - begin; - assert_equal RbConfig::CONFIG["prefix"]+"/SDKRoot", RbConfig::CONFIG["SDKROOT"] - end; - end - end end diff --git a/tool/mkconfig.rb b/tool/mkconfig.rb index 29a70287d0..7a447fb234 100755 --- a/tool/mkconfig.rb +++ b/tool/mkconfig.rb @@ -278,7 +278,7 @@ EOS print <