some notes/progress: (1) we are now building a zig binary deb on amd64 that passes most lintian checks, and appears to contain a working zig.
most recent lintian check output: ------------------------ $ lintian --suppress-tags "${SALSA_CI_LINTIAN_SUPPRESS_TAGS}" --display-info --pedantic ${SALSA_CI_LINTIAN_FAIL_ARG} --allow-root ${SALSA_CI_LINTIAN_SHOW_OVERRIDES_ARG} ${SALSA_CI_LINTIAN_ARGS} ${WORKING_DIR}/*.changes | tee lintian.output || ECODE=$? 39 W: zig source: missing-license-paragraph-in-dep5-copyright expat [debian/copyright:37] 40 W: zig: useless-whatis-entry [usr/share/man/man1/zig.1.gz] 41 I: zig source: file-contains-fixme-placeholder FIXME [debian/copyright:10] 42 I: zig source: file-contains-fixme-placeholder FIXME [debian/copyright:9] 43 I: zig: spelling-error-in-binary independant independent [usr/bin/zig] 44 I: zig: spelling-error-in-binary psuedo pseudo [usr/bin/zig] 45 I: zig: spelling-error-in-binary wTH with [usr/bin/zig] ------------------------ (2) i need to make it architecture-independent -- there are currently two hardcoded x86_64-specific paths. (3) there's a second binary file involved (beyond zig1.wasm): msdos-stub.bin. unlike the WASM, there does not appear to be any way to build this from sources available in the source package, so it will probably have to come out. it's only used in the COFF linking code, so that capability will probably be excised. i've mailed the upstream author asking for clarification here. (4) we're generating a (crappy) man page using help2man. (5) we're targeting llvm-18 currently. i'd like to target llvm-20 but it's not a pressing issue. (6) i've started on the work to support minisign in devscripts. it might be a small political battle to get this code included, but hopefully not. (7) i believe there to be a large test suite for zig, but if so, we're definitely not yet running it. i'd like to have this. (8) i had to rollback two exclusions to get things compiling: lib/include and lib/libunwind. i'd like to get rid of these if possible, but i'm unsure about libunwind (i think zig might require this specific copy? unsure). if we have to keep libunwind, i think we can still yeet lib/include via symlinks from /usr/include prior to the build step. (9) the BLHC (build log hardening check) salsa DI step is bitching at us. not yet sure if it's right in doing so. (a) jonathan carter mentioned wanting this by the end of the month; i think that's looking very doable.