Skip to content

ci: bump zig 0.13→0.16 for cross-build release jobs (FreeBSD OpenSSL link) - #3

Closed
paul-hammant wants to merge 1 commit into
mainfrom
ci/zig-0.16-freebsd-cross
Closed

ci: bump zig 0.13→0.16 for cross-build release jobs (FreeBSD OpenSSL link)#3
paul-hammant wants to merge 1 commit into
mainfrom
ci/zig-0.16-freebsd-cross

Conversation

@paul-hammant

Copy link
Copy Markdown
Collaborator

Bumps the pinned Zig for the cross-build release jobs from 0.13.0 to 0.16.0.

Why

The aether toolchain's FreeBSD/tier-2 cross-link path (tools/ae_cross.c) is
written for Zig 0.16. On 0.13, a FreeBSD cross-link dies with
error: libc not available / cannot find entry symbol _start — which is what
blocks the aeo CLI's FreeBSD asset (it's the first FreeBSD-cross target that
pulls OpenSSL, via import secretsstd.cryptography). It is not actually
crypto-specific; any FreeBSD cross-link fails on 0.13. Diagnosed and fixed
upstream:

What this PR changes

  • release-aeo.yml: crossbuild toolchain path zig-linux-x86_64-0.13.0
    zig-x86_64-linux-0.16.0 (0.16 renamed the archive: arch before os).
  • release-aeo-agent.yml: same toolchain path, plus the agent job's
    self-contained fetch (ZIG_VERSION 0.13.0 → 0.16.0 and the zdir naming).

What this PR does NOT do (yet)

It does not flip build-freebsd load-bearing. continue-on-error and the
AEO_FREEBSD_MIN_AE gate stay until the aether ae_cross fix (#1930) is
released and pinnable — the two-line follow-up tracked in
asks/aeo-cli-freebsd-cross-openssl.md. This is the toolchain-pin half; the
gate-bump half lands once there's a released ae version carrying the fix.

The aether toolchain's FreeBSD/tier-2 cross-link path is written for Zig 0.16;
on 0.13 a FreeBSD cross link (the aeo CLI, which imports secrets ->
std.cryptography -> OpenSSL) dies `error: libc not available`. Matches the
bumps in aether-crossbuild (deps.lock) and aether (ae_cross.c tier-2 fix +
windows.yml). Also updates the archive name — 0.16 is zig-x86_64-linux-<ver>
(arch before os), 0.13 was zig-linux-x86_64-<ver> — in both the crossbuild
toolchain path and the agent job's self-contained fetch.

Does NOT yet flip build-freebsd load-bearing: leaving continue-on-error and the
AEO_FREEBSD_MIN_AE gate until the aether ae_cross fix is released and pinned
(tracked in asks/aeo-cli-freebsd-cross-openssl.md). This is the toolchain-pin
half.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@paul-hammant

Copy link
Copy Markdown
Collaborator Author

aeo goes straight to main — merging the branch directly instead of via PR.

@paul-hammant
paul-hammant deleted the ci/zig-0.16-freebsd-cross branch September 7, 2026 05:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant