diff options
author | andreas_kupries <andreas_kupries@noemail.net> | 2010-04-29 21:20:14 (GMT) |
---|---|---|
committer | andreas_kupries <andreas_kupries@noemail.net> | 2010-04-29 21:20:14 (GMT) |
commit | cf40869938b2db63b743072b60ba5b8d814b8ddc (patch) | |
tree | 211a65b7fbd6c28035d4f9ca0db3caebbbedb5bb | |
parent | cf84ef8db3e05ced1c917500b9458bddc05a7e73 (diff) | |
download | tcl-cf40869938b2db63b743072b60ba5b8d814b8ddc.zip tcl-cf40869938b2db63b743072b60ba5b8d814b8ddc.tar.gz tcl-cf40869938b2db63b743072b60ba5b8d814b8ddc.tar.bz2 |
* library/platform/platform.tcl: Another stab at getting the /lib,
* library/platform/pkgIndex.tcl: /lib674 difference right for
linux. Package updated to version 1.0.7.
FossilOrigin-Name: 67d34dec64092c08895a0a3cdac6fd27afc1525c
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | library/platform/pkgIndex.tcl | 2 | ||||
-rw-r--r-- | library/platform/platform.tcl | 33 |
3 files changed, 32 insertions, 9 deletions
@@ -1,3 +1,9 @@ +2010-04-29 Andreas Kupries <andreask@activestate.com> + + * library/platform/platform.tcl: Another stab at getting the /lib, + * library/platform/pkgIndex.tcl: /lib674 difference right for + linux. Package updated to version 1.0.7. + 2010-04-18 Donal K. Fellows <dkf@users.sf.net> * doc/unset.n: [Bug 2988940]: Fix typo. diff --git a/library/platform/pkgIndex.tcl b/library/platform/pkgIndex.tcl index 5678e04..69ca721 100644 --- a/library/platform/pkgIndex.tcl +++ b/library/platform/pkgIndex.tcl @@ -1,3 +1,3 @@ -package ifneeded platform 1.0.6 [list source [file join $dir platform.tcl]] +package ifneeded platform 1.0.7 [list source [file join $dir platform.tcl]] package ifneeded platform::shell 1.1.4 [list source [file join $dir shell.tcl]] diff --git a/library/platform/platform.tcl b/library/platform/platform.tcl index d132c6f..838ceec 100644 --- a/library/platform/platform.tcl +++ b/library/platform/platform.tcl @@ -175,13 +175,30 @@ proc ::platform::identify {} { set v unknown - if {[file exists /lib64] && - [file isdirectory /lib64] && - [llength [glob -nocomplain -directory /lib64 libc*]] - } { - set base /lib64 - } else { - set base /lib + # Determine in which directory to look. /lib, or /lib64. + # For that we use the tcl_platform(wordSize). + # + # We could use the 'cpu' info, per the equivalence below, + # that however would be restricted to intel. And this may + # be a arm, mips, etc. system. The wordsize is more + # fundamental. + # + # ix86 <=> (wordSize == 4) <=> 32 bit ==> /lib + # x86_64 <=> (wordSize == 8) <=> 64 bit ==> /lib64 + # + # Do not look into /lib64 even if present, if the cpu + # doesn't fit. + + switch -exact -- $tcl_platform(wordSize) { + 4 { + set base /lib + } + 8 { + set base /lib64 + } + default { + return -code error "Bad wordSize $tcl_platform(wordSize), expected 4 or 8" + } } set libclist [lsort [glob -nocomplain -directory $base libc*]] @@ -292,7 +309,7 @@ proc ::platform::patterns {id} { # ### ### ### ######### ######### ######### ## Ready -package provide platform 1.0.6 +package provide platform 1.0.7 # ### ### ### ######### ######### ######### ## Demo application |