summaryrefslogtreecommitdiff
path: root/gnu/packages/autotools.scm
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 /gnu/packages/autotools.scm
parent756188a8da7e3cf4a784dab4eab05799eb2f2dd5 (diff)
downloadguix-patches-1c3a92254208b20741099588740e6f2f6ac9f54c.tar
guix-patches-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.
Diffstat (limited to 'gnu/packages/autotools.scm')
-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)