summary refs log tree commit diff
path: root/gnu/packages/ninja.scm
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2015-07-17 21:46:14 -0400
committerMark H Weaver <mhw@netris.org>2015-07-17 21:46:14 -0400
commit47f315a73f535550d404c22d09ab576991a2b3bf (patch)
tree6b334c258edf041af39daa7f94fe45d13f4048e7 /gnu/packages/ninja.scm
parentb40c3d09b590b463a35185bde99778bb3492ee50 (diff)
downloadguix-47f315a73f535550d404c22d09ab576991a2b3bf.tar.gz
gnu: ninja: Apply the patch in a phase to avoid 'patch-and-repack'.
* gnu/packages/ninja.scm (ninja)[source]: Comment out 'patches' field.
  [native-inputs]: Add 'patch' and "ninja-tests.patch".  Move above
  'arguments' field.
  [arguments]: Add 'apply-ninja-tests.patch' phase.
Diffstat (limited to 'gnu/packages/ninja.scm')
-rw-r--r--gnu/packages/ninja.scm16
1 files changed, 14 insertions, 2 deletions
diff --git a/gnu/packages/ninja.scm b/gnu/packages/ninja.scm
index 82f3e44013..b55dd37e78 100644
--- a/gnu/packages/ninja.scm
+++ b/gnu/packages/ninja.scm
@@ -23,6 +23,7 @@
   #:use-module (guix download)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages)
+  #:use-module (gnu packages base)
   #:use-module (gnu packages python))
 
 (define-public ninja
@@ -37,11 +38,23 @@
               (sha256
                (base32
                 "1h3yfwcfl61v493vna6jia2fizh8rpig7qw2504cvkr6gid3p5bw"))
-              (patches (list (search-patch "ninja-tests.patch")))))
+              ;; XXX Ninja's build system doesn't cope well with zeroed
+              ;; time stamps in the source tree, so we must avoid using
+              ;; 'patch-and-repack'.
+              #; (patches (list (search-patch "ninja-tests.patch")))))
     (build-system gnu-build-system)
+    (native-inputs `(("python" ,python-2)
+                     ("patch" ,patch)
+                     ("ninja-tests.patch" ,(search-patch "ninja-tests.patch"))))
     (arguments
      '(#:phases
        (modify-phases %standard-phases
+         (add-after
+          'unpack 'apply-ninja-tests.patch
+          ;; XXX Apply the patch here to avoid 'patch-and-repack'.  See above.
+          (lambda* (#:key inputs #:allow-other-keys)
+            (zero? (system* "patch" "--force" "-p1" "-i"
+                            (assoc-ref inputs "ninja-tests.patch")))))
          (replace
           'configure
           (lambda _
@@ -70,7 +83,6 @@
               (copy-file "doc/manual.asciidoc"
                          (string-append doc "/manual.asciidoc"))
               #t))))))
-    (native-inputs `(("python" ,python-2)))
     (home-page "http://martine.github.io/ninja/")
     (synopsis "Small build system")
     (description