summaryrefslogtreecommitdiff
path: root/gnu/packages/autotools.scm
diff options
context:
space:
mode:
authorMiguel Ángel Arruga Vivas <rosen644835@gmail.com>2020-11-13 15:24:46 +0100
committerMiguel Ángel Arruga Vivas <rosen644835@gmail.com>2020-11-16 13:44:29 +0100
commit8d263ff254292c9e13a9848f90b52263da52d570 (patch)
tree4fd437f165215f5ed084abd638ac615a2f106fde /gnu/packages/autotools.scm
parentdbb4c665e4d17aa7fdc39220ef79560c545628d3 (diff)
gnu: libtool: Restore shebangs on all libtoolize files.
Fixes <https://bugs.gnu.org/25304>. * gnu/packages/autotools.scm (libtool)[restore-build-aux-shebang]: New phase after install. [restore-ltmain-shebang]: Remove phase, it is now performed by the phase restore-build-aux-shebang.
Diffstat (limited to 'gnu/packages/autotools.scm')
-rw-r--r--gnu/packages/autotools.scm18
1 files changed, 13 insertions, 5 deletions
diff --git a/gnu/packages/autotools.scm b/gnu/packages/autotools.scm
index 96f2925180..c9e1c9bcf1 100644
--- a/gnu/packages/autotools.scm
+++ b/gnu/packages/autotools.scm
@@ -444,11 +444,19 @@ Makefile, simplifying the entire process for the developer.")
(("/bin/sh")
(string-append bash "/bin/sh")))
#t)))
- (add-after 'patch-source-shebangs 'restore-ltmain-shebang
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "build-aux/ltmain.in"
- (("^#!.*/bin/sh$") "#!/bin/sh"))
- #t)))))
+ ;; These files may be copied into source trees by libtoolize,
+ ;; therefore they must not point to store file names that would be
+ ;; leaked with tarballs generated by make dist.
+ (add-after 'install 'restore-build-aux-shebang
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (dir (string-append out "/share/libtool/build-aux")))
+ (for-each (lambda (file)
+ (format #t "restoring shebang on `~a'~%" file)
+ (substitute* file
+ (("^#!.*/bin/sh") "#!/bin/sh")))
+ (find-files dir ".*"))
+ #t))))))
(synopsis "Generic shared library support tools")
(description