diff options
| author | jan.nijtmans <nijtmans@users.sourceforge.net> | 2025-08-19 12:36:22 (GMT) |
|---|---|---|
| committer | jan.nijtmans <nijtmans@users.sourceforge.net> | 2025-08-19 12:36:22 (GMT) |
| commit | fa96d47dfcc4a011995890671355e572994e4551 (patch) | |
| tree | 13b9b737e66e3af5c51df9e5f46e1cc3a1d92c98 | |
| parent | 66ce9bc18565d5b1af471d84fd7cce4c2a8f1fa0 (diff) | |
| parent | 88f4b5757c89a525b25ca6834e954931bd4c00b2 (diff) | |
| download | tcl-fa96d47dfcc4a011995890671355e572994e4551.zip tcl-fa96d47dfcc4a011995890671355e572994e4551.tar.gz tcl-fa96d47dfcc4a011995890671355e572994e4551.tar.bz2 | |
support for MacOS Tahoe, platform => 1.0.20
| -rw-r--r-- | changes | 5 | ||||
| -rw-r--r-- | library/platform/pkgIndex.tcl | 2 | ||||
| -rw-r--r-- | library/platform/platform.tcl | 81 | ||||
| -rw-r--r-- | unix/Makefile.in | 4 | ||||
| -rw-r--r-- | win/Makefile.in | 4 |
5 files changed, 79 insertions, 17 deletions
@@ -9419,4 +9419,7 @@ Many code fixes to avoid overflow or undefined behavior. Thanks chrstphrchvz. - Released 8.6.17, Aug 15, 2025 - details at https://core.tcl-lang.org/tcl/ - -- (to be) Released 8.6.17, Apr ??, 2026 - details at https://core.tcl-lang.org/tcl/ - +2025-08-18 (new) support for MacOS Tahoe (nijtmans) + => platform 1.0.20 + +- (to be) Released 8.6.18, Apr ??, 2026 - details at https://core.tcl-lang.org/tcl/ - diff --git a/library/platform/pkgIndex.tcl b/library/platform/pkgIndex.tcl index 4526c7e..20750be 100644 --- a/library/platform/pkgIndex.tcl +++ b/library/platform/pkgIndex.tcl @@ -1,3 +1,3 @@ -package ifneeded platform 1.0.19 [list source -encoding utf-8 [file join $dir platform.tcl]] +package ifneeded platform 1.0.20 [list source -encoding utf-8 [file join $dir platform.tcl]] package ifneeded platform::shell 1.1.4 [list source -encoding utf-8 [file join $dir shell.tcl]] diff --git a/library/platform/platform.tcl b/library/platform/platform.tcl index 63d4d76..3bf1ff6 100644 --- a/library/platform/platform.tcl +++ b/library/platform/platform.tcl @@ -181,12 +181,17 @@ proc ::platform::identify {} { set major [lindex [split $tcl_platform(osVersion) .] 0] if {$major > 19} { set minor [lindex [split $tcl_platform(osVersion) .] 1] - incr major -9 - append plat $major.[expr {$minor - 1}] + incr major 1 + if {$major < 26} { + incr major -10 + } + if {$major < 14} { + incr minor -1 + } + append plat $major.$minor } else { incr major -4 append plat 10.$major - return "${plat}-${cpu}" } return "${plat}-${cpu}" } @@ -364,6 +369,50 @@ proc ::platform::patterns {id} { foreach {major minor} [split $v .] break set res {} + if {$major > 26} { + # Add x.0 to x.minor to patterns. + for {set j $minor} {$j >= 0} {incr j -1} { + lappend res macosx${major}.${j}-${cpu} + foreach a $alt { + lappend res macosx${major}.${j}-$a + } + } + incr major -1 + set minor 5; # Assume that (major-1).5 will be there one day. + } + if {$major eq 26} { + # Add 26.0 to 26.minor to patterns. + for {set j $minor} {$j >= 0} {incr j -1} { + lappend res macosx${major}.${j}-${cpu} + foreach a $alt { + lappend res macosx${major}.${j}-$a + } + } + set major 15 + set minor 6 + } + if {$major eq 15} { + # Add 15.0 to 15.minor to patterns. + for {set j $minor} {$j >= 0} {incr j -1} { + lappend res macosx${major}.${j}-${cpu} + foreach a $alt { + lappend res macosx${major}.${j}-$a + } + } + set major 14 + set minor 6 + } + if {$major eq 14} { + # Add 14.0 to 14.minor to patterns. + for {set j $minor} {$j >= 0} {incr j -1} { + lappend res macosx${major}.${j}-${cpu} + foreach a $alt { + lappend res macosx${major}.${j}-$a + } + } + set major 13 + set minor 5 + } if {$major eq 13} { # Add 13.0 to 13.minor to patterns. for {set j $minor} {$j >= 0} {incr j -1} { @@ -397,8 +446,8 @@ proc ::platform::patterns {id} { set major 10 set minor 15 } - # Add 10.5 to 10.minor to patterns. - for {set j $minor} {$j >= 5} {incr j -1} { + # Add 10.9 to 10.minor to patterns. + for {set j $minor} {$j >= 9} {incr j -1} { if {$cpu ne "arm"} { lappend res macosx${major}.${j}-${cpu} } @@ -406,11 +455,21 @@ proc ::platform::patterns {id} { lappend res macosx${major}.${j}-$a } } - - # Add unversioned patterns for 10.3/10.4 builds. - lappend res macosx-${cpu} - foreach a $alt { - lappend res macosx-$a + if {![package vsatisfies [package provide Tcl] 9.0-]} { + # Continue up to 10.5. + for {} {$j >= 5} {incr j -1} { + if {$cpu ne "arm"} { + lappend res macosx${major}.${j}-${cpu} + } + foreach a $alt { + lappend res macosx${major}.${j}-$a + } + } + # Add unversioned patterns for 10.3/10.4 builds. + lappend res macosx-${cpu} + foreach a $alt { + lappend res macosx-$a + } } } else { # No version, just do unversioned patterns. @@ -431,7 +490,7 @@ proc ::platform::patterns {id} { # ### ### ### ######### ######### ######### ## Ready -package provide platform 1.0.19 +package provide platform 1.0.20 # ### ### ### ######### ######### ######### ## Demo application diff --git a/unix/Makefile.in b/unix/Makefile.in index 3efdfec..886606d 100644 --- a/unix/Makefile.in +++ b/unix/Makefile.in @@ -875,9 +875,9 @@ install-libraries: libraries @echo "Installing package tcltest 2.5.10 as a Tcl Module" @$(INSTALL_DATA) $(TOP_DIR)/library/tcltest/tcltest.tcl \ "$(MODULE_INSTALL_DIR)/8.5/tcltest-2.5.10.tm" - @echo "Installing package platform 1.0.19 as a Tcl Module" + @echo "Installing package platform 1.0.20 as a Tcl Module" @$(INSTALL_DATA) $(TOP_DIR)/library/platform/platform.tcl \ - "$(MODULE_INSTALL_DIR)/8.4/platform-1.0.19.tm" + "$(MODULE_INSTALL_DIR)/8.4/platform-1.0.20.tm" @echo "Installing package platform::shell 1.1.4 as a Tcl Module" @$(INSTALL_DATA) $(TOP_DIR)/library/platform/shell.tcl \ "$(MODULE_INSTALL_DIR)/8.4/platform/shell-1.1.4.tm" diff --git a/win/Makefile.in b/win/Makefile.in index 6b06e2e..4daa827 100644 --- a/win/Makefile.in +++ b/win/Makefile.in @@ -758,8 +758,8 @@ install-libraries: libraries install-tzdata install-msgs @$(COPY) $(ROOT_DIR)/library/msgcat/msgcat.tcl "$(MODULE_INSTALL_DIR)/8.5/msgcat-1.6.1.tm"; @echo "Installing package tcltest 2.5.10 as a Tcl Module"; @$(COPY) $(ROOT_DIR)/library/tcltest/tcltest.tcl "$(MODULE_INSTALL_DIR)/8.5/tcltest-2.5.10.tm"; - @echo "Installing package platform 1.0.19 as a Tcl Module"; - @$(COPY) $(ROOT_DIR)/library/platform/platform.tcl "$(MODULE_INSTALL_DIR)/8.4/platform-1.0.19.tm"; + @echo "Installing package platform 1.0.20 as a Tcl Module"; + @$(COPY) $(ROOT_DIR)/library/platform/platform.tcl "$(MODULE_INSTALL_DIR)/8.4/platform-1.0.20.tm"; @echo "Installing package platform::shell 1.1.4 as a Tcl Module"; @$(COPY) $(ROOT_DIR)/library/platform/shell.tcl "$(MODULE_INSTALL_DIR)/8.4/platform/shell-1.1.4.tm"; @echo "Installing encodings"; |
