[前][次][番号順一覧][スレッド一覧]

ruby-changes:65871

From: Nobuyoshi <ko1@a...>
Date: Thu, 15 Apr 2021 14:56:21 +0900 (JST)
Subject: [ruby-changes:65871] fd978621cc (master): mkconfig.rb: Update around SDKROOT

https://git.ruby-lang.org/ruby.git/commit/?id=fd978621cc

From fd978621ccbc9519afc05ad031ba2518e9a6f379 Mon Sep 17 00:00:00 2001
From: Nobuyoshi Nakada <nobu@r...>
Date: Thu, 15 Apr 2021 12:49:06 +0900
Subject: mkconfig.rb: Update around SDKROOT

c.f. https://opensource.apple.com/source/ruby/ruby-145.40.1/patches/tool_mkconfig.rb.diff

* moved to "includedir" from "oldincludedir".
* honor "$(prefix)/include" if exists, otherwise fallback to `xcrun`.
---
 tool/mkconfig.rb | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/tool/mkconfig.rb b/tool/mkconfig.rb
index cd42661..6db6072 100755
--- a/tool/mkconfig.rb
+++ b/tool/mkconfig.rb
@@ -124,7 +124,7 @@ File.foreach "config.status" do |line| https://github.com/ruby/ruby/blob/trunk/tool/mkconfig.rb#L124
       if universal
         platform = val.sub(/universal/, %q[#{arch && universal[/(?:\A|\s)#{Regexp.quote(arch)}=(\S+)/, 1] || RUBY_PLATFORM[/\A[^-]*/]}])
       end
-    when /^oldincludedir$/
+    when /^includedir$/
       val = '"$(SDKROOT)"'+val if /darwin/ =~ arch
     end
     v = "  CONFIG[\"#{name}\"] #{eq} #{val}\n"
@@ -269,7 +269,15 @@ print <<EOS if $unicode_emoji_version https://github.com/ruby/ruby/blob/trunk/tool/mkconfig.rb#L269
   CONFIG["UNICODE_EMOJI_VERSION"] = #{$unicode_emoji_version.dump}
 EOS
 print <<EOS if /darwin/ =~ arch
-  CONFIG["SDKROOT"] = "\#{ENV['SDKROOT']}" # don't run xcrun every time, usually useless.
+  if sdkroot = ENV["SDKROOT"]
+    sdkroot = sdkroot.dup
+  elsif File.exist?(File.join(CONFIG["prefix"], "include")) ||
+        !(sdkroot = (IO.popen(%w[/usr/bin/xcrun --sdk macosx --show-sdk-path], in: IO::NULL, err: IO::NULL, &:read) rescue nil))
+    sdkroot = +""
+  else
+    sdkroot.chomp!
+  end
+  CONFIG["SDKROOT"] = sdkroot
 EOS
 print <<EOS
   CONFIG["platform"] = #{platform || '"$(arch)"'}
-- 
cgit v1.1


--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml/

[前][次][番号順一覧][スレッド一覧]