diff options
author | Mark H Weaver <mhw@netris.org> | 2015-07-15 13:31:51 -0400 |
---|---|---|
committer | Mark H Weaver <mhw@netris.org> | 2015-07-15 13:31:51 -0400 |
commit | 46472ecd006e7fd5e36056b2c7a0f3023d4efbd7 (patch) | |
tree | 52300a270cfb0ee72c29516b3191f51444d23edb /gnu | |
parent | c09e6a5f5e2a77beff89d68069f3037c1b6310e5 (diff) | |
download | guix-46472ecd006e7fd5e36056b2c7a0f3023d4efbd7.tar.gz |
gnu: python: Set source file times to 1980 to fix test.
* gnu/packages/python.scm (python-2)[arguments]: Use 'modify-phases'. Return true from phases where needed. Add 'set-source-file-times-to-1980' phase. Add (ice-9 ftw) to #:modules.
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/packages/python.scm | 50 |
1 files changed, 33 insertions, 17 deletions
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 5dcaba0871..9ceb5b2f5e 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -155,24 +155,40 @@ "-L" zlib "/lib " "-Wl,-rpath=" out "/lib"))) + #:modules ((ice-9 ftw) + ,@%gnu-build-system-modules) #:phases - (alist-cons-before - 'configure 'patch-lib-shells - (lambda _ - ;; Filter for existing files, since some may not exist in all - ;; versions of python that are built with this recipe. - (substitute* (filter file-exists? - '("Lib/subprocess.py" - "Lib/popen2.py" - "Lib/distutils/tests/test_spawn.py" - "Lib/test/test_subprocess.py")) - (("/bin/sh") (which "sh")))) - (alist-cons-before - 'check 'pre-check - (lambda _ - ;; 'Lib/test/test_site.py' needs a valid $HOME - (setenv "HOME" (getcwd))) - %standard-phases)))) + (modify-phases %standard-phases + (add-before + 'configure 'patch-lib-shells + (lambda _ + ;; Filter for existing files, since some may not exist in all + ;; versions of python that are built with this recipe. + (substitute* (filter file-exists? + '("Lib/subprocess.py" + "Lib/popen2.py" + "Lib/distutils/tests/test_spawn.py" + "Lib/test/test_subprocess.py")) + (("/bin/sh") (which "sh"))) + #t)) + (add-before + 'check 'pre-check + (lambda _ + ;; 'Lib/test/test_site.py' needs a valid $HOME + (setenv "HOME" (getcwd)) + #t)) + (add-after + 'unpack 'set-source-file-times-to-1980 + ;; XXX One of the tests uses a ZIP library to pack up some of the + ;; source tree, and fails with "ZIP does not support timestamps + ;; before 1980". Work around this by setting the file times in the + ;; source tree to sometime in early 1980. + (lambda _ + (let ((circa-1980 (* 10 366 24 60 60))) + (ftw "." (lambda (file stat flag) + (utime file circa-1980 circa-1980) + #t)) + #t)))))) (inputs `(("bzip2" ,bzip2) ("gdbm" ,gdbm) |