GNU bug report logs - #55248
[PATCH 0/7] gnu: Update Racket to 8.5 and Chez Scheme to 9.5.8.

Previous Next

Package: guix-patches;

Reported by: Philip McGrath <philip <at> philipmcgrath.com>

Date: Tue, 3 May 2022 18:32:01 UTC

Severity: normal

Tags: patch

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Philip McGrath <philip <at> philipmcgrath.com>
To: 55248 <at> debbugs.gnu.org
Cc: Liliana Marie Prikler <liliana.prikler <at> ist.tugraz.at>, Maxime Devos <maximedevos <at> telenet.be>, Philip McGrath <philip <at> philipmcgrath.com>, Liliana Marie Prikler <liliana.prikler <at> gmail.com>
Subject: [bug#55248] [PATCH v2 2/9] gnu: racket: Fix out-of-source build.
Date: Sun,  8 May 2022 16:07:45 -0400
* gnu/packages/racket.scm (racket-vm-cgc)[arguments]: Add phase
'symlink-license-src' to work around limitation in
'install-license-files'. Supply '#:out-of-source? #t'.
---
 gnu/packages/racket.scm | 18 +++++++++++++++---
 1 file changed, 15 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/racket.scm b/gnu/packages/racket.scm
index 7d51707156..904dfe9bef 100644
--- a/gnu/packages/racket.scm
+++ b/gnu/packages/racket.scm
@@ -276,8 +276,9 @@ (define-public racket-vm-cgc
        ;; main-distribution-test that aren't part of the main
        ;; distribution.
        #:tests? #f
-       ;; Upstream recommends #:out-of-source?, and it does
-       ;; help with debugging, but it confuses `install-license-files`.
+       ;; Upstream recommends #:out-of-source?, and it
+       ;; helps a lot with debugging.
+       #:out-of-source? #t
        #:modules '((ice-9 match)
                    (ice-9 regex)
                    (guix build gnu-build-system)
@@ -314,7 +315,18 @@ (define-public racket-vm-cgc
                                 #f)))))))
            (add-before 'configure 'chdir
              (lambda _
-               (chdir "racket/src"))))))
+               (chdir "racket/src")))
+           (add-after 'chdir 'symlink-license-src
+             ;; Work around limitation of install-license-files by symlinking
+             ;; srcdir where it expects.  (It doesn't handle this variant of
+             ;; #:out-of-source? and a subdirectory for srcdir.)  Just running
+             ;; `make install` only puts them in Racket's 'share-dir'.
+             (lambda* (#:key out-of-source? #:allow-other-keys)
+               (when out-of-source?
+                 (with-directory-excursion ".."
+                   (symlink "src"
+                            (package-name->name+version
+                             (strip-store-file-name #$output))))))))))
      (home-page "https://racket-lang.org")
      (synopsis "Old Racket implementation used for bootstrapping")
      (description "This variant of the Racket BC (``before Chez'' or
-- 
2.32.0





This bug report was last modified 3 years and 12 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.