From b9c9c23939a40a850a8c78579adaec25d1972bd1 Mon Sep 17 00:00:00 2001 From: Guillaume Le Vaillant Date: Tue, 4 Apr 2023 10:20:02 +0200 Subject: gnu: txr: Improve style. * gnu/packages/lisp.scm (txr)[arguments]: Use gexps. [home-page]: Update it. --- gnu/packages/lisp.scm | 111 +++++++++++++++++++++++++------------------------- 1 file changed, 55 insertions(+), 56 deletions(-) diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index 17fafba455..c5ff9c45c9 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -1000,61 +1000,60 @@ the HTML documentation of TXR.") (base32 "1ypsgakhak0znmg3wzblfcwd4s4nanzm61dz66gwi48rfnq35znl")))) (build-system gnu-build-system) (arguments - `(#:configure-flags - (list ,(string-append "cc=" (cc-for-target)) - (string-append "--prefix=" (assoc-ref %outputs "out"))) - #:test-target "tests" - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'fix-license-installation - (lambda* (#:key outputs #:allow-other-keys) - (substitute* "Makefile" - (("INSTALL(,.*LICENSE,.*)\\$\\(datadir\\)" _ match) - (string-append "INSTALL" match - (assoc-ref outputs "out") - "/share/doc/" ,name "-" ,version))))) - (delete 'install-license-files) - (add-after 'unpack 'inhibit-doc-syms-generation - (lambda _ - (substitute* "genman.txr" - ;; Exit from genman.txr before it tries to write to - ;; stdlib/doc-syms.tl, which is anyway kept up to date with - ;; each release (and is already compiled to stdlib/doc-syms.tlo - ;; when genman.txr is run). - (("^@\\(output \"stdlib/doc-syms\\.tl\"\\).*" line) - (string-append "@(do (exit))\n" line))))) - (add-after 'unpack 'fix-paths - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "stream.c" - (("/bin/sh") - (string-append (assoc-ref inputs "bash") "/bin/bash"))))) - (add-after 'unpack 'fix-tests - (lambda _ - (substitute* (list "tests/017/realpath.tl" - "tests/017/realpath.expected") - (("/usr/bin") "/")))) - (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))) - (add-after 'build 'build-doc - (lambda _ - (setenv "GS_GENERATE_UUIDS" "0") - (invoke "make" "txr-manpage.html" "txr-manpage.pdf"))) - (add-after 'install 'install-doc - (lambda* (#:key outputs #:allow-other-keys) - (let ((doc (string-append (assoc-ref outputs "out") - "/share/doc/" ,name "-" ,version))) - (for-each (lambda (f) (install-file f doc)) - '("txr-manpage.html" "txr-manpage.pdf"))))) - (add-after 'install 'install-vim-files - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (syntax (string-append out "/share/vim/vimfiles/syntax"))) - (install-file "tl.vim" syntax) - (install-file "txr.vim" syntax))))))) + (list #:configure-flags + #~(list (string-append "cc=" #$(cc-for-target)) + (string-append "--prefix=" #$output)) + #:test-target "tests" + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-license-installation + (lambda _ + (substitute* "Makefile" + (("INSTALL(,.*LICENSE,.*)\\$\\(datadir\\)" _ match) + (string-append "INSTALL" match #$output + "/share/doc/" #$name "-" #$version))))) + (delete 'install-license-files) + (add-after 'unpack 'inhibit-doc-syms-generation + (lambda _ + (substitute* "genman.txr" + ;; Exit from genman.txr before it tries to write to + ;; stdlib/doc-syms.tl, which is anyway kept up to date + ;; with each release (and is already compiled to + ;; stdlib/doc-syms.tlo when genman.txr is run). + (("^@\\(output \"stdlib/doc-syms\\.tl\"\\).*" line) + (string-append "@(do (exit))\n" line))))) + (add-after 'unpack 'fix-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "stream.c" + (("/bin/sh") + (search-input-file inputs "/bin/bash"))))) + (add-after 'unpack 'fix-tests + (lambda _ + (substitute* (list "tests/017/realpath.tl" + "tests/017/realpath.expected") + (("/usr/bin") "/")))) + (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))) + (add-after 'build 'build-doc + (lambda _ + (setenv "GS_GENERATE_UUIDS" "0") + (invoke "make" "txr-manpage.html" "txr-manpage.pdf"))) + (add-after 'install 'install-doc + (lambda _ + (let ((doc (string-append #$output "/share/doc/" + #$name "-" #$version))) + (for-each (lambda (f) (install-file f doc)) + '("txr-manpage.html" "txr-manpage.pdf"))))) + (add-after 'install 'install-vim-files + (lambda _ + (let ((syntax (string-append #$output + "/share/vim/vimfiles/syntax"))) + (install-file "tl.vim" syntax) + (install-file "txr.vim" syntax))))))) (native-inputs ;; Required to build the documentation. (list ghostscript @@ -1073,7 +1072,7 @@ extraction language referred to as the TXR Pattern Language (sometimes just used for everything from \"one liner\" data transformation tasks at the command line, to data scanning and extracting scripts, to full application development in a wide-range of areas.") - (home-page "https://nongnu.org/txr/") + (home-page "https://www.nongnu.org/txr/") (license license:bsd-2))) (define picolisp32 -- cgit v1.2.3