Skip to content

Commit 9c02652

Browse files
Bump to Zig 0.14.0 and use Zig wheels (#192)
1 parent 76919bc commit 9c02652

File tree

4 files changed

+8
-19
lines changed

4 files changed

+8
-19
lines changed

.github/workflows/cd.yml

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -93,11 +93,6 @@ jobs:
9393
cache: false
9494
check-latest: true
9595

96-
- uses: mlugg/setup-zig@a67e68dc5c8281d9608136d3d7ca1b282213e4ac # v1.2.1
97-
with:
98-
version: 0.13.0
99-
use-cache: false
100-
10196
- name: Build binary distribution (wheel) on Windows (arm64)
10297
# We need to use cibuildwheel because it has experimental support for cross-compiling
10398
# to arm64 and setup-python does not have arm64 support on Windows right now
@@ -138,11 +133,6 @@ jobs:
138133
go-version: "1.24.0"
139134
cache: false
140135

141-
- uses: mlugg/setup-zig@a67e68dc5c8281d9608136d3d7ca1b282213e4ac # v1.2.1
142-
with:
143-
version: 0.13.0
144-
use-cache: false
145-
146136
# Note: cibuildwheel will manage installing 32-bit Python on Windows. We
147137
# do not need to do that manually unless we use setup-python instead.
148138
- name: Build binary distribution (wheel) on Windows (i686)

.github/workflows/ci.yml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -126,11 +126,6 @@ jobs:
126126
cache: false
127127
check-latest: true
128128

129-
- uses: mlugg/setup-zig@a67e68dc5c8281d9608136d3d7ca1b282213e4ac # v1.2.1
130-
with:
131-
version: 0.13.0
132-
use-cache: false
133-
134129
- name: Restore Hugo builder cache
135130
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
136131
with:

pyproject.toml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
[build-system]
22
requires = [
33
"setuptools>=77.0.3",
4-
# s390x and ppc64le wheels are not yet available
5-
"ziglang==0.13.0; platform_machine != 's390x' and platform_machine != 'ppc64le'",
4+
# linux s390x and windows arm64 wheels are not yet available
5+
"ziglang==0.14.0; platform_machine != 's390x'",
6+
"ziglang==0.14.0; sys_platform != 'win32' or platform_machine != 'arm64'",
67
]
78
build-backend = "setuptools.build_meta"
89

setup.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -204,8 +204,11 @@ def _setup_zig_compiler(self):
204204

205205
zig_target = zig_target_map.get((goos, goarch))
206206
if zig_target:
207-
os.environ["CC"] = f"zig cc -target {zig_target}"
208-
os.environ["CXX"] = f"zig c++ -target {zig_target}"
207+
os.environ["CC"] = f"{sys.executable} -m ziglang cc -target {zig_target}"
208+
os.environ["CXX"] = f"{sys.executable} -m ziglang c++ -target {zig_target}"
209+
if zig_target == "x86-windows-gnu":
210+
os.environ["CC"] += " -w"
211+
os.environ["CXX"] += " -w"
209212
# Add additional flags to the linker to ensure that the binary is
210213
# stripped of debug information and is as small as possible for release
211214
os.environ["CGO_CFLAGS"] = "-g0 -O3 -ffunction-sections -fdata-sections"

0 commit comments

Comments
 (0)