summary refs log tree commit diff
path: root/gnu/packages/hurd.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/hurd.scm')
-rw-r--r--gnu/packages/hurd.scm30
1 files changed, 16 insertions, 14 deletions
diff --git a/gnu/packages/hurd.scm b/gnu/packages/hurd.scm
index 1dcec3ea3c..7f02e6141d 100644
--- a/gnu/packages/hurd.scm
+++ b/gnu/packages/hurd.scm
@@ -1,6 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2014, 2015, 2016, 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
-;;; Copyright © 2018, 2020-2022 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2018, 2020-2023 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2020, 2022 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
@@ -122,19 +122,21 @@ GNU/Hurd."
         "1gyda8sq6b379nx01hkpbd85lz39irdvz2b9wbr63gicicx8i706"))))
     (build-system gnu-build-system)
     ;; Flex is needed both at build and run time.
-    (inputs (list gnumach-headers flex perl))
-    (native-inputs
-     (list flex bison))
-    (arguments `(#:tests? #f
-                 #:phases
-                 (modify-phases %standard-phases
-                   (add-after 'install 'patch-non-shebang-references
-                     (lambda* (#:key build inputs outputs #:allow-other-keys)
-                       (let ((perl (assoc-ref inputs "perl"))
-                             (out  (assoc-ref outputs "out")))
-                         (substitute* (string-append out "/bin/mig")
-                           (("perl ") (string-append perl "/bin/perl ")))
-                         #t))))))
+    (inputs (list gnumach-headers flex))
+    (native-inputs (list flex bison))
+    (arguments
+     (list #:tests? #f
+           #:phases
+           #~(modify-phases %standard-phases
+               (add-after 'install 'avoid-perl-dependency
+                 (lambda* (#:key build inputs outputs #:allow-other-keys)
+                   (let* ((out (assoc-ref outputs "out"))
+                          (bin (string-append out "/bin")))
+                     ;; By default 'mig' (or 'TARGET-mig') uses Perl to
+                     ;; compute 'libexecdir_rel'.  Avoid it.
+                     (substitute* (find-files bin "mig$")
+                       (("^libexecdir_rel=.*")
+                        "libexecdir_rel=../libexec\n"))))))))
     (home-page "https://www.gnu.org/software/hurd/microkernel/mach/mig/gnu_mig.html")
     (synopsis "Mach 3.0 interface generator for the Hurd")
     (description