gnu: emacs-consult: Fix grammar.
[jackhill/guix/guix.git] / gnu / packages / m4.scm
index 0915fde..090f557 100644 (file)
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2012, 2013, 2015 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
 (define-public m4
   (package
    (name "m4")
-   (version "1.4.17")
+   (version "1.4.18")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnu/m4/m4-"
-                                version ".tar.bz2"))
+                                version ".tar.xz"))
+            (patches (search-patches "m4-gnulib-libio.patch"))
             (sha256
              (base32
-              "0w0da1chh12mczxa5lnwzjk9czi3dq6gnnndbpa6w4rj76b1yklf"))
-            (patches (list (search-patch "m4-readlink-EINVAL.patch")))))
+              "01sfjd5a4waqw83bibvmn522g69qfqvwig9i2qlgy154l1nfihgj"))))
    (build-system gnu-build-system)
    (arguments
-    ;; XXX: Disable tests on those platforms with know issues.
-    `(#:tests? ,(not (member (%current-system)
-                             '("x86_64-darwin"
-                               "i686-cygwin"
-                               "i686-sunos")))
-      #:phases (alist-cons-before
-                'check 'pre-check
-                (lambda* (#:key inputs #:allow-other-keys)
-                  ;; Fix references to /bin/sh.
-                  (let ((bash (assoc-ref inputs "bash")))
-                    (for-each patch-shebang
-                              (find-files "tests" "\\.sh$"))
-                    (substitute* (find-files "tests"
-                                             "posix_spawn")
-                      (("/bin/sh")
-                       (format #f "~a/bin/bash" bash)))))
-                %standard-phases)))
+    `(;; Explicitly disable tests when cross-compiling, otherwise 'make check'
+      ;; proceeds and fails, unsurprisingly.
+      #:tests? ,(not (%current-target-system))
+
+      #:phases
+      (modify-phases %standard-phases
+        (add-before 'check 'pre-check
+          (lambda* (#:key inputs #:allow-other-keys)
+            ;; Fix references to /bin/sh.
+            (let ((bash (assoc-ref inputs "bash")))
+              (for-each patch-shebang
+                        (find-files "tests" "\\.sh$"))
+              (substitute* (find-files "tests"
+                                       "posix_spawn")
+                (("/bin/sh")
+                 (format #f "~a/bin/sh" bash)))
+              #t))))))
    (synopsis "Macro processor")
    (description
     "GNU M4 is an implementation of the M4 macro language, which features
@@ -62,4 +63,4 @@ Autoconf.  It is used as a macro processor, which means it processes text,
 expanding macros as it encounters them.  It also has some built-in functions,
 for example to run shell commands or to do arithmetic.")
    (license gpl3+)
-   (home-page "http://www.gnu.org/software/m4/")))
+   (home-page "https://www.gnu.org/software/m4/")))