diff options
| author | jan.nijtmans <nijtmans@users.sourceforge.net> | 2025-08-25 09:17:19 (GMT) |
|---|---|---|
| committer | jan.nijtmans <nijtmans@users.sourceforge.net> | 2025-08-25 09:17:19 (GMT) |
| commit | 71a5f30a95fa7bae9ced35b85d8a575bcc4bf9e6 (patch) | |
| tree | 0d4cbbbbad2fdc11b4251371db2959d9f5969353 | |
| parent | 940919e35640476e9284c6f25e5d26a8ed74a581 (diff) | |
| parent | 535d9351df50c446d68d2a5b243b4cbbfb5aa666 (diff) | |
| download | tcl-71a5f30a95fa7bae9ced35b85d8a575bcc4bf9e6.zip tcl-71a5f30a95fa7bae9ced35b85d8a575bcc4bf9e6.tar.gz tcl-71a5f30a95fa7bae9ced35b85d8a575bcc4bf9e6.tar.bz2 | |
Merge 8.6
| -rw-r--r-- | library/platform/platform.tcl | 10 | ||||
| -rw-r--r-- | tests/platform.test | 29 |
2 files changed, 35 insertions, 4 deletions
diff --git a/library/platform/platform.tcl b/library/platform/platform.tcl index 3bf1ff6..e93e2df 100644 --- a/library/platform/platform.tcl +++ b/library/platform/platform.tcl @@ -347,13 +347,14 @@ proc ::platform::patterns {id} { # 10.5+,11.0+ if {[regexp {macosx([^-]*)-(.*)} $id -> v cpu]} { + foreach {major minor} [split $v.15 .] break switch -exact -- $cpu { ix86 { lappend alt i386-x86_64 lappend alt universal } x86_64 { - if {[lindex [split $::tcl_platform(osVersion) .] 0] < 19} { + if {$major < 11 && $minor < 15} { set alt i386-x86_64 } else { set alt {} @@ -366,8 +367,6 @@ proc ::platform::patterns {id} { } if {$v ne ""} { - foreach {major minor} [split $v .] break - set res {} if {$major > 26} { # Add x.0 to x.minor to patterns. @@ -451,6 +450,9 @@ proc ::platform::patterns {id} { if {$cpu ne "arm"} { lappend res macosx${major}.${j}-${cpu} } + if {($cpu eq "x86_64") && ($j == 14)} { + set alt i386-x86_64 + } foreach a $alt { lappend res macosx${major}.${j}-$a } @@ -465,7 +467,7 @@ proc ::platform::patterns {id} { lappend res macosx${major}.${j}-$a } } - # Add unversioned patterns for 10.3/10.4 builds. + # Add unversioned patterns for 10.3/10.4 builds. lappend res macosx-${cpu} foreach a $alt { lappend res macosx-$a diff --git a/tests/platform.test b/tests/platform.test index 33aea3a..6a91410 100644 --- a/tests/platform.test +++ b/tests/platform.test @@ -72,6 +72,35 @@ test platform-4.2 {format of platform::generic result} -match regexp -body { platform::generic } -result {^([^-]+-)+[^-]+$} +test platform-5.0 {format of platform::generic result} -setup { + set old_machine $::tcl_platform(machine) + set old_os $::tcl_platform(os) + set old_wordsize $::tcl_platform(wordSize) + set old_version $tcl_platform(osVersion) + set ::tcl_platform(machine) arm + set ::tcl_platform(os) Darwin + set ::tcl_platform(wordSize) 8 + set ::tcl_platform(osVersion) 20.1 +} -body { + set res {} + set id [platform::identify] + lappend res $id + lappend res [platform::patterns $id] + set res +} -cleanup { + set ::tcl_platform(machine) $old_machine + set ::tcl_platform(os) $old_os + set ::tcl_platform(wordSize) $old_wordsize + set ::tcl_platform(osVersion) $old_version + unset res old_machine old_os old_wordsize old_version +} -result {macosx11.0-arm {macosx11.0-arm macosx11.0-x86_64 macosx10.15-x86_64 macosx10.14-x86_64 macosx10.13-x86_64 macosx10.12-x86_64 macosx10.11-x86_64 macosx10.10-x86_64 macosx10.9-x86_64 tcl}} +test platform-5.1 {format of platform::patterns macosx11.0-x86_64} -body { + platform::patterns macosx11.0-x86_64 +} -result {macosx11.0-x86_64 macosx10.15-x86_64 macosx10.14-x86_64 macosx10.14-i386-x86_64 macosx10.13-x86_64 macosx10.13-i386-x86_64 macosx10.12-x86_64 macosx10.12-i386-x86_64 macosx10.11-x86_64 macosx10.11-i386-x86_64 macosx10.10-x86_64 macosx10.10-i386-x86_64 macosx10.9-x86_64 macosx10.9-i386-x86_64 tcl} +test platform-5.2 {format of platform::patterns macosx11.0-arm} -body { + platform::patterns macosx11.0-arm +} -result {macosx11.0-arm macosx11.0-x86_64 macosx10.15-x86_64 macosx10.14-x86_64 macosx10.13-x86_64 macosx10.12-x86_64 macosx10.11-x86_64 macosx10.10-x86_64 macosx10.9-x86_64 tcl} + # cleanup cleanupTests |
