guile-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Guile-commits] 02/02: guix: Run one cross-compilation build out-of-tree


From: Ludovic Courtès
Subject: [Guile-commits] 02/02: guix: Run one cross-compilation build out-of-tree.
Date: Tue, 16 Jul 2024 18:03:44 -0400 (EDT)

civodul pushed a commit to branch main
in repository guile.

commit 15a656a77af42dd8e1b55a83b76e9069eb4dc1d6
Author: Ludovic Courtès <ludo@gnu.org>
AuthorDate: Wed Jul 17 00:02:24 2024 +0200

    guix: Run one cross-compilation build out-of-tree.
    
    * .guix/manifest.scm (out-of-source-tree): New procedure.
    (cross-builds): Use it.
---
 .guix/manifest.scm | 19 ++++++++++++++++---
 1 file changed, 16 insertions(+), 3 deletions(-)

diff --git a/.guix/manifest.scm b/.guix/manifest.scm
index 0a25b2925..e78fa50ce 100644
--- a/.guix/manifest.scm
+++ b/.guix/manifest.scm
@@ -1,4 +1,4 @@
-;;; Copyright © 2023 Free Software Foundation, Inc.
+;;; Copyright © 2023-2024 Free Software Foundation, Inc.
 ;;;
 ;;; This file is part of GNU Guile.
 ;;;
@@ -20,6 +20,7 @@
 
 (use-modules (guix)
              (guix profiles)
+             (guix utils)
              (guile-package))
 
 (define* (package->manifest-entry* package system
@@ -58,11 +59,23 @@ TARGET."
                             guile-debug
                             guile-strict-typing))))))
 
+(define (out-of-source-tree p)
+  "Return P built out of its source tree."
+  (package
+    (inherit p)
+    (arguments (substitute-keyword-arguments (package-arguments p)
+                 ((#:out-of-source? _ #f) #t)))))
+
 (define cross-builds
   (manifest
    (map (lambda (target)
-          (package->manifest-entry* guile "x86_64-linux"
-                                    #:target target))
+          ;; For testing purposes, build one of them out-of-tree.
+          (let ((transform (if (string-prefix? "aarch64" target)
+                               out-of-source-tree
+                               identity)))
+            (package->manifest-entry* (transform guile)
+                                      "x86_64-linux"
+                                      #:target target)))
         '("i586-pc-gnu"
           ;; "arm-linux-gnueabihf"
           "aarch64-linux-gnu"



reply via email to

[Prev in Thread] Current Thread [Next in Thread]