<pre style='margin:0'>
Joshua Root (jmroot) pushed a commit to branch master
in repository macports-base.
</pre>
<p><a href="https://github.com/macports/macports-base/commit/574ee319bf9e7ac9d2668181b708946a73fc1749">https://github.com/macports/macports-base/commit/574ee319bf9e7ac9d2668181b708946a73fc1749</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new 574ee319b critcl: avoid using an SDK older than osxmin
</span>574ee319b is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 574ee319bf9e7ac9d2668181b708946a73fc1749
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Mon Feb 17 00:37:18 2025 +1100
<span style='display:block; white-space:pre;color:#404040;'> critcl: avoid using an SDK older than osxmin
</span>---
vendor/critcl-3.3.1/lib/critcl/Config.in | 71 +++++++--------------
.../patches/critcl/{arm64.patch => 01-arm64.patch} | 0
.../critcl/{platform.patch => 02-platform.patch} | 0
.../{macos-vers.patch => 03-macos-vers.patch} | 0
vendor/patches/critcl/{sdk.patch => 04-sdk.patch} | 42 +++++++++----
...ports-config.patch => 05-macports-config.patch} | 0
vendor/patches/critcl/06-default-osxmin.patch | 73 ++++++++++++++++++++++
7 files changed, 124 insertions(+), 62 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/critcl-3.3.1/lib/critcl/Config.in b/vendor/critcl-3.3.1/lib/critcl/Config.in
</span><span style='display:block; white-space:pre;color:#808080;'>index 20bc52a4f..5ec76fd87 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/critcl-3.3.1/lib/critcl/Config.in
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/critcl-3.3.1/lib/critcl/Config.in
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -81,6 +81,23 @@ threadflags -DUSE_THREAD_ALLOC=1 -D_REENTRANT=1 -D_THREAD_SAFE=1 \
</span> # OSX - check if universal binaries supported by the installed toolchain
if {[string match macosx-* $platform]} {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[info exists ::env(osxmin)] && $::env(osxmin) ne ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set osxmin $::env(osxmin)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } elseif {[info exists ::env(MACOSX_DEPLOYMENT_TARGET)] && $::env(MACOSX_DEPLOYMENT_TARGET) ne ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set osxmin $::env(MACOSX_DEPLOYMENT_TARGET)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # use the current platform
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set v1 [lindex [split $::tcl_platform(osVersion) .] 0]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Darwin 19 and earlier are macOS 10.x. Darwin 20 and later are macOS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # 11, macOS 12, etc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {$v1 >= 20} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ incr v1 -9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set osxmin ${v1}.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ incr v1 -4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set osxmin 10.$v1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> if {[info exists ::env(SDKROOT)] && $::env(SDKROOT) ne ""} {
set SDKROOT $::env(SDKROOT)
} elseif {![catch {exec xcrun --show-sdk-path} sdkpath] && $sdkpath ne {} && [file exists $sdkpath]} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -97,8 +114,10 @@ if {[string match macosx-* $platform]} {
</span> -directory $base/SDKs MacOSX*] {
set ver [string trimright \
[file rootname [string range $dir $pos end]] u]
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if {"$ver" != "" && [package vcompare $ver 10.4] >= 0} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # 10.4 is earliest supporting universal that we support
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {"$ver" != "" && [package vcompare $ver 10.4] >= 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ && (![info exists osxmin] || [package vcompare $ver $osxmin] >= 0)} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # 10.4 is earliest supporting universal that we support, and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # the deployment target cannot be newer than the SDK.
</span> set path($ver) $dir
lappend sdklist $ver
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -110,54 +129,6 @@ if {[string match macosx-* $platform]} {
</span> }
}
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if {[info exists ::env(MACOSX_DEPLOYMENT_TARGET)] && $::env(MACOSX_DEPLOYMENT_TARGET) ne ""} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set osxmin $::env(MACOSX_DEPLOYMENT_TARGET)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- } elseif {0 && $SDKROOT ne ""} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # get the SDKsettings for the min OSX value supported
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set info ""
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {[catch {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set osxmin [exec plutil -extract DefaultProperties.MACOSX_DEPLOYMENT_TARGET \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- raw $SDKROOT/SDKSettings.plist]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {[catch {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set info [exec defaults read $SDKROOT/SDKSettings buildSettings]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- catch {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set info [exec defaults read $SDKROOT/SDKSettings DefaultProperties \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- -dict MACOSX_DEPLOYMENT_TARGET]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {$info eq ""} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- puts stderr "SDKROOT isn't configured correctly on this host"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- puts stderr "current setting $SDKROOT needs updating"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- exit 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set info [string trim $info]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- regsub -all {[\n"\;=\{\}]+} $info "" info ;#" help emacs hilighting
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- regsub -all {\s+} $info " " info
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set osxmin [lindex $info 1]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- } else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # use the current platform
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- foreach {v1 v2 v3} [split $::tcl_platform(osVersion) .] break
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # Darwin 19 and earlier are macOS 10.x. Darwin 20 and later are macOS
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # 11, macOS 12, etc.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {$v1 >= 20} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- incr v1 -9
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set osxmin ${v1}.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- } else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- incr v1 -4
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set osxmin 10.$v1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # do we actually need to check if universal is supported, given the
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # gcc check below will do it for us?
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # set info [exec lipo -info /usr/lib/libSystem.dylib]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # set plats [split [string trim [lindex [split $info :] 2]]]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {[info exists ::env(osxmin)] && $::env(osxmin) ne ""} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set osxmin $::env(osxmin)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span> if {$SDKROOT eq ""} {
set SDKROOT /
}
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/patches/critcl/arm64.patch b/vendor/patches/critcl/01-arm64.patch
</span>similarity index 100%
rename from vendor/patches/critcl/arm64.patch
rename to vendor/patches/critcl/01-arm64.patch
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/patches/critcl/platform.patch b/vendor/patches/critcl/02-platform.patch
</span>similarity index 100%
rename from vendor/patches/critcl/platform.patch
rename to vendor/patches/critcl/02-platform.patch
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/patches/critcl/macos-vers.patch b/vendor/patches/critcl/03-macos-vers.patch
</span>similarity index 100%
rename from vendor/patches/critcl/macos-vers.patch
rename to vendor/patches/critcl/03-macos-vers.patch
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/patches/critcl/sdk.patch b/vendor/patches/critcl/04-sdk.patch
</span>similarity index 59%
rename from vendor/patches/critcl/sdk.patch
rename to vendor/patches/critcl/04-sdk.patch
<span style='display:block; white-space:pre;color:#808080;'>index 4ab706a00..c78980ee4 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/patches/critcl/sdk.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/patches/critcl/04-sdk.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,7 +1,14 @@
</span> --- lib/critcl/Config.in.orig
+++ lib/critcl/Config.in
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -83,12 +83,16 @@ threadflags -DUSE_THREAD_ALLOC=1 -D_REENTRANT=1 -D_THREAD_SAFE=1 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -81,20 +81,31 @@ threadflags -DUSE_THREAD_ALLOC=1 -D_REENTRANT=1 -D_THREAD_SAFE=1 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # OSX - check if universal binaries supported by the installed toolchain
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> if {[string match macosx-* $platform]} {
<span style='display:block; white-space:pre;background:#e0ffe0;'>++ if {[info exists ::env(osxmin)] && $::env(osxmin) ne ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ set osxmin $::env(osxmin)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ } elseif {[info exists ::env(MACOSX_DEPLOYMENT_TARGET)] && $::env(MACOSX_DEPLOYMENT_TARGET) ne ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ set osxmin $::env(MACOSX_DEPLOYMENT_TARGET)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ }
</span> if {[info exists ::env(SDKROOT)] && $::env(SDKROOT) ne ""} {
set SDKROOT $::env(SDKROOT)
+ } elseif {![catch {exec xcrun --show-sdk-path} sdkpath] && $sdkpath ne {} && [file exists $sdkpath]} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -19,7 +26,17 @@
</span> foreach dir [glob -nocomplain -tails \
-directory $base/SDKs MacOSX*] {
set ver [string trimright \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -102,16 +106,22 @@ if {[string match macosx-* $platform]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ [file rootname [string range $dir $pos end]] u]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if {"$ver" != "" && [package vcompare $ver 10.4] >= 0} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- # 10.4 is earliest supporting universal that we support
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if {"$ver" != "" && [package vcompare $ver 10.4] >= 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ && (![info exists osxmin] || [package vcompare $ver $osxmin] >= 0)} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ # 10.4 is earliest supporting universal that we support, and
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ # the deployment target cannot be newer than the SDK.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set path($ver) $dir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lappend sdklist $ver
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -102,16 +113,21 @@ if {[string match macosx-* $platform]} {
</span> if {[llength $sdklist]} {
set ver [lindex [lsort -command "package vcompare" $sdklist] 0]
set SDKROOT $base/SDKs/$path($ver)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -28,11 +45,9 @@
</span> + break
}
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-- if {$SDKROOT ne ""} {
</span> + }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-+ if {[info exists ::env(MACOSX_DEPLOYMENT_TARGET)] && $::env(MACOSX_DEPLOYMENT_TARGET) ne ""} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ set osxmin $::env(MACOSX_DEPLOYMENT_TARGET)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ } elseif {0 && $SDKROOT ne ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if {![info exists osxmin]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {$SDKROOT ne ""} {
</span> # get the SDKsettings for the min OSX value supported
set info ""
- if [catch {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -47,7 +62,7 @@
</span> catch {
set info [exec defaults read $SDKROOT/SDKSettings DefaultProperties \
-dict MACOSX_DEPLOYMENT_TARGET]
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -126,6 +136,7 @@ if {[string match macosx-* $platform]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -126,6 +142,7 @@ if {[string match macosx-* $platform]} {
</span> regsub -all {[\n"\;=\{\}]+} $info "" info ;#" help emacs hilighting
regsub -all {\s+} $info " " info
set osxmin [lindex $info 1]
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -55,13 +70,16 @@
</span> } else {
# use the current platform
foreach {v1 v2 v3} [split $::tcl_platform(osVersion) .] break
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -146,6 +157,9 @@ if {[string match macosx-* $platform]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {[info exists ::env(osxmin)] && $::env(osxmin) ne ""} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set osxmin $::env(osxmin)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -143,8 +160,10 @@ if {[string match macosx-* $platform]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # set info [exec lipo -info /usr/lib/libSystem.dylib]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # set plats [split [string trim [lindex [split $info :] 2]]]
</span> }
<span style='display:block; white-space:pre;background:#e0ffe0;'>+- if {[info exists ::env(osxmin)] && $::env(osxmin) ne ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- set osxmin $::env(osxmin)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ }
</span> + if {$SDKROOT eq ""} {
+ set SDKROOT /
<span style='display:block; white-space:pre;background:#ffe0e0;'>-+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span> set universal 0
catch {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- set ppc [expr {[exec gcc -v -arch ppc > /dev/null 2>@stdout] eq ""}]
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/patches/critcl/macports-config.patch b/vendor/patches/critcl/05-macports-config.patch
</span>similarity index 100%
rename from vendor/patches/critcl/macports-config.patch
rename to vendor/patches/critcl/05-macports-config.patch
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/patches/critcl/06-default-osxmin.patch b/vendor/patches/critcl/06-default-osxmin.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 000000000..4c07b7099
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/patches/critcl/06-default-osxmin.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,73 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- lib/critcl/Config.in.orig 2025-02-17 00:15:58
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ lib/critcl/Config.in 2025-02-17 00:27:16
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -85,6 +85,18 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set osxmin $::env(osxmin)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } elseif {[info exists ::env(MACOSX_DEPLOYMENT_TARGET)] && $::env(MACOSX_DEPLOYMENT_TARGET) ne ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set osxmin $::env(MACOSX_DEPLOYMENT_TARGET)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ # use the current platform
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ set v1 [lindex [split $::tcl_platform(osVersion) .] 0]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ # Darwin 19 and earlier are macOS 10.x. Darwin 20 and later are macOS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ # 11, macOS 12, etc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if {$v1 >= 20} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ incr v1 -9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ set osxmin ${v1}.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ incr v1 -4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ set osxmin 10.$v1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[info exists ::env(SDKROOT)] && $::env(SDKROOT) ne ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set SDKROOT $::env(SDKROOT)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -117,51 +129,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if {![info exists osxmin]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if {$SDKROOT ne ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- # get the SDKsettings for the min OSX value supported
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- set info ""
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if {[catch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- set osxmin [exec plutil -extract DefaultProperties.MACOSX_DEPLOYMENT_TARGET \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- raw $SDKROOT/SDKSettings.plist]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- }]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if {[catch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- set info [exec defaults read $SDKROOT/SDKSettings buildSettings]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- }]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- catch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- set info [exec defaults read $SDKROOT/SDKSettings DefaultProperties \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- -dict MACOSX_DEPLOYMENT_TARGET]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if {$info eq ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- puts stderr "SDKROOT isn't configured correctly on this host"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- puts stderr "current setting $SDKROOT needs updating"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- exit 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- set info [string trim $info]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- regsub -all {[\n"\;=\{\}]+} $info "" info ;#" help emacs hilighting
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- regsub -all {\s+} $info " " info
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- set osxmin [lindex $info 1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- # use the current platform
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- foreach {v1 v2 v3} [split $::tcl_platform(osVersion) .] break
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- # Darwin 19 and earlier are macOS 10.x. Darwin 20 and later are macOS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- # 11, macOS 12, etc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if {$v1 >= 20} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- incr v1 -9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- set osxmin ${v1}.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- incr v1 -4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- set osxmin 10.$v1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- # do we actually need to check if universal is supported, given the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- # gcc check below will do it for us?
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- # set info [exec lipo -info /usr/lib/libSystem.dylib]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- # set plats [split [string trim [lindex [split $info :] 2]]]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {$SDKROOT eq ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set SDKROOT /
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span></pre><pre style='margin:0'>
</pre>