summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/autotools.scm110
1 files changed, 55 insertions, 55 deletions
diff --git a/gnu/packages/autotools.scm b/gnu/packages/autotools.scm
index ac910df00df..fb1b4751ee3 100644
--- a/gnu/packages/autotools.scm
+++ b/gnu/packages/autotools.scm
@@ -53,55 +53,55 @@
53 (version "2.69") 53 (version "2.69")
54 (source 54 (source
55 (origin 55 (origin
56 (method url-fetch) 56 (method url-fetch)
57 (uri (string-append "mirror://gnu/autoconf/autoconf-" 57 (uri (string-append "mirror://gnu/autoconf/autoconf-"
58 version ".tar.xz")) 58 version ".tar.xz"))
59 (sha256 59 (sha256
60 (base32 60 (base32
61 "113nlmidxy9kjr45kg9x3ngar4951mvag1js2a3j8nxcz34wxsv4")))) 61 "113nlmidxy9kjr45kg9x3ngar4951mvag1js2a3j8nxcz34wxsv4"))))
62 (build-system gnu-build-system) 62 (build-system gnu-build-system)
63 (inputs 63 (inputs
64 `(("bash" ,bash-minimal) 64 (list bash-minimal m4 perl))
65 ("perl" ,perl)
66 ("m4" ,m4)))
67 (native-inputs 65 (native-inputs
68 (list perl m4)) 66 (list perl m4))
69 (arguments 67 (arguments
70 `(;; XXX: testsuite: 209 and 279 failed. The latter is an impurity. It 68 (list
71 ;; should use our own "cpp" instead of "/lib/cpp". 69 ;; XXX: testsuite: 209 and 279 failed. The latter is an impurity. It
72 #:tests? #f 70 ;; should use our own "cpp" instead of "/lib/cpp".
73 #:phases 71 #:tests? #f
74 (modify-phases %standard-phases 72 #:phases
75 ,@(if (%current-target-system) 73 #~(modify-phases %standard-phases
76 '((add-after 'install 'patch-non-shebang-references 74 #$@(if (%current-target-system)
77 (lambda* (#:key build inputs outputs #:allow-other-keys) 75 '((add-after 'install 'patch-non-shebang-references
78 ;; `patch-shebangs' patches shebangs only, and the Perl 76 (lambda* (#:key build inputs #:allow-other-keys)
79 ;; scripts use a re-exec feature that references the 77 ;; `patch-shebangs' patches shebangs only, and the Perl
80 ;; build hosts' perl. Also, BASH and M4 store references 78 ;; scripts use a re-exec feature that references the
81 ;; hide in the scripts. 79 ;; build hosts' perl. Also, BASH and M4 store references
82 (let ((bash (assoc-ref inputs "bash")) 80 ;; hide in the scripts.
83 (m4 (assoc-ref inputs "m4")) 81 (let ((bash (dirname (dirname
84 (perl (assoc-ref inputs "perl")) 82 (search-input-file inputs "bin/bash"))))
85 (out (assoc-ref outputs "out")) 83 (m4 (dirname (dirname
86 (store-directory (%store-directory))) 84 (search-input-file inputs "bin/m4"))))
87 (substitute* (find-files (string-append out "/bin")) 85 (perl (dirname (dirname
88 (((string-append store-directory "/[^/]*-bash-[^/]*")) 86 (search-input-file inputs "bin/perl"))))
89 bash) 87 (store-directory (%store-directory)))
90 (((string-append store-directory "/[^/]*-m4-[^/]*")) 88 (substitute* (find-files (string-append #$output "/bin"))
91 m4) 89 (((string-append store-directory "/[^/]*-bash-[^/]*"))
92 (((string-append store-directory "/[^/]*-perl-[^/]*")) 90 bash)
93 perl)))))) 91 (((string-append store-directory "/[^/]*-m4-[^/]*"))
94 '()) 92 m4)
95 (add-after 'install 'unpatch-shebangs 93 (((string-append store-directory "/[^/]*-perl-[^/]*"))
96 (lambda* (#:key outputs #:allow-other-keys) 94 perl))))))
97 ;; Scripts that "autoconf -i" installs (config.guess, 95 '())
98 ;; config.sub, and install-sh) must use a regular shebang 96 (add-after 'install 'unpatch-shebangs
99 ;; rather than a reference to the store. Restore it. 97 (lambda _
100 (let* ((out (assoc-ref outputs "out")) 98 ;; Scripts that "autoconf -i" installs (config.guess,
101 (build-aux (string-append 99 ;; config.sub, and install-sh) must use a regular shebang
102 out "/share/autoconf/build-aux"))) 100 ;; rather than a reference to the store. Restore it.
103 (substitute* (find-files build-aux) 101 (let ((build-aux (string-append #$output
104 (("^#!.*/bin/sh") "#!/bin/sh")))))))) 102 "/share/autoconf/build-aux")))
103 (substitute* (find-files build-aux)
104 (("^#!.*/bin/sh") "#!/bin/sh"))))))))
105 (home-page "https://www.gnu.org/software/autoconf/") 105 (home-page "https://www.gnu.org/software/autoconf/")
106 (synopsis "Create source code configuration scripts") 106 (synopsis "Create source code configuration scripts")
107 (description 107 (description
@@ -131,17 +131,17 @@ know anything about Autoconf or M4.")
131 ;; FIXME: To run the test suite, fix all the instances where scripts 131 ;; FIXME: To run the test suite, fix all the instances where scripts
132 ;; generates "#! /bin/sh" shebangs. 132 ;; generates "#! /bin/sh" shebangs.
133 #f) 133 #f)
134 ((#:phases phases '%standard-phases) 134 ((#:phases phases #~%standard-phases)
135 `(modify-phases ,phases 135 #~(modify-phases #$phases
136 (add-before 'check 'prepare-tests 136 (add-before 'check 'prepare-tests
137 (lambda _ 137 (lambda _
138 (for-each patch-shebang 138 (for-each patch-shebang
139 (append (find-files "tests" 139 (append (find-files "tests"
140 (lambda (file stat) 140 (lambda (file stat)
141 (executable-file? file))) 141 (executable-file? file)))
142 (find-files "bin" 142 (find-files "bin"
143 (lambda (file stat) 143 (lambda (file stat)
144 (executable-file? file))))))))))))) 144 (executable-file? file)))))))))))))
145 145
146(define-public autoconf autoconf-2.69) 146(define-public autoconf autoconf-2.69)
147 147