diff mbox series

[bug#55591] WIP: fix the linux build system

Message ID 20220523083332.21626-1-mail@cbaines.net
State Accepted
Headers show
Series [bug#55591] WIP: fix the linux build system | expand

Checks

Context Check Description
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue

Commit Message

Christopher Baines May 23, 2022, 8:33 a.m. UTC
---
 gnu/platform.scm                   | 6 +++++-
 guix/build-system/linux-module.scm | 3 ++-
 2 files changed, 7 insertions(+), 2 deletions(-)

Comments

Liliana Marie Prikler May 24, 2022, 7:09 a.m. UTC | #1
Am Montag, dem 23.05.2022 um 09:33 +0100 schrieb Christopher Baines:
> ---
>  gnu/platform.scm                   | 6 +++++-
>  guix/build-system/linux-module.scm | 3 ++-
>  2 files changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/gnu/platform.scm b/gnu/platform.scm
> index fdc3685e7c..91a1854e68 100644
> --- a/gnu/platform.scm
> +++ b/gnu/platform.scm
> @@ -66,10 +66,14 @@ (define-record-type* <platform> platform make-
> platform
>    platform?
>    (target               platform-target)
>    (system               platform-system)
> -  (linux-architecture   platform-linux-architecture
> +  (linux-architecture   platform-linux-architecture*
>                          (default #f))
>    (glibc-dynamic-linker platform-glibc-dynamic-linker))
>  
> +;; Provide a procedure so this can be used via module-ref
> +(define (platform-linux-architecture platform)
> +  (platform-linux-architecture* platform))
> +
I'd use a percent prefix if the problem is that platform-linux-
architecture can not be called.

>  ;;;
>  ;;; Platforms.
> diff --git a/guix/build-system/linux-module.scm b/guix/build-
> system/linux-module.scm
> index 761ebe25b1..78a3ba95b2 100644
> --- a/guix/build-system/linux-module.scm
> +++ b/guix/build-system/linux-module.scm
> @@ -51,7 +51,8 @@ (define (default-linux)
>  
>  (define (system->arch system)
>    (let ((module (resolve-interface '(gnu platform))))
> -    ((module-ref module 'lookup-platform-by-target-or-system)
> system)))
> +    ((module-ref module 'platform-linux-architecture)
> +     ((module-ref module 'lookup-platform-by-target-or-system)
> system))))
Why not add a helper function named lookup-platform-architecture-by-
target-or-system to (gnu platform), which performs the lookup followed
by the platform-linux-architecture accessor?

Cheers
Mathieu Othacehe May 25, 2022, 7:37 a.m. UTC | #2
Hello Chris,

> +;; Provide a procedure so this can be used via module-ref
> +(define (platform-linux-architecture platform)
> +  (platform-linux-architecture* platform))

Thanks for the patch! I guess it could have been a way to fix the
issue. Josselin proposed to move the platform part to (guix platform)
instead in the merged 55602 ticket.

Closing that one as it is not needed anymore.

Thanks,

Mathieu
diff mbox series

Patch

diff --git a/gnu/platform.scm b/gnu/platform.scm
index fdc3685e7c..91a1854e68 100644
--- a/gnu/platform.scm
+++ b/gnu/platform.scm
@@ -66,10 +66,14 @@  (define-record-type* <platform> platform make-platform
   platform?
   (target               platform-target)
   (system               platform-system)
-  (linux-architecture   platform-linux-architecture
+  (linux-architecture   platform-linux-architecture*
                         (default #f))
   (glibc-dynamic-linker platform-glibc-dynamic-linker))
 
+;; Provide a procedure so this can be used via module-ref
+(define (platform-linux-architecture platform)
+  (platform-linux-architecture* platform))
+
 
 ;;;
 ;;; Platforms.
diff --git a/guix/build-system/linux-module.scm b/guix/build-system/linux-module.scm
index 761ebe25b1..78a3ba95b2 100644
--- a/guix/build-system/linux-module.scm
+++ b/guix/build-system/linux-module.scm
@@ -51,7 +51,8 @@  (define (default-linux)
 
 (define (system->arch system)
   (let ((module (resolve-interface '(gnu platform))))
-    ((module-ref module 'lookup-platform-by-target-or-system) system)))
+    ((module-ref module 'platform-linux-architecture)
+     ((module-ref module 'lookup-platform-by-target-or-system) system))))
 
 (define (make-linux-module-builder linux)
   (package