summary refs log tree commit diff
path: root/gnu/packages/lisp.scm
diff options
context:
space:
mode:
authorTobias Geerinckx-Rice <me@tobias.gr>2020-04-14 18:38:23 +0200
committerTobias Geerinckx-Rice <me@tobias.gr>2020-04-14 20:23:21 +0200
commit92e52d25adbb684ae943be396ee27273d9475afc (patch)
treeae6aec39959bcba7dbe766ecc12b65629415561c /gnu/packages/lisp.scm
parentc3f88d4f345c41220670558391e38af2278936a4 (diff)
downloadguix-92e52d25adbb684ae943be396ee27273d9475afc.tar.gz
gnu: txr: Call ./configure manually instead of patching.
* gnu/packages/lisp.scm (txr)[source]: Remove patch.
[arguments]: Add ‘--prefix’ to #:configure-flags.
Use a custom ‘configure’ phase.
* gnu/packages/patches/txr-shell.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
Diffstat (limited to 'gnu/packages/lisp.scm')
-rw-r--r--gnu/packages/lisp.scm29
1 files changed, 19 insertions, 10 deletions
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index b35fa3225a..d7ad0a0db0 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -853,22 +853,31 @@ enough to play the original mainframe Zork all the way through.")
              (url "http://www.kylheku.com/git/txr/")
              (commit (string-append "txr-" version))))
        (file-name (git-file-name name version))
-       (patches (search-patches "txr-shell.patch"))
        (sha256
         (base32
          "0c9qsj4xwc24c9g02mr5n97m4d87d4n0pcc2c2n58l2vg5dnzba0"))))
     (build-system gnu-build-system)
     (arguments
-     '(#:configure-flags '("cc=gcc")
+     '(#:configure-flags
+       (list "cc=gcc"
+             (string-append "--prefix=" (assoc-ref %outputs "out")))
        #:test-target "tests"
-       #:phases (modify-phases %standard-phases
-                  (add-after 'configure 'fix-tests
-                    (lambda _
-                      (substitute* "tests/017/realpath.tl"
-                        (("/usr/bin") "/"))
-                      (substitute* "tests/017/realpath.expected"
-                        (("/usr/bin") "/"))
-                      #t)))))
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'configure
+           ;; ./configure is a hand-written script that can't handle standard
+           ;; autotools arguments like CONFIG_SHELL.
+           (lambda* (#:key configure-flags #:allow-other-keys)
+             (setenv "txr_shell" (which "bash"))
+             (apply invoke "./configure" configure-flags)
+             #t))
+         (add-after 'configure 'fix-tests
+           (lambda _
+             (substitute* "tests/017/realpath.tl"
+               (("/usr/bin") "/"))
+             (substitute* "tests/017/realpath.expected"
+               (("/usr/bin") "/"))
+             #t)))))
     (native-inputs
      `(("bison" ,bison)
        ("flex" ,flex)))