Files
Ryan VanderMeulen 0b38800ba7 Bug 2043477 - Update wasi-sdk toolchain to v34. r=firefox-build-system-reviewers,ahochheiden
wasi-sdk builds its sysroot with cmake now, rather than the Makefile we drove with stub files.
The sysroot build produces compiler-rt itself, so those tasks lose their dependency on the
compiler-rt artifact, and they need cmake 3.26, hence the deb13 image. LTO, shared libraries and
exceptions are pinned off; the wasm sandbox uses none of them, and upstream defaults the first two on
and exceptions on from clang 23.

v34 drops the wasm32-wasi target, so the sysroot is built for wasm32-wasip1.

wasi-libc now defines pthread_create for the non-threaded target, so the pthread_create probe has to
skip wasi to keep -pthread off the wasm build.

Differential Revision: https://phabricator.services.mozilla.com/D303335
2026-09-02 23:37:34 +00:00

22 lines
987 B
Diff

# wasi-sdk is fetched without .git, to avoid shallow submodule fetch failures on
# git.savannah.gnu.org, so git describe can't work. Fall back to $WASI_SDK_VERSION.
# https://github.com/WebAssembly/wasi-sdk/issues/505
diff --git a/version.py b/version.py
--- a/version.py
+++ b/version.py
@@ -80,9 +80,12 @@
assert parse_git_version('wasi-sdk-23-tag.rc1-1-g100') == '23.1-tag.rc1g100'
def git_version():
- version = exec(['git', 'describe', '--long', '--candidates=999',
- '--match=wasi-sdk-*', '--dirty=+m', f'--abbrev={GIT_REF_LEN}'],
- os.path.dirname(sys.argv[0]))
+ try:
+ version = exec(['git', 'describe', '--long', '--candidates=999',
+ '--match=wasi-sdk-*', '--dirty=+m', f'--abbrev={GIT_REF_LEN}'],
+ os.path.dirname(sys.argv[0]))
+ except subprocess.CalledProcessError:
+ return os.environ.get('WASI_SDK_VERSION', '0') + '.0'
return parse_git_version(version)