Subject: bug#69970: closed (Re: [bug#69970] [PATCH] gnu: gerbil: Update to 0.18.1.)

From: [email-masked] (GNU bug Tracking System)
Date: Fri, 29 Mar 2024 23:59:02 +0000

Your bug report

#69970: [PATCH] gnu: gerbil: Update to 0.18.1.

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
69970: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=69970
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: [bug#69970] [PATCH] gnu: gerbil: Update to 0.18.1.
From: Ludovic Courtès <[email-masked]>
To: Skylar Hill <[email-masked]>
Cc: [email-masked]
Date: Sat, 30 Mar 2024 00:58:30 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi,

Skylar Hill <[email-masked]> skribis:

>>>From 0fd3c8a884393951a4d73ca54aaad278e5c4495f Mon Sep 17 00:00:00 2001
> Message-ID: <0fd3c8[email-masked]>
> From: Skylar Hill <[email-masked]>
> Date: Sat, 23 Mar 2024 19:50:40 -0500
> Subject: [PATCH] gnu: gerbil: Update to 0.18.1.
>
> * gnu/packages/scheme.scm (gerbil): Update to 0.18.1.
>
> Upstream follows the standard autotools build system more closely now, which
> simplifies the package definition a lot.
>
> Change-Id: I4248ae3d6df3beaf57b6036f5329374da79e26f1

Applied with the changes below and a more detailed commit log.

Thanks!

Ludo’.

diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm
index 36f6d84485..070696d6ba 100644
--- a/gnu/packages/scheme.scm
+++ b/gnu/packages/scheme.scm
@@ -1133,8 +1133,7 @@ (define-public gerbil
                    (delete 'bootstrap)
                    (add-after 'set-paths 'set-cc
                      (lambda _
-                       (setenv "CC"
-                               (string-append #$gcc "/bin/gcc"))))
+                       (setenv "CC" #$(cc-for-target))))
                    (add-before 'patch-generated-file-shebangs 'fix-gxi-shebangs
                      (lambda _
                        ;; Some .ss files refer to gxi using /usr/bin/env gxi
@@ -1184,7 +1183,7 @@ (define-public gerbil
                         "-qefc"
                         "./build.sh"))))
       #:tests? #f))
-    (native-inputs (list coreutils gcc gambit-c util-linux))
+    (native-inputs (list gambit-c util-linux))
     (propagated-inputs (list gambit-c openssl sqlite zlib))
     (build-system gnu-build-system)
     (synopsis "Meta-dialect of Scheme with post-modern features")

Subject: [PATCH] gnu: gerbil: Update to 0.18.1.
From: Skylar Hill <[email-masked]>
To: [email-masked]
Date: Sun, 24 Mar 2024 01:18:27 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

>From 0fd3c8a884393951a4d73ca54aaad278e5c4495f Mon Sep 17 00:00:00 2001
Message-ID: <0fd3c8[email-masked]>
From: Skylar Hill <[email-masked]>
Date: Sat, 23 Mar 2024 19:50:40 -0500
Subject: [PATCH] gnu: gerbil: Update to 0.18.1.

* gnu/packages/scheme.scm (gerbil): Update to 0.18.1.

Upstream follows the standard autotools build system more closely now, which
simplifies the package definition a lot.

Change-Id: I4248ae3d6df3beaf57b6036f5329374da79e26f1
---
 gnu/packages/scheme.scm | 153 +++++++++++++++++-----------------------
 1 file changed, 66 insertions(+), 87 deletions(-)

diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm
index 5ca1a0d2f8..36f6d84485 100644
--- a/gnu/packages/scheme.scm
+++ b/gnu/packages/scheme.scm
@@ -23,6 +23,7 @@
 ;;; Copyright © 2023 Andrew Whatson <[email-masked]>
 ;;; Copyright © 2023 Juliana Sims <[email-masked]>
 ;;; Copyright © 2023 Maxim Cournoyer <[email-masked]>
+;;; Copyright © 2024 Skylar Hill <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1117,95 +1118,73 @@ (define-public cl-airship-scheme
 (define-public gerbil
   (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"))))
+    (version "0.18.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://github.com/mighty-gerbils/gerbil/releases/download/v"
+             version "/gerbil-v" version ".tar.gz"))
+       (sha256
+        (base32 "1dff14bzqkq6scyyhnwhc3ky96j6lr84mnghk4da0x6vifw7p0p1"))))
     (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")
+     (list
+      #:phases #~(modify-phases %standard-phases
+                   (delete 'bootstrap)
+                   (add-after 'set-paths 'set-cc
+                     (lambda _
+                       (setenv "CC"
+                               (string-append #$gcc "/bin/gcc"))))
+                   (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"))))
+                                   '("./src/std/web/rack-test.ss"
+                                     "./src/std/web/fastcgi-test.ss"
+                                     "./src/std/build.ss"
+                                     "./src/build/build-libgerbil.ss"
+                                     "./src/gerbil/test/test-build-static-exe.ss"
+                                     "./src/gerbil/test/test-build-optimized-static-exe.ss"
+                                     "./src/gerbil/test/test-build-optimized-exe.ss"
+                                     "./src/gerbil/test/test-build-exe.ss"
+                                     "./src/srfi/build.ss"
+                                     "./src/r7rs-large/build.ss"
+                                     "./src/misc/rpc-perf/build.ss"
+                                     "./src/misc/http-perf/build.ss"
+                                     "./src/misc/scripts/docsnarf.ss"
+                                     "./src/misc/scripts/docstub.ss"
+                                     "./src/misc/scripts/docsyms.ss"
+                                     "./src/tools/gxpkg.ss"
+                                     "./src/tools/build.ss"
+                                     "./src/lang/build.ss"
+                                     "./src/tutorial/kvstore/build.ss"
+                                     "./src/tutorial/httpd/build.ss"
+                                     "./src/tutorial/proxy/build.ss"
+                                     "./src/tutorial/ensemble/build.ss"
+                                     "./src/tutorial/lang/build.ss")))))
+                   (replace 'build
                      (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))
+                       (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"))))
+      #:tests? #f))
+    (native-inputs (list coreutils gcc gambit-c util-linux))
     (propagated-inputs (list gambit-c openssl sqlite zlib))
     (build-system gnu-build-system)
     (synopsis "Meta-dialect of Scheme with post-modern features")

base-commit: f6f4c71df5558b168fe7a313522af7ea5fe2d0dc
-- 
2.41.0