hako pushed a commit to branch wip-zig-bootstrap
in repository guix.

commit 49ec722329ebd2c067af5049f037bf2a5236d84f
Author: Hilton Chain <hako@ultrarare.space>
AuthorDate: Mon Nov 11 11:03:48 2024 +0800

    gnu: Add zig-0.10.0-1073.
    
    * gnu/packages/zig.scm (zig-0.10.0-1073,%arguments-zig1+zig2): New 
variables.
    
    Change-Id: I717229da04fd90b73a3730ed30f92367ea5b5da4
---
 gnu/packages/zig.scm | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)

diff --git a/gnu/packages/zig.scm b/gnu/packages/zig.scm
index 6a0a318428..6587569e93 100644
--- a/gnu/packages/zig.scm
+++ b/gnu/packages/zig.scm
@@ -608,4 +608,40 @@ toolchain.  Among other features it provides
        (modify-inputs (package-native-inputs base)
          (replace "zig" `(,base "zig1")))))))
 
+(define-public zig-0.10.0-1073
+  (let ((commit "4c1007fc044689b8cbc20634d73debb43df8efe1")
+        (revision "1073")
+        (base zig-0.10.0-1027))
+    (package
+      (inherit base)
+      (name "zig")
+      (version (git-version "0.10.0" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/ziglang/zig";)
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "1mgvi3m2aph10c1ij9b4k6xs3jbp8hbswqgdnzxdi5y0ak7h1pd4"))
+                (snippet '(delete-file "stage1/zig1.wasm"))))
+      (arguments
+       (substitute-keyword-arguments %arguments-zig2
+         ((#:phases phases '%standard-phases)
+          #~(modify-phases #$phases
+              (add-before 'build 'build-zig1
+                (lambda _
+                  (invoke "zig2" "build" "--zig-lib-dir" "lib"
+                          "update-zig1" "--verbose")))
+              (delete 'prepare-source)))))
+      (native-inputs
+       (modify-inputs (package-native-inputs base)
+         (replace "zig" `(,base "out")))))))
+
+;; Build zig1.wasm with supplied zig2.  Bootstrap with this zig1.wasm and
+;; build zig2.
+(define %arguments-zig1+zig2
+  (package-arguments zig-0.10.0-1073))
+
 (define-public zig zig-0.10)

Reply via email to