[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#41074] [PATCH] gnu: qemu-minimal: Only build for the host's archite
From: |
Efraim Flashner |
Subject: |
[bug#41074] [PATCH] gnu: qemu-minimal: Only build for the host's architecture. |
Date: |
Mon, 4 May 2020 13:25:15 +0300 |
* gnu/packages/virtualization.scm (qemu-minimal)[arguments]: Adjust
configure-flags so that each architecture only builds for its native
architectures.
[synopsis]: Adjust to clarify it's only for the host's architecture.
---
I tested this with building grub and a vm-image and both seem to have
worked without any regressions.
---
gnu/packages/virtualization.scm | 31 +++++++++++++++++++++++++------
1 file changed, 25 insertions(+), 6 deletions(-)
diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index b9ac18820f..e5d678e685 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2020 Ludovic Courtès
<address@hidden>
;;; Copyright © 2015, 2016, 2017, 2018 Mark H Weaver <address@hidden>
-;;; Copyright © 2016, 2017, 2018. 2019 Efraim Flashner <address@hidden>
+;;; Copyright © 2016, 2017, 2018. 2019, 2020 Efraim Flashner <address@hidden>
;;; Copyright © 2016, 2017 Ricardo Wurmus <address@hidden>
;;; Copyright © 2017 Alex Vong <address@hidden>
;;; Copyright © 2017 Andy Patterson <address@hidden>
@@ -99,7 +99,8 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix utils)
- #:use-module (srfi srfi-1))
+ #:use-module (srfi srfi-1)
+ #:use-module (ice-9 match))
(define (qemu-patch commit file-name sha256)
"Return an origin for COMMIT."
@@ -274,15 +275,33 @@ server and embedded PowerPC, and S390 guests.")
(supported-systems (delete "mips64el-linux" %supported-systems))))
(define-public qemu-minimal
- ;; QEMU without GUI support.
+ ;; QEMU without GUI support, only supporting the host's architecture
(package (inherit qemu)
(name "qemu-minimal")
- (synopsis "Machine emulator and virtualizer (without GUI)")
+ (synopsis
+ "Machine emulator and virtualizer (without GUI) for the host
architecture")
(arguments
(substitute-keyword-arguments (package-arguments qemu)
((#:configure-flags _ '(list))
- ;; Restrict to the targets supported by Guix.
-
''("--target-list=i386-softmmu,x86_64-softmmu,mips64el-softmmu,arm-softmmu,aarch64-softmmu"))))
+ ;; Restrict to the host's architecture.
+ `(,@(match (or (%current-system)
+ (%current-target-system))
+ ("x86-64-linux"
+ ''("--target-list=i386-softmmu,x86_64-softmmu"))
+ ("i686-linux"
+ ''("--target-list=i386-softmmu"))
+ ("mips64el-linux"
+ ''("--target-list=mips64el-softmmu"))
+ ("aarch64-linux"
+ ''("--target-list=arm-softmmu,aarch64-softmmu"))
+ ("armhf-linux"
+ ''("--target-list=arm-softmmu"))
+ ((or "powerpc64-linux" "powerpc64le-linux")
+ ''("--target-list=ppc-softmmu,ppc64-softmmu"))
+ ("powerpc-linux"
+ ''("--target-list=ppc-softmmu"))
+ (_ ; An empty list actually builds all the targets.
+ ''()))))))
;; Remove dependencies on optional libraries, notably GUI libraries.
(native-inputs (fold alist-delete (package-native-inputs qemu)
--
2.26.2
- [bug#41074] [PATCH] gnu: qemu-minimal: Only build for the host's architecture.,
Efraim Flashner <=