summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog10
-rw-r--r--doc/platform.n6
-rw-r--r--library/platform/pkgIndex.tcl2
-rw-r--r--library/platform/platform.tcl40
-rw-r--r--unix/Makefile.in6
-rw-r--r--win/Makefile.in6
6 files changed, 59 insertions, 11 deletions
diff --git a/ChangeLog b/ChangeLog
index 27fa36d..c9d4f63 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2009-04-08 Andreas Kupries <andreask@activestate.com>
+
+ * library/platform/platform.tcl: Extended the darwin sections to
+ * library/platform/pkgIndex.tcl: add a kernel version number to
+ * unix/Makefile.in: the identifier for anything from Leopard (10.5)
+ * win/Makefile.in: on up. Extended patterns for same. Extended cpu
+ * doc/platform.n: recognition for 64bit Tcl running on a 32bit
+ kernel on a 64bit processor (By Daniel Steffen). Bumped version to
+ 1.0.4. Updated Makefiles.
+
2009-04-08 Don Porter <dgp@users.sourceforge.net>
* library/tcltest/tcltest.tcl: Converted [eval]s (some unsafe!) to
diff --git a/doc/platform.n b/doc/platform.n
index eaf7d78..3f10506 100644
--- a/doc/platform.n
+++ b/doc/platform.n
@@ -4,17 +4,17 @@
'\" See the file "license.terms" for information on usage and redistribution
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
'\"
-'\" RCS: @(#) $Id: platform.n,v 1.5 2008/03/26 09:59:22 dkf Exp $
+'\" RCS: @(#) $Id: platform.n,v 1.5.2.1 2009/04/08 19:11:44 andreas_kupries Exp $
'\"
.so man.macros
-.TH "platform" n 1.0.3 platform "Tcl Bundled Packages"
+.TH "platform" n 1.0.4 platform "Tcl Bundled Packages"
.BS
'\" Note: do not modify the .SH NAME line immediately below!
.SH NAME
platform \- System identification support code and utilities
.SH SYNOPSIS
.nf
-\fBpackage require platform ?1.0.3?\fR
+\fBpackage require platform ?1.0.4?\fR
.sp
\fBplatform::generic\fR
\fBplatform::identify\fR
diff --git a/library/platform/pkgIndex.tcl b/library/platform/pkgIndex.tcl
index 27d596f..a63f4aa 100644
--- a/library/platform/pkgIndex.tcl
+++ b/library/platform/pkgIndex.tcl
@@ -1,3 +1,3 @@
-package ifneeded platform 1.0.3 [list source [file join $dir platform.tcl]]
+package ifneeded platform 1.0.4 [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 143cdc5..b42c419 100644
--- a/library/platform/platform.tcl
+++ b/library/platform/platform.tcl
@@ -111,6 +111,13 @@ proc ::platform::generic {} {
}
darwin {
set plat macosx
+ # Correctly identify the cpu when running as a 64bit
+ # process on a machine with a 32bit kernel
+ if {$cpu eq "ix86"} {
+ if {$tcl_platform(wordSize) == 8} {
+ set cpu x86_64
+ }
+ }
}
aix {
set cpu powerpc
@@ -154,6 +161,14 @@ proc ::platform::identify {} {
append plat $text
return "${plat}-${cpu}"
}
+ macosx {
+ set major [lindex [split $tcl_platform(osVersion) .] 0]
+ if {$major > 8} {
+ incr major -4
+ append plat 10.$major
+ return "${plat}-${cpu}"
+ }
+ }
linux {
# Look for the libc*.so and determine its version
# (libc5/6, libc6 further glibc 2.X)
@@ -238,6 +253,29 @@ proc ::platform::patterns {id} {
}
}
}
+ macosx*-* {
+ # 10.5+
+ if {[regexp {macosx([^-]*)-(.*)} $id -> v cpu]} {
+ if {$v ne ""} {
+ foreach {major minor} [split $v .] break
+
+ # Add 10.5 to 10.minor to patterns.
+ set res {}
+ for {set j $minor} {$j >= 5} {incr j -1} {
+ lappend res macosx${major}.${j}-${cpu}
+ lappend res macosx${major}.${j}-universal
+ }
+
+ # Add unversioned patterns for 10.3/10.4 builds.
+ lappend res macosx-${cpu}
+ lappend res macosx-universal
+ } else {
+ lappend res macosx-universal
+ }
+ } else {
+ lappend res macosx-universal
+ }
+ }
macosx-powerpc -
macosx-ix86 {
lappend res macosx-universal
@@ -251,7 +289,7 @@ proc ::platform::patterns {id} {
# ### ### ### ######### ######### #########
## Ready
-package provide platform 1.0.3
+package provide platform 1.0.4
# ### ### ### ######### ######### #########
## Demo application
diff --git a/unix/Makefile.in b/unix/Makefile.in
index c9f3e26..227177f 100644
--- a/unix/Makefile.in
+++ b/unix/Makefile.in
@@ -4,7 +4,7 @@
# "./configure", which is a configuration script generated by the "autoconf"
# program (constructs like "@foo@" will get replaced in the actual Makefile.
#
-# RCS: @(#) $Id: Makefile.in,v 1.229.2.12 2009/04/08 16:04:48 dgp Exp $
+# RCS: @(#) $Id: Makefile.in,v 1.229.2.13 2009/04/08 19:11:52 andreas_kupries Exp $
VERSION = @TCL_VERSION@
MAJOR_VERSION = @TCL_MAJOR_VERSION@
@@ -798,8 +798,8 @@ install-libraries: libraries $(INSTALL_TZDATA) install-msgs
@echo "Installing package tcltest 2.3.1 as a Tcl Module";
@$(INSTALL_DATA) $(TOP_DIR)/library/tcltest/tcltest.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.5/tcltest-2.3.1.tm;
- @echo "Installing package platform 1.0.3 as a Tcl Module";
- @$(INSTALL_DATA) $(TOP_DIR)/library/platform/platform.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.4/platform-1.0.3.tm;
+ @echo "Installing package platform 1.0.4 as a Tcl Module";
+ @$(INSTALL_DATA) $(TOP_DIR)/library/platform/platform.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.4/platform-1.0.4.tm;
@echo "Installing package platform::shell 1.1.4 as a Tcl Module";
@$(INSTALL_DATA) $(TOP_DIR)/library/platform/shell.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.4/platform/shell-1.1.4.tm;
diff --git a/win/Makefile.in b/win/Makefile.in
index 00b6793..35bdd97 100644
--- a/win/Makefile.in
+++ b/win/Makefile.in
@@ -4,7 +4,7 @@
# "./configure", which is a configuration script generated by the "autoconf"
# program (constructs like "@foo@" will get replaced in the actual Makefile.
#
-# RCS: @(#) $Id: Makefile.in,v 1.124.2.7 2009/04/08 16:04:59 dgp Exp $
+# RCS: @(#) $Id: Makefile.in,v 1.124.2.8 2009/04/08 19:12:04 andreas_kupries Exp $
VERSION = @TCL_VERSION@
@@ -646,8 +646,8 @@ install-libraries: libraries install-tzdata install-msgs
@$(COPY) $(ROOT_DIR)/library/msgcat/msgcat.tcl $(SCRIPT_INSTALL_DIR)/../tcl8/8.5/msgcat-1.4.2.tm;
@echo "Installing package tcltest 2.3.1 as a Tcl Module";
@$(COPY) $(ROOT_DIR)/library/tcltest/tcltest.tcl $(SCRIPT_INSTALL_DIR)/../tcl8/8.5/tcltest-2.3.1.tm;
- @echo "Installing package platform 1.0.3 as a Tcl Module";
- @$(COPY) $(ROOT_DIR)/library/platform/platform.tcl $(SCRIPT_INSTALL_DIR)/../tcl8/8.4/platform-1.0.3.tm;
+ @echo "Installing package platform 1.0.4 as a Tcl Module";
+ @$(COPY) $(ROOT_DIR)/library/platform/platform.tcl $(SCRIPT_INSTALL_DIR)/../tcl8/8.4/platform-1.0.4.tm;
@echo "Installing package platform::shell 1.1.4 as a Tcl Module";
@$(COPY) $(ROOT_DIR)/library/platform/shell.tcl $(SCRIPT_INSTALL_DIR)/../tcl8/8.4/platform/shell-1.1.4.tm;
@echo "Installing encodings";