ASan toolchains
ASan-enabled OpenIPC toolchains.
The stock toolchains in the toolchain
release are built without --enable-libsanitizer. On the musl targets that
means there is no libasan.so at all — nothing to link an instrumented binary
against, and nothing to deploy beside it on the camera. These are the same
toolchains built with the sanitizer runtime enabled.
They are consumed automatically: majestic's build.sh downloads the -asan
variant instead of the stock one for any non-Release build, so
scripts/asan.sh smoke --host <camera> just works on a board listed here.
See docs/asan.md in majestic.
A toolchain here means the sanitizer has been proven on that hardware — not
merely that gcc built. scripts/asan.sh smoke plants a known leak and fails
unless LeakSanitizer reports it, because a clean LSan result and an LSan that
never ran look identical.
| Artefact | Target | Notes |
|---|---|---|
toolchain.ingenic-t31-asan.tgz |
mipsel o32 musl — t20, t21, t23, t31 | Carries the six libsanitizer fixes from #2312. Without them ASan hangs before main(), or runs and reports nothing. |
Built by the toolchain-asan workflow, which verifies the patches applied to
the gcc version Buildroot actually selected before it uploads —
general/scripts/verify-asan-toolchain.sh runs the same checks locally.