mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 03:40:34 +02:00
guix: Run one cross-compilation build out-of-tree.
* .guix/manifest.scm (out-of-source-tree): New procedure. (cross-builds): Use it.
This commit is contained in:
parent
c117f8edc4
commit
15a656a77a
1 changed files with 16 additions and 3 deletions
|
@ -1,4 +1,4 @@
|
||||||
;;; Copyright © 2023 Free Software Foundation, Inc.
|
;;; Copyright © 2023-2024 Free Software Foundation, Inc.
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guile.
|
;;; This file is part of GNU Guile.
|
||||||
;;;
|
;;;
|
||||||
|
@ -20,6 +20,7 @@
|
||||||
|
|
||||||
(use-modules (guix)
|
(use-modules (guix)
|
||||||
(guix profiles)
|
(guix profiles)
|
||||||
|
(guix utils)
|
||||||
(guile-package))
|
(guile-package))
|
||||||
|
|
||||||
(define* (package->manifest-entry* package system
|
(define* (package->manifest-entry* package system
|
||||||
|
@ -58,11 +59,23 @@ TARGET."
|
||||||
guile-debug
|
guile-debug
|
||||||
guile-strict-typing))))))
|
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
|
(define cross-builds
|
||||||
(manifest
|
(manifest
|
||||||
(map (lambda (target)
|
(map (lambda (target)
|
||||||
(package->manifest-entry* guile "x86_64-linux"
|
;; For testing purposes, build one of them out-of-tree.
|
||||||
#:target target))
|
(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"
|
'("i586-pc-gnu"
|
||||||
;; "arm-linux-gnueabihf"
|
;; "arm-linux-gnueabihf"
|
||||||
"aarch64-linux-gnu"
|
"aarch64-linux-gnu"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue