diff options
author | Juliana Sims <jtsims@protonmail.com> | 2023-03-28 22:45:26 -0400 |
---|---|---|
committer | Maxim Cournoyer <maxim.cournoyer@gmail.com> | 2023-04-14 15:12:14 -0400 |
commit | e3089dc0ee2d3ab54333a5e67ede2f4cf0d23525 (patch) | |
tree | 0eaa898620a0ba886319ad08f4dacf9848371bd6 | |
parent | c694f618974fa6c9f8aecf4a4c6c52e70adacb53 (diff) | |
download | guix-e3089dc0ee2d3ab54333a5e67ede2f4cf0d23525.tar guix-e3089dc0ee2d3ab54333a5e67ede2f4cf0d23525.tar.gz |
gnu: gerbil: Update to 0.17.0.
* gnu/package/scheme.scm (gerbil): Update to 0.17.0.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r-- | gnu/packages/scheme.scm | 179 |
1 files changed, 91 insertions, 88 deletions
diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm index 8a510d840b..7c39071e82 100644 --- a/gnu/packages/scheme.scm +++ b/gnu/packages/scheme.scm @@ -1115,95 +1115,98 @@ a Common Lisp environment.") (package (name "gerbil") (version "0.17.0") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/vyzo/gerbil") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0c0nspm659ybgmqlppdv7sxzll4hwkvcp9qmcsip6d0kz0p8r9c3")))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/vyzo/gerbil") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0c0nspm659ybgmqlppdv7sxzll4hwkvcp9qmcsip6d0kz0p8r9c3")))) (arguments - (list #:phases - #~(modify-phases %standard-phases - (delete 'bootstrap) - (add-before 'configure 'chdir - (lambda _ - (chdir "src"))) - (replace 'configure - (lambda _ - (invoke "chmod" "755" "-R" ".") - ;; Otherwise fails when editing an r--r--r-- file. - (invoke "gsi-script" - "configure" - "--prefix" - #$output - "--with-gambit" - #$gambit-c))) - (add-before 'patch-generated-file-shebangs 'fix-gxi-shebangs - (lambda _ - ;; Some .ss files refer to gxi using /usr/bin/env gxi - ;; and 'patch-generated-file-shebangs can't fix that - ;; because gxi has not been compiled yet. - ;; We know where gxi is going to end up so we - ;; Doctor Who our fix here before the problem - ;; happens towards the end of the build.sh script. - (let ((abs-srcdir (getcwd))) - (for-each (lambda (f) - (substitute* f - (("#!/usr/bin/env gxi") - (string-append "#!" abs-srcdir - "/../bin/gxi")))) - '("./gerbil/gxc" "./lang/build.ss" - "./misc/http-perf/build.ss" - "./misc/rpc-perf/build.ss" - "./misc/scripts/docsnarf.ss" - "./misc/scripts/docstub.ss" - "./misc/scripts/docsyms.ss" - "./r7rs-large/build.ss" - "./release.ss" - "./std/build.ss" - "./std/run-tests.ss" - "./std/web/fastcgi-test.ss" - "./std/web/rack-test.ss" - "./tools/build.ss" - "./tutorial/httpd/build.ss" - "./tutorial/kvstore/build.ss" - "./tutorial/lang/build.ss" - "./tutorial/proxy/build-static.ss" - "./tutorial/proxy/build.ss"))))) - (add-after 'configure 'create-gx-version.scm - (lambda _ - (with-output-to-file (string-append (getcwd) - "/gerbil/runtime/gx-version.scm") - (lambda _ - (write `(define (gerbil-version-string) - ,(string-append "v" - #$(version-major+minor - version)))))))) - (replace 'build - (lambda _ - (setenv "HOME" - (getcwd)) - (invoke - ;; The build script needs a tty or it'll crash on an ioctl - ;; trying to find the width of the terminal it's running on. - ;; Calling in script prevents that. - "script" - "-qefc" - "./build.sh"))) - (replace 'install - (lambda _ - (let* ((bin (string-append #$output "/bin")) - (lib (string-append #$output "/lib"))) - (mkdir-p bin) - (mkdir-p lib) - (copy-recursively "../bin" bin) - (copy-recursively "../lib" lib))))) - #:tests? #f)) - (native-inputs (list coreutils gambit-c util-linux)) - (propagated-inputs (list gambit-c openssl sqlite zlib)) + `(#:phases + (modify-phases %standard-phases + (delete 'bootstrap) + (add-before 'configure 'chdir + (lambda _ + (chdir "src") + #t)) + (replace 'configure + (lambda* (#:key outputs inputs #:allow-other-keys) + (invoke "chmod" "755" "-R" ".") + ;; Otherwise fails when editing an r--r--r-- file. + (invoke "gsi-script" "configure" + "--prefix" (assoc-ref outputs "out") + "--with-gambit" (assoc-ref inputs "gambit-c")))) + (add-before 'patch-generated-file-shebangs 'fix-gxi-shebangs + (lambda _ + ;; Some .ss files refer to gxi using /usr/bin/env gxi + ;; and 'patch-generated-file-shebangs can't fix that + ;; because gxi has not been compiled yet. + ;; We know where gxi is going to end up so we + ;; Doctor Who our fix here before the problem + ;; happens towards the end of the build.sh script. + (let ((abs-srcdir (getcwd))) + (for-each + (lambda (f) + (substitute* f + (("#!/usr/bin/env gxi") + (string-append "#!" abs-srcdir "/../bin/gxi")))) + '("./gerbil/gxc" + "./lang/build.ss" + "./misc/http-perf/build.ss" + "./misc/rpc-perf/build.ss" + "./misc/scripts/docsnarf.ss" + "./misc/scripts/docstub.ss" + "./misc/scripts/docsyms.ss" + "./r7rs-large/build.ss" + "./release.ss" + "./std/build.ss" + "./std/run-tests.ss" + "./std/web/fastcgi-test.ss" + "./std/web/rack-test.ss" + "./tools/build.ss" + "./tutorial/httpd/build.ss" + "./tutorial/kvstore/build.ss" + "./tutorial/lang/build.ss" + "./tutorial/proxy/build-static.ss" + "./tutorial/proxy/build.ss"))) + #t)) + (add-after 'configure 'create-gx-version.scm + (lambda _ + (with-output-to-file (string-append + (getcwd) + "/gerbil/runtime/gx-version.scm") + (lambda _ + (write `(define (gerbil-version-string) + ,(string-append "v" ,(version-major+minor version)))))))) + (replace + 'build + (lambda* + (#:key inputs #:allow-other-keys) + (setenv "HOME" (getcwd)) + (invoke + ;; The build script needs a tty or it'll crash on an ioctl + ;; trying to find the width of the terminal it's running on. + ;; Calling in script prevents that. + "script" + "-qefc" + "./build.sh"))) + (delete 'check) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (lib (string-append out "/lib"))) + (mkdir-p bin) + (mkdir-p lib) + (copy-recursively "../bin" bin) + (copy-recursively "../lib" lib))))))) + (native-inputs + (list coreutils gambit-c util-linux)) + (propagated-inputs + (list gambit-c zlib openssl sqlite)) (build-system gnu-build-system) (synopsis "Meta-dialect of Scheme with post-modern features") (description |