summary refs log tree commit diff
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2021-12-17 15:20:54 -0500
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-01-10 11:44:30 -0500
commit1c3a92254208b20741099588740e6f2f6ac9f54c (patch)
tree2aa9bf5accfd79ebe2b7c3ba5a9b723baccb837d
parent756188a8da7e3cf4a784dab4eab05799eb2f2dd5 (diff)
downloadguix-1c3a92254208b20741099588740e6f2f6ac9f54c.tar.gz
gnu: autoconf-2.69: Repatriate unpatch-shebangs phase from 2.71.
* gnu/packages/autotools.scm (autoconf-2.71)[phases]{unpatch-shebangs}: Move
to...
* gnu/packages/autotools.scm (autoconf-2.69)[phases]: ... here.
-rw-r--r--gnu/packages/autotools.scm69
1 files changed, 33 insertions, 36 deletions
diff --git a/gnu/packages/autotools.scm b/gnu/packages/autotools.scm
index a8bf36a966..1eea731233 100644
--- a/gnu/packages/autotools.scm
+++ b/gnu/packages/autotools.scm
@@ -68,29 +68,38 @@
      `(;; XXX: testsuite: 209 and 279 failed.  The latter is an impurity.  It
        ;; should use our own "cpp" instead of "/lib/cpp".
        #:tests? #f
-       ,@(if (%current-target-system)
-             `(#:phases
-               (modify-phases %standard-phases
-                 (add-after 'install 'patch-non-shebang-references
-                   (lambda* (#:key build inputs outputs #:allow-other-keys)
-                     ;; `patch-shebangs' patches shebangs only, and the Perl
-                     ;; scripts use a re-exec feature that references the
-                     ;; build hosts' perl.  Also, BASH and M4 store references
-                     ;; hide in the scripts.
-                     (let ((bash (assoc-ref inputs "bash"))
-                           (m4 (assoc-ref inputs "m4"))
-                           (perl (assoc-ref inputs "perl"))
-                           (out  (assoc-ref outputs "out"))
-                           (store-directory (%store-directory)))
-                      (substitute* (find-files (string-append out "/bin"))
-                        (((string-append store-directory "/[^/]*-bash-[^/]*"))
-                         bash)
-                        (((string-append store-directory "/[^/]*-m4-[^/]*"))
-                         m4)
-                        (((string-append store-directory "/[^/]*-perl-[^/]*"))
-                         perl))
-                      #t)))))
-             '())))
+       #:phases
+       (modify-phases %standard-phases
+         ,@(if (%current-target-system)
+               '((add-after 'install 'patch-non-shebang-references
+                    (lambda* (#:key build inputs outputs #:allow-other-keys)
+                      ;; `patch-shebangs' patches shebangs only, and the Perl
+                      ;; scripts use a re-exec feature that references the
+                      ;; build hosts' perl.  Also, BASH and M4 store references
+                      ;; hide in the scripts.
+                      (let ((bash (assoc-ref inputs "bash"))
+                            (m4 (assoc-ref inputs "m4"))
+                            (perl (assoc-ref inputs "perl"))
+                            (out  (assoc-ref outputs "out"))
+                            (store-directory (%store-directory)))
+                        (substitute* (find-files (string-append out "/bin"))
+                          (((string-append store-directory "/[^/]*-bash-[^/]*"))
+                           bash)
+                          (((string-append store-directory "/[^/]*-m4-[^/]*"))
+                           m4)
+                          (((string-append store-directory "/[^/]*-perl-[^/]*"))
+                           perl))))))
+               '())
+         (add-after 'install 'unpatch-shebangs
+           (lambda* (#:key outputs #:allow-other-keys)
+             ;; Scripts that "autoconf -i" installs (config.guess,
+             ;; config.sub, and install-sh) must use a regular shebang
+             ;; rather than a reference to the store.  Restore it.
+             (let* ((out (assoc-ref outputs "out"))
+                    (build-aux (string-append
+                                out "/share/autoconf/build-aux")))
+               (substitute* (find-files build-aux)
+                 (("^#!.*/bin/sh") "#!/bin/sh"))))))))
     (home-page "https://www.gnu.org/software/autoconf/")
     (synopsis "Create source code configuration scripts")
     (description
@@ -130,19 +139,7 @@ know anything about Autoconf or M4.")
                                                (executable-file? file)))
                                  (find-files "bin"
                                              (lambda (file stat)
-                                               (executable-file? file)))))
-               #t))
-           (add-after 'install 'unpatch-shebangs
-             (lambda* (#:key outputs #:allow-other-keys)
-               ;; Scripts that "autoconf -i" installs (config.guess,
-               ;; config.sub, and install-sh) must use a regular shebang
-               ;; rather than a reference to the store.  Restore it.
-               ;; TODO: Move this phase to 'autoconf-2.69'.
-               (let* ((out (assoc-ref outputs "out"))
-                      (build-aux (string-append
-                                  out "/share/autoconf/build-aux")))
-                 (substitute* (find-files build-aux)
-                   (("^#!.*/bin/sh") "#!/bin/sh")))))))))))
+                                               (executable-file? file)))))))))))))
 
 (define-public autoconf autoconf-2.69)