Subject: [PATCH] guix: packages: Add %32bit-supported-systems, %64bit-supported-systems.
From: Efraim Flashner <[email-masked]>
To: [email-masked]
Cc: Efraim Flashner <[email-masked]>
Date: Tue, 22 Feb 2022 13:14:43 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

* guix/packages.scm (%32bit-supported-systems,
%64bit-supported-systems): New variables.
(%supported-systems): Rewrite using %32bit-supported-systems,
%64bit-supported-systems.
---

This allows us to do things like declare a package only supports 64-bit
architectures, by adding:
(supported-systems %64bit-supported-systems)
instead of enumerating them specifically or removing them specifically.

 guix/packages.scm | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/guix/packages.scm b/guix/packages.scm
index 3f0262602d..e2a5a58b8d 100644
--- a/guix/packages.scm
+++ b/guix/packages.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2014, 2015, 2017, 2018, 2019 Mark H Weaver <[email-masked]>
 ;;; Copyright © 2015 Eric Bavier <[email-masked]>
 ;;; Copyright © 2016 Alex Kost <[email-masked]>
-;;; Copyright © 2017, 2019, 2020 Efraim Flashner <[email-masked]>
+;;; Copyright © 2017, 2019, 2020, 2022 Efraim Flashner <[email-masked]>
 ;;; Copyright © 2019 Marius Bakke <[email-masked]>
 ;;; Copyright © 2020, 2021 Maxim Cournoyer <[email-masked]>
 ;;; Copyright © 2021 Chris Marusich <[email-masked]>
@@ -148,6 +148,8 @@ (define-module (guix packages)
 
             transitive-input-references
 
+            %32bit-supported-systems
+            %64bit-supported-systems
             %supported-systems
             %hurd-systems
             %cuirass-supported-systems
@@ -391,11 +393,19 @@ (define* (computed-origin-method gexp-promise hash-algo hash
                       #:guile-for-build guile)))
 
 
+(define %32bit-supported-systems
+  ;; This is the list of 32-bit system types that are supported.
+  '("i686-linux" "armhf-linux" "i586-gnu" "powerpc-linux"))
+
+(define %64bit-supported-systems
+  ;; This is the list of 64-bit system types that are supported.
+  '("x86_64-linux" "mips64el-linux" "aarch64-lixux" "powerpc64le-linux"
+    "riscv64-linux"))
+
 (define %supported-systems
   ;; This is the list of system types that are supported.  By default, we
   ;; expect all packages to build successfully here.
-  '("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux" "mips64el-linux" "i586-gnu"
-    "powerpc64le-linux" "powerpc-linux" "riscv64-linux"))
+  (append %32bit-supported-systems %64bit-supported-systems))
 
 (define %hurd-systems
   ;; The GNU/Hurd systems for which support is being developed.

base-commit: e4779e061056b1a3a3ab56ef817353d86c482611
-- 
2.34.0