diff --git a/gnu-system.am b/gnu-system.am index 99e8e7dff4..1fdbd00731 100644 --- a/gnu-system.am +++ b/gnu-system.am @@ -696,6 +696,7 @@ dist_patch_DATA = \ gnu/packages/patches/synfig-build-fix.patch \ gnu/packages/patches/tar-d_ino_in_dirent-fix.patch \ gnu/packages/patches/tar-skip-unreliable-tests.patch \ + gnu/packages/patches/tcl-mkindex-deterministic.patch \ gnu/packages/patches/tcsh-fix-autotest.patch \ gnu/packages/patches/texi2html-document-encoding.patch \ gnu/packages/patches/texi2html-i18n.patch \ diff --git a/gnu/packages/patches/tcl-mkindex-deterministic.patch b/gnu/packages/patches/tcl-mkindex-deterministic.patch new file mode 100644 index 0000000000..2fcef6a4f7 --- /dev/null +++ b/gnu/packages/patches/tcl-mkindex-deterministic.patch @@ -0,0 +1,29 @@ +This patch ensures that the 'tclIndex' files generated by 'auto_mkindex' +are sorted in a deterministic fashion. + +Fixes a non-determinism issue reported +at . + +--- tcl8.6.4/library/auto.tcl 2015-02-26 17:57:28.000000000 +0100 ++++ tcl8.6.4/library/auto.tcl 2015-11-13 23:18:34.964831717 +0100 +@@ -207,6 +207,9 @@ proc auto_mkindex {dir args} { + set args *.tcl + } + ++ # Keep file names sorted in a determistic order. ++ set args [lsort -ascii $args] ++ + auto_mkindex_parser::init + foreach file [glob -- {*}$args] { + try { +@@ -241,6 +244,10 @@ proc auto_mkindex_old {dir args} { + if {![llength $args]} { + set args *.tcl + } ++ ++ # Keep file names sorted in a determistic order. ++ set args [lsort -ascii $args] ++ + foreach file [glob -- {*}$args] { + set f "" + set error [catch { diff --git a/gnu/packages/tcl.scm b/gnu/packages/tcl.scm index c18b8b5112..6f6838c039 100644 --- a/gnu/packages/tcl.scm +++ b/gnu/packages/tcl.scm @@ -35,14 +35,14 @@ (package (name "tcl") (version "8.6.4") - (source - (origin - (method url-fetch) - (uri (string-append "mirror://sourceforge/tcl/Tcl/" - version "/tcl" version "-src.tar.gz")) - (sha256 - (base32 - "13cwa4bc85ylf5gfj9vk182lvgy60qni3f7gbxghq78wk16djvly")))) + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/tcl/Tcl/" + version "/tcl" version "-src.tar.gz")) + (sha256 + (base32 + "13cwa4bc85ylf5gfj9vk182lvgy60qni3f7gbxghq78wk16djvly")) + (patches (list (search-patch "tcl-mkindex-deterministic.patch"))))) (build-system gnu-build-system) (arguments '(#:phases (alist-cons-before