GNU bug report logs - #67075
[PATCH] build: zig-build-system: Add CPU option

Previous Next

Package: guix-patches;

Reported by: Ekaitz Zarraga <ekaitz <at> elenq.tech>

Date: Sat, 11 Nov 2023 13:11:02 UTC

Severity: normal

Tags: patch

Done: Efraim Flashner <efraim <at> flashner.co.il>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Efraim Flashner <efraim <at> flashner.co.il>
To: Ekaitz Zarraga <ekaitz <at> elenq.tech>
Cc: 67075 <at> debbugs.gnu.org
Subject: [bug#67075] [PATCH] build: zig-build-system: Add CPU option
Date: Sun, 12 Nov 2023 16:38:58 +0200
[Message part 1 (text/plain, inline)]
What are the values that the compiler can take for this flag?  Also,
this seems like something that can be addressed with the tuning
mechanism, so we can run 'guix build foo --tune' and it'll do The Right
Thing™.

Alternatively, if we do go this route, you still need to update the
documentation.

On Sat, Nov 11, 2023 at 01:09:07PM +0000, Ekaitz Zarraga wrote:
> From a647a8ee689022cafef4bab05784b32b1c97bee7 Mon Sep 17 00:00:00 2001
> Message-ID: <a647a8ee689022cafef4bab05784b32b1c97bee7.1699708101.git.ekaitz <at> elenq.tech>
> From: Ekaitz Zarraga <ekaitz <at> elenq.tech>
> Date: Sat, 11 Nov 2023 14:05:23 +0100
> Subject: [PATCH] build: zig-build-system: Add CPU option
> 
> Zig packages are optimized by default, adding `-Dcpu=baseline` to the
> build command builds them for an standard cpu that should work in every
> machine.
> 
> This change sets that by default but also allows users to choose their
> cpu by the `#:zig-cpu` argument.
> 
> * guix/build-system/zig.scm (build): add zig-cpu
> * guix/build/zig-build-system.scm (zig-build) add zig-cpu
> 
> Change-Id: Ib4b2124179e7b5492e7c77c64e1f8336832032ea
> ---
>  guix/build-system/zig.scm       | 2 ++
>  guix/build/zig-build-system.scm | 2 ++
>  2 files changed, 4 insertions(+)
> 
> diff --git a/guix/build-system/zig.scm b/guix/build-system/zig.scm
> index 16b8a712cc..f90e76104e 100644
> --- a/guix/build-system/zig.scm
> +++ b/guix/build-system/zig.scm
> @@ -47,6 +47,7 @@ (define* (zig-build name inputs
>                      source
>                      (tests? #t)
>                      (test-target #f)
> +                    (zig-cpu #f)
>                      (zig-build-flags ''())
>                      (zig-test-flags ''())
>                      (zig-release-type #f)
> @@ -67,6 +68,7 @@ (define* (zig-build name inputs
>                       #:source #+source
>                       #:system #$system
>                       #:test-target #$test-target
> +                     #:zig-cpu #$zig-cpu
>                       #:zig-build-flags #$zig-build-flags
>                       #:zig-test-flags #$zig-test-flags
>                       #:zig-release-type #$zig-release-type
> diff --git a/guix/build/zig-build-system.scm b/guix/build/zig-build-system.scm
> index d414ebfb17..99a81314d4 100644
> --- a/guix/build/zig-build-system.scm
> +++ b/guix/build/zig-build-system.scm
> @@ -44,6 +44,7 @@ (define* (set-zig-global-cache-dir #:rest args)
>    (setenv "ZIG_GLOBAL_CACHE_DIR" global-cache-dir))
>  
>  (define* (build #:key
> +                zig-cpu
>                  zig-build-flags
>                  zig-release-type       ;; "safe", "fast" or "small" empty for a
>                                         ;; debug build"
> @@ -59,6 +60,7 @@ (define* (build #:key
>                       ,@(if zig-release-type
>                           (list (string-append "-Drelease-" zig-release-type))
>                           '())
> +                     ,(string-append "-Dcpu=" (or zig-cpu "baseline"))
>                       ,@zig-build-flags)))
>    (format #t "running: ~s~%" call)
>    (apply invoke call)))
> 
> base-commit: af6105afc67a15a491a0a4fd18a28c9f801a0b94
> -- 
> 2.41.0
> 
> 
> 
> 
> 

-- 
Efraim Flashner   <efraim <at> flashner.co.il>   רנשלפ םירפא
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[signature.asc (application/pgp-signature, inline)]

This bug report was last modified 1 year and 176 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.