From 59ce6699bc5ccd0297256450b95a2244d810e1bd Mon Sep 17 00:00:00 2001 From: Wildan M Date: Mon, 22 Dec 2025 09:18:33 +0700 Subject: [PATCH] Update zig to compile stage3 --- recipes/wip/dev/lang/zig/recipe.toml | 58 ++++++++++++++++++++++------ 1 file changed, 47 insertions(+), 11 deletions(-) diff --git a/recipes/wip/dev/lang/zig/recipe.toml b/recipes/wip/dev/lang/zig/recipe.toml index 5c9d26f7e..d247daabf 100644 --- a/recipes/wip/dev/lang/zig/recipe.toml +++ b/recipes/wip/dev/lang/zig/recipe.toml @@ -1,22 +1,58 @@ #TODO compiling, not tested further [source] git = "https://github.com/willnode/zig" -branch = "zig-0.15-redox" +branch = "zig-0.15.2-redox" [build] template = "custom" +dependencies = [ + "llvm21", + "zstd" +] + +dev-dependencies = [ + "llvm21.dev", + "llvm21.runtime", + "llvm21.clang", + "llvm21.clang-dev", + "llvm21.lld-dev", + "llvm21.lld", + "host:libarchive", + "host:zig", +] + script = """ DYNAMIC_INIT -rsync -av --delete "${COOKBOOK_SOURCE}"/* ./ +rsync -a "${COOKBOOK_SOURCE}"/* ./ +export PATH="${COOKBOOK_BUILD}:${PATH}" -export ZIG_HOST_TARGET_CFLAGS="$CFLAGS" -export ZIG_HOST_TARGET_LDFLAGS="$LDFLAGS" -export ZIG_HOST_TARGET_CC="${TARGET}-gcc" -export ZIG_HOST_TARGET_TRIPLE="${TARGET%%-*}-redox" -unset AR AS CC CXX LD LDFLAGS NM OBJCOPY OBJDUMP RANLIB READELF RUSTFLAGS STRIP -cc bootstrap.c -o ./bootstrap -./bootstrap +mkdir -p "${COOKBOOK_STAGE}"/usr/lib/zig "${COOKBOOK_STAGE}"/usr/bin +ln -s "../lib/zig/bin/zig" "${COOKBOOK_STAGE}"/usr/bin/zig -mkdir -p "${COOKBOOK_STAGE}"/usr/bin -cp ./zig2 "${COOKBOOK_STAGE}"/usr/bin/zig +if [ "$TARGET" != "$COOKBOOK_HOST_TARGET" ]; then + +ARCH="${GNU_TARGET%%-*}" +OS=$(echo "${TARGET}" | cut -d - -f3-4) + +zig build \ + --prefix "${COOKBOOK_STAGE}/usr/lib/zig" \ + --search-prefix "${COOKBOOK_SYSROOT}/usr" \ + -Dflat \ + -Dstatic-llvm \ + -Doptimize=ReleaseFast \ + -Dstrip \ + -Dforce-link-libc \ + -Dtarget="$ARCH-$OS" \ + -Dcpu="baseline" \ + -Dversion-string="0.15.2" \ + -Duse-zig-libcxx \ + -Dno-langref + +else + +COOKBOOK_SOURCE="${COOKBOOK_BUILD}" +COOKBOOK_STAGE="${COOKBOOK_STAGE}/usr/lib/zig" +cookbook_cmake -DCMAKE_INSTALL_PREFIX=/ + +fi """