hako pushed a commit to branch wip-zig-bootstrap
in repository guix.
commit 37d87b37c0c359ec5e70b6ee7d99cf9f880dbee7
Author: Hilton Chain <[email protected]>
AuthorDate: Mon Nov 11 19:19:26 2024 +0800
gnu: Add zig-0.12.
* gnu/packages/zig.scm (zig-0.12): New variable.
Change-Id: I700d0afa2b373bf24a4f3527548e86dbed1aff17
---
gnu/packages/zig.scm | 43 +++++++++++++++++++++++++++++++++++++++++++
1 file changed, 43 insertions(+)
diff --git a/gnu/packages/zig.scm b/gnu/packages/zig.scm
index 929aa6c686..e3e43b11ba 100644
--- a/gnu/packages/zig.scm
+++ b/gnu/packages/zig.scm
@@ -1391,4 +1391,47 @@ toolchain. Among other features it provides
(modify-inputs (package-native-inputs base)
(replace "zig" `(,base "out")))))))
+(define-public zig-0.12
+ (package
+ (inherit zig-0.11)
+ (name "zig")
+ (version "0.12.1")
+ (source
+ (origin
+ (inherit (zig-source
+ version version
+ "0ssgfrsk116p16rwjwq1z2pvvcdij6s30s19bhzjms7maz4s77hb"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (delete-file "stage1/zig1.wasm")
+ ;; Fix RUNPATH.
+ (substitute* "build.zig"
+ (("path_unpadded }\\);" all)
+ (string-append all "
+ exe.addRPath(.{
+ .cwd_relative = path_unpadded[0 .. path_unpadded.len - 1 - objname.len]
+ });")))))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments zig-0.11)
+ ((#:phases phases '%standard-phases)
+ #~(modify-phases #$phases
+ (replace 'patch-more-shebangs
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Zig uses information about /usr/bin/env to determine the
+ ;; version of glibc and other data.
+ (substitute* "lib/std/zig/system.zig"
+ (("/usr/bin/env")
+ (search-input-file inputs "/bin/env")))))))))
+ (inputs
+ (modify-inputs (package-inputs zig-0.11)
+ (replace "clang" clang-17)
+ (replace "lld" lld-17)))
+ (native-inputs
+ (modify-inputs (package-native-inputs zig-0.11)
+ (replace "llvm" llvm-17)
+ (replace "zig" `(,zig-0.11.0-3604 "zig1"))))
+ (properties `((max-silent-time . 9600)
+ ,@(clang-compiler-cpu-architectures "17")))))
+
(define-public zig zig-0.10)