diff options
author | Brian Cully <bjc@spork.org> | 2023-05-12 18:36:29 -0400 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2023-05-19 16:46:33 +0200 |
commit | c9e1fff79310f876821ed1ff5354bd79a08ed5cc (patch) | |
tree | b2bf07abb3d2a37ed0e2496e1076ce6ca0ea387f /gnu/packages/virtualization.scm | |
parent | 7ff9ca2201fba6fc878690cd9bcd02d9b744fd03 (diff) |
gnu: criu: Reset timestamps in .egg file.
Ensure all files being built are dated no earlier than 1980 by copying in a
modified (@@ (guix build python-build-system) ensure-no-mtimes-pre-1980) which
is symlink-aware. This copy should be removed when the original procedure is
modified to avoid calling UTIME on symlinks.
* gnu/packages/virtualization.scm (criu)[arguments]: Add
'ensure-no-mtimes-pre-1980' phase.
[inputs]: Remove python.
[native-inputs]: Add python-toolchain.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/packages/virtualization.scm')
-rw-r--r-- | gnu/packages/virtualization.scm | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index 4a0d6b0096..c88fd31146 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -1697,6 +1697,8 @@ domains, their live performance and resource utilization statistics.") (string-append "XMLTO=" (search-input-file %build-inputs "/bin/xmlto"))) + #:modules ((ice-9 ftw) + ,@%gnu-build-system-modules) #:phases (modify-phases %standard-phases (delete 'configure) ; no configure script @@ -1719,6 +1721,17 @@ domains, their live performance and resource utilization statistics.") (substitute* "criu/include/plugin.h" (("/var") (string-append (assoc-ref outputs "out")))) )) + ;; TODO: use + ;; (@@ (guix build python-build-system) ensure-no-mtimes-pre-1980) + ;; when it no longer throws due to trying to call UTIME on symlinks. + (add-after 'unpack 'ensure-no-mtimes-pre-1980 + (lambda _ + (let ((early-1980 315619200)) ; 1980-01-02 UTC + (ftw "." (lambda (file stat flag) + (unless (or (<= early-1980 (stat:mtime stat)) + (eq? (stat:type stat) 'symlink)) + (utime file early-1980 early-1980)) + #t))))) (add-before 'build 'fix-symlink (lambda* (#:key inputs #:allow-other-keys) ;; The file 'images/google/protobuf/descriptor.proto' points to @@ -1748,7 +1761,6 @@ domains, their live performance and resource utilization statistics.") (for-each delete-file (find-files out "\\.a$")))))))) (inputs `(("protobuf" ,protobuf) - ("python" ,python) ("python-protobuf" ,python-protobuf) ("iproute" ,iproute) ("libaio" ,libaio) @@ -1763,7 +1775,8 @@ domains, their live performance and resource utilization statistics.") asciidoc xmlto docbook-xml - docbook-xsl)) + docbook-xsl + python-toolchain)) (propagated-inputs ;; included by 'rpc.pb-c.h' (list protobuf-c)) |