diff --git a/tcl-SafeLdExp.patch b/tcl-SafeLdExp.patch deleted file mode 100644 index 0248142..0000000 --- a/tcl-SafeLdExp.patch +++ /dev/null @@ -1,35 +0,0 @@ -? NSK1200002852A -Index: generic/tclStrToD.c -=================================================================== -RCS file: /cvsroot/tcl/tcl/generic/tclStrToD.c,v -retrieving revision 1.39 -diff -u -r1.39 tclStrToD.c ---- generic/tclStrToD.c 7 Dec 2009 17:15:33 -0000 1.39 -+++ generic/tclStrToD.c 19 Feb 2010 02:42:35 -0000 -@@ -110,7 +110,6 @@ - static int mantBits; /* Number of bits in a double's significand */ - static mp_int pow5[9]; /* Table of powers of 5**(2**n), up to - * 5**256 */ --static double tiny; /* The smallest representable double */ - static int maxDigits; /* The maximum number of digits to the left of - * the decimal point of a double. */ - static int minDigits; /* The maximum number of digits to the right -@@ -1490,8 +1489,8 @@ - goto returnValue; - } - retval = SafeLdExp(retval, machexp); -- if (retval < tiny) { -- retval = tiny; -+ if (retval == 0.0) { -+ retval = SafeLdExp(1.0, DBL_MIN_EXP * log2FLT_RADIX - mantBits); - } - - /* -@@ -2245,7 +2244,6 @@ - * the significand of a double. - */ - -- tiny = SafeLdExp(1.0, DBL_MIN_EXP * log2FLT_RADIX - mantBits); - maxDigits = (int) ((DBL_MAX_EXP * log((double) FLT_RADIX) - + 0.5 * log(10.)) / log(10.)); - minDigits = (int) floor((DBL_MIN_EXP - DBL_MANT_DIG) diff --git a/tcl-stack.patch b/tcl-stack.patch new file mode 100644 index 0000000..f008111 --- /dev/null +++ b/tcl-stack.patch @@ -0,0 +1,65 @@ +Index: ChangeLog +=================================================================== +--- ChangeLog ++++ ChangeLog +@@ -1,5 +1,11 @@ ++2011-06-30 Reinhard Max ++ ++ * unix/configure.in: Add a volatile declaration to the test for ++ TCL_STACK_GROWS_UP to prevent gcc 4.6 from producing invalid ++ results due to aggressive optimisation. ++ + 2011-06-23 Don Porter + + *** 8.5.10 TAGGED FOR RELEASE *** + + * changes: Update for 8.5.10 release. + +Index: unix/configure +=================================================================== +--- unix/configure ++++ unix/configure +@@ -18703,14 +18703,16 @@ + cat >>conftest.$ac_ext <<_ACEOF + /* end confdefs.h. */ + + int StackGrowsUp(int *parent) { + int here; ++ volatile int result; + if (parent) +- return (&here < parent); ++ result = (&here < parent); + else +- return StackGrowsUp(&here); ++ result = StackGrowsUp(&here); ++ return result; + } + int main (int argc, char *argv[]) { + return StackGrowsUp(0); + } + + +Index: unix/configure.in +=================================================================== +--- unix/configure.in ++++ unix/configure.in +@@ -703,14 +703,16 @@ + + AC_CACHE_CHECK([if the C stack grows upwards in memory], tcl_cv_stack_grows_up, [ + AC_TRY_RUN([ + int StackGrowsUp(int *parent) { + int here; ++ volatile int result; + if (parent) +- return (&here < parent); ++ result = (&here < parent); + else +- return StackGrowsUp(&here); ++ result = StackGrowsUp(&here); ++ return result; + } + int main (int argc, char *argv[]) { + return StackGrowsUp(0); + } + ], tcl_cv_stack_grows_up=yes, tcl_cv_stack_grows_up=no, + diff --git a/tcl-unload.patch b/tcl-unload.patch index f364cd3..48af0e9 100644 --- a/tcl-unload.patch +++ b/tcl-unload.patch @@ -1,16 +1,5 @@ -Index: generic/tclLoad.c -=================================================================== --- generic/tclLoad.c.orig +++ generic/tclLoad.c -@@ -9,7 +9,7 @@ - * See the file "license.terms" for information on usage and redistribution of - * this file, and for a DISCLAIMER OF ALL WARRANTIES. - * -- * RCS: @(#) $Id: tclLoad.c,v 1.16.4.2 2008/11/14 00:22:39 nijtmans Exp $ -+ * RCS: @(#) $Id: tclLoad.c,v 1.16 2007/02/20 23:24:03 nijtmans Exp $ - */ - - #include "tclInt.h" @@ -795,9 +795,7 @@ Tcl_UnloadObjCmd( if (unLoadProcPtr != NULL) { diff --git a/tcl.changes b/tcl.changes index bc0737a..d1ea690 100644 --- a/tcl.changes +++ b/tcl.changes @@ -1,3 +1,38 @@ +------------------------------------------------------------------- +Thu Jun 30 15:50:01 UTC 2011 - max@novell.com + +- New patchlevel release 8.5.10: + * Update Unicode data to 6.0 + * Fix handling of empty path lists in Safe Tcl. + * (bug fix)[3098302] crash in compiled [catch] + * (TIP 378)[3081184] improved TIP 280 performance + * (enhancement) Restore TclFormatInt for performance + * (enhancement) Tcl_PrintDouble performance improvements + * (bug fix)[3142026] GrowEvaluationStack OBOE + * (bug fix)[3072640] protect writes to ::error* variables + * (bug fix)[3200987,3192636] parser buffer overruns + * (bug fix)[3202905] failed intrep release of interp result + * (bug fix)[3202171] repair [namespace inscope] optimizer + * (bug fix) Fixes from libtommath 0.42.0 release + * (bug fix)[3216070] [load] extension from embed Tcl apps + * (bug fix)[3285472] intrep corruption in [string reverse] + * (bug fix)[2662380] crash when variable append trace unsets + * (bug fix)[3285375] Buffer overflow in [concat] + * (internals change) revised TclFindElement() interface + *** POTENTIAL INCOMPATIBILITY *** + * (enhancement) dict->list w/o string rep generation + * (bug fix)[3173086] Crash parsing long lists + * (bug fix)[2715421] surplus \n in POST => http 2.7.6 + * (enhancement) msgcat internal improvements => msgcat 1.4.4 + * (bug fix)[3185407] cmd resolution epoch flaw + * (bug fix)[3315098] mem leak generating double string rep + * (new cmd) [tcltest::loadIntoSlaveInterpreter] + => tcltest 2.3.3 + * (new feature) DEB_HOST_MULTIARCH support => platform 1.0.10 +- Add tcl-stack.patch to fix stack direction checking for gcc 4.6. +- Removed stack-3.1 from the list of known-failing tests. +- tcl-SafeLdExp.patch isn't needed anymore. + ------------------------------------------------------------------- Wed Apr 27 09:15:05 UTC 2011 - idoenmez@novell.com diff --git a/tcl.spec b/tcl.spec index 3f9fedc..327dd28 100644 --- a/tcl.spec +++ b/tcl.spec @@ -20,7 +20,7 @@ Name: tcl Url: http://www.tcl.tk -Version: 8.5.9 +Version: 8.5.10 Release: 5 %define TCL_MINOR %(echo %version | cut -c1-3) BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -41,7 +41,7 @@ Source2: baselibs.conf Source3: macros.tcl Patch0: tcl.patch Patch1: tcl-unload.patch -Patch3: tcl-SafeLdExp.patch +Patch2: tcl-stack.patch %description Tcl (Tool Command Language) is a very powerful but easy to learn @@ -89,10 +89,11 @@ Authors: %setup -q -n %name%version %patch0 %patch1 -%patch3 +%patch2 %build cd unix +autoconf %configure \ --enable-man-symlinks \ --enable-man-compression=gzip @@ -118,7 +119,6 @@ export HOME=$PWD/home cat > known-failures <&1 | tee testresults diff --git a/tcl8.5.10-src.tar.bz2 b/tcl8.5.10-src.tar.bz2 new file mode 100644 index 0000000..bd8bee3 --- /dev/null +++ b/tcl8.5.10-src.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7c145f9749135f769552d1b10bbd6c9901aae84c37e94828b303a8fc5740e4e +size 3480226 diff --git a/tcl8.5.9-src.tar.bz2 b/tcl8.5.9-src.tar.bz2 deleted file mode 100644 index 063c0c9..0000000 --- a/tcl8.5.9-src.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:44dd7ddb891363a3db5d6edaf15dae5251237bccd5be2dc5c20f48367e220871 -size 3444091