You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit addresses multiple regressions introduced in recent changes:
1. DTB compilation regression
- DTB dependencies moved outside CC_IS_EMCC conditional
- Ensures DTB builds for system mode regardless of compiler
- Fixes mk/wasm.mk structure for cross-platform consistency
2. Makefile syntax error in mk/toolchain.mk
- Fixed TAB characters before $(warning) on lines 25, 28
- Changed to spaces for proper control flow
- This was blocking all Makefile parsing
3. emcc configuration pollution
- Added 'make distclean' before emcc builds in workflow
- Prevents ENABLE_SYSTEM=1 from leaking between builds
- Fixes "build/minimal.dtb does not exist" errors
4. Ubuntu ARM64 apt-get failures
- Implemented exponential backoff retry mechanism (30s, 60s delays)
- Added pipefail to preserve apt exit codes through tee
- Explicit APT_EXIT capture to detect masked failures
- Added InRelease to failure pattern (modern combined Release+GPG)
- Ignore non-critical dep11 metadata failures
- Focus on core package indices (Packages/Sources/Release/InRelease)
5. TSAN cross-compiler compatibility
- Added clang TSAN detection via __has_feature(thread_sanitizer)
- Previously only GCC's __SANITIZE_THREAD__ was checked
- Ensures __tsan_default_options() works with both compilers
6. TSAN cross-platform compatibility
- Guarded setarch with ifeq ($(UNAME_S),Linux) in Makefile
- setarch doesn't exist on macOS, now conditionally applied
- macOS TSAN builds require SIP disabled for ASLR control
7. Trace functionality regression
- Reverted .log_level from LOG_INFO back to LOG_TRACE
- LOG_INFO suppressed rv_log_trace() stream used by -t flag
- Restores instruction trace output for debugging
0 commit comments