From 0a5f3d1474167d8574ec5ab7ff4bdbae18036a95 Mon Sep 17 00:00:00 2001
From: andreask <andreask>
Date: Wed, 22 Jun 2011 15:53:59 +0000
Subject: Fixed the inadvertently committed disabling of stack checks, see my
 2010-11-15 commit [8902c8bc82].

---
 ChangeLog        | 5 +++++
 generic/tclInt.h | 2 --
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 3f4037d..aff660f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2011-06-22  Andreas Kupries  <andreask@activestate.com>
+
+	* generic/tclInt.h: Fixed the inadvertently committed disabling of
+	  stack checks, see my 2010-11-15 commit.
+
 2011-06-21  Don Porter  <dgp@users.sourceforge.net>
 
 	* changes:	Update for 8.5.10 release.
diff --git a/generic/tclInt.h b/generic/tclInt.h
index 679277a..854404f 100644
--- a/generic/tclInt.h
+++ b/generic/tclInt.h
@@ -17,8 +17,6 @@
 #ifndef _TCLINT
 #define _TCLINT
 
-#define TCL_NO_STACK_CHECK /* DISABLE C RUNTIME STACK CHECK - Test AIX */
-
 /*
  * Some numerics configuration options.
  */
-- 
cgit v0.12


From 83da5e73e763a2bf93d98676168b3e5a7a02d014 Mon Sep 17 00:00:00 2001
From: andreask <andreask>
Date: Wed, 22 Jun 2011 16:10:12 +0000
Subject: Updated to platform 1.0.10. Added handling of the DEB_HOST_MULTIARCH
 location change for libc

---
 ChangeLog                     |  6 +++
 library/platform/pkgIndex.tcl |  2 +-
 library/platform/platform.tcl | 87 ++++++++++++++++++++++++++++++-------------
 3 files changed, 68 insertions(+), 27 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index d78c64e..b12db49 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2011-06-22  Andreas Kupries  <andreask@activestate.com>
+
+	* library/platform/pkgIndex.tcl: Updated to platform 1.0.10. Added
+	* library/platform/platform.tcl: handling of the DEB_HOST_MULTIARCH
+	location change for libc.
+
 2011-05-07  Miguel Sofer  <msofer@users.sf.net>
 
 	* generic/tclInt.h: fix USE_TCLALLOC so that it can be enabled
diff --git a/library/platform/pkgIndex.tcl b/library/platform/pkgIndex.tcl
index 35da3b7..220a67b 100644
--- a/library/platform/pkgIndex.tcl
+++ b/library/platform/pkgIndex.tcl
@@ -1,3 +1,3 @@
-package ifneeded platform        1.0.9 [list source [file join $dir platform.tcl]]
+package ifneeded platform        1.0.10 [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 572a8b4..dd2e66b 100644
--- a/library/platform/platform.tcl
+++ b/library/platform/platform.tcl
@@ -194,42 +194,45 @@ proc ::platform::identify {} {
 	    # Do not look into /lib64 even if present, if the cpu
 	    # doesn't fit.
 
+	    # TODO: Determine the prefixes (i386, x86_64, ...) for
+	    # other cpus.  The path after the generic one is utterly
+	    # specific to intel right now.  Ok, on Ubuntu, possibly
+	    # other Debian systems we may apparently be able to query
+	    # the necessary CPU code. If we can't we simply use the
+	    # hardwired fallback.
+
 	    switch -exact -- $tcl_platform(wordSize) {
 		4 {
-		    set base /lib
+		    lappend bases /lib
+		    if {[catch {
+			exec dpkg-architecture -qDEB_HOST_MULTIARCH
+		    } res]} {
+			lappend bases /lib/i386-linux-gnu
+		    } else {
+			# dpkg-arch returns the full tripled, not just cpu.
+			lappend bases /lib/$res
+		    }
 		}
 		8 {
-		    set base /lib64
+		    lappend bases /lib64
+		    if {[catch {
+			exec dpkg-architecture -qDEB_HOST_MULTIARCH
+		    } res]} {
+			lappend bases /lib/x86_64-linux-gnu
+		    } else {
+			# dpkg-arch returns the full tripled, not just cpu.
+			lappend bases /lib/$res
+		    }
 		}
 		default {
 		    return -code error "Bad wordSize $tcl_platform(wordSize), expected 4 or 8"
 		}
 	    }
 
-	    set libclist [lsort [glob -nocomplain -directory $base libc*]]
-	    if {[llength $libclist]} {
-		set libc [lindex $libclist 0]
-
-		# Try executing the library first. This should suceed
-		# for a glibc library, and return the version
-		# information.
-
-		if {![catch {
-		    set vdata [lindex [split [exec $libc] \n] 0]
-		}]} {
-		    regexp {([0-9]+(\.[0-9]+)*)} $vdata -> v
-		    foreach {major minor} [split $v .] break
-		    set v glibc${major}.${minor}
-		} else {
-		    # We had trouble executing the library. We are now
-		    # inspecting its name to determine the version
-		    # number. This code by Larry McVoy.
-
-		    if {[regexp -- {libc-([0-9]+)\.([0-9]+)} $libc -> major minor]} {
-			set v glibc${major}.${minor}
-		    }
-		}
+	    foreach base $bases {
+		if {[LibcVersion $base -> v]} break
 	    }
+
 	    append plat -$v
 	    return "${plat}-${cpu}"
 	}
@@ -238,6 +241,38 @@ proc ::platform::identify {} {
     return $id
 }
 
+proc ::platform::LibcVersion {base _->_ vv} {
+    upvar 1 $vv v
+    set libclist [lsort [glob -nocomplain -directory $base libc*]]
+
+    if {![llength $libclist]} { return 0 }
+
+    set libc [lindex $libclist 0]
+
+    # Try executing the library first. This should suceed
+    # for a glibc library, and return the version
+    # information.
+
+    if {![catch {
+	set vdata [lindex [split [exec $libc] \n] 0]
+    }]} {
+	regexp {([0-9]+(\.[0-9]+)*)} $vdata -> v
+	foreach {major minor} [split $v .] break
+	set v glibc${major}.${minor}
+	return 1
+    } else {
+	# We had trouble executing the library. We are now
+	# inspecting its name to determine the version
+	# number. This code by Larry McVoy.
+
+	if {[regexp -- {libc-([0-9]+)\.([0-9]+)} $libc -> major minor]} {
+	    set v glibc${major}.${minor}
+	    return 1
+	}
+    }
+    return 0
+}
+
 # -- platform::patterns
 #
 # Given an exact platform identifier, i.e. _not_ the generic
@@ -333,7 +368,7 @@ proc ::platform::patterns {id} {
 # ### ### ### ######### ######### #########
 ## Ready
 
-package provide platform 1.0.9
+package provide platform 1.0.10
 
 # ### ### ### ######### ######### #########
 ## Demo application
-- 
cgit v0.12


From b003dad85be4a3a3eaf62e80a81ea098c6d7486d Mon Sep 17 00:00:00 2001
From: max <max@tclers.tk>
Date: Wed, 22 Jun 2011 17:01:03 +0000
Subject: Re-add ".so man.macros", which got removed inadvertently along with
 the RCS Keyword lines.

---
 doc/CrtChnlHdlr.3  | 1 +
 doc/CrtCloseHdlr.3 | 1 +
 2 files changed, 2 insertions(+)

diff --git a/doc/CrtChnlHdlr.3 b/doc/CrtChnlHdlr.3
index fa7f46f..f5fd1bd 100644
--- a/doc/CrtChnlHdlr.3
+++ b/doc/CrtChnlHdlr.3
@@ -4,6 +4,7 @@
 '\" See the file "license.terms" for information on usage and redistribution
 '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
 '\"
+.so man.macros
 .TH Tcl_CreateChannelHandler 3 7.5 Tcl "Tcl Library Procedures"
 .BS
 '\" Note:  do not modify the .SH NAME line immediately below!
diff --git a/doc/CrtCloseHdlr.3 b/doc/CrtCloseHdlr.3
index 32cd7a5..c8804b1 100644
--- a/doc/CrtCloseHdlr.3
+++ b/doc/CrtCloseHdlr.3
@@ -4,6 +4,7 @@
 '\" See the file "license.terms" for information on usage and redistribution
 '\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
 '\"
+.so man.macros
 .TH Tcl_CreateCloseHandler 3 7.5 Tcl "Tcl Library Procedures"
 .BS
 '\" Note:  do not modify the .SH NAME line immediately below!
-- 
cgit v0.12


From a130b39913448f7a0bfacf5e56c94bb0a561b94b Mon Sep 17 00:00:00 2001
From: dgp <dgp@users.sourceforge.net>
Date: Thu, 23 Jun 2011 12:57:45 +0000
Subject: More changes

---
 ChangeLog | 4 ++++
 changes   | 5 ++++-
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/ChangeLog b/ChangeLog
index 8a1e3d2..4f9c730 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2011-06-23  Don Porter  <dgp@users.sourceforge.net>
+
+	* changes:	Update for 8.5.10 release.
+
 2011-06-22  Andreas Kupries  <andreask@activestate.com>
 
 	* library/platform/pkgIndex.tcl: Updated to platform 1.0.10. Added
diff --git a/changes b/changes
index a37d785..23efc47 100644
--- a/changes
+++ b/changes
@@ -7541,4 +7541,7 @@ memory with buffer backup (ferrieux)
 2011-06-21 (new cmd) [tcltest::loadIntoSlaveInterpreter] (fellows)
 => tcltest 2.3.3
 
---- Released 8.5.10, June 22, 2011 --- See ChangeLog for details ---
+2011-06-22 (new feature) DEB_HOST_MULTIARCH support (kupries)
+=> platform 1.0.10
+
+--- Released 8.5.10, June 23, 2011 --- See ChangeLog for details ---
-- 
cgit v0.12