Open
Description
Here's the issue to track FreeBSD support.
History:
- @tiehuis started an initial
freebsd
branch. - @myfreeweb picked up the figurative baton in [WIP] FreeBSD support #1661 and that work is merged into
freebsd2
branch.- See this PR description and comments for some useful information.
- I believe the current state of this branch is that the tests pass in debug mode but not release mode. I haven't personally tried it yet.
freebsd2
is now merged into master, and FreeBSD has Tier 2 Support status.
Checklist:
- switch to using libc as the stable kernel ABI for freebsd. citation
- Bus error on simple code #1217 Bus error on simple code
- get all the tests passing for freebsd.
- reduce stage1 memory to within sr.ht limits, so that CI tests can pass (FreeBSD CI tests disabled due to using more memory than sr.ht provides #3210)
- (@andrewrk) audit the
freebsd2
branch - CI for FreeBSD. We actually have a few options:
- get my raspberry pi (aarch64) hooked up to the CI somehow
- use https://builds.sr.ht/ which has freebsd x86_64 support
- on azure dev ops, use qemu and a custom freebsd image as demonstrated by @andrewchambers in Openbsd ci #941 (although this was for openbsd not freebsd). This should be possible because we get a full 6 hours to run the tests with azure dev ops.
- make sure stack traces are working
- audit the structs of
std/os/freebsd.zig
to make sure the ABIs are correct and match the system header files. - add FreeBSD libc as a cross compilation target #2876 Solve cross compilation when targeting FreeBSD
Once this is complete, we can mark FreeBSD x86_64 as having Tier 1 support.