Skip to content

Commit 724d4e3

Browse files
committed
chore: use hermetic_llvm for macos execution
Simdutf has this check for enabling atomic operations: ``` #if __cpp_lib_atomic_ref >= 201806L #define SIMDUTF_ATOMIC_REF 1 #endif // __cpp_lib_atomic_ref ``` Which evidently fails on the runner's macos version, which spits out the following error: ``` external/v8/src/builtins/builtins-typed-array.cc:524:28: error: no member named 'atomic_base64_to_binary_safe' in namespace 'simdutf'; did you mean 'base64_to_binary_safe'? 524 | simd_result = simdutf::atomic_base64_to_binary_safe( | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~ | base64_to_binary_safe external/simdutf/simdutf.h:4369:1: note: 'base64_to_binary_safe' declared here 4369 | base64_to_binary_safe(const char *input, size_t length, char *output, | ^ external/v8/src/builtins/builtins-typed-array.cc:837:35: error: no member named 'atomic_binary_to_base64' in namespace 'simdutf'; did you mean 'binary_to_base64'? 837 | simd_result_size = simdutf::atomic_binary_to_base64( | ~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~ | binary_to_base64 external/simdutf/simdutf.h:4110:8: note: 'binary_to_base64' declared here 4110 | size_t binary_to_base64(const char *input, size_t length, char *output, | ^ external/v8/src/builtins/builtins-typed-array.cc:525:9: error: cannot initialize a parameter of type 'const char *' with an rvalue of type 'const char16_t *' ``` Signed-off-by: Matt Leon <[email protected]>
1 parent ead5952 commit 724d4e3

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

.bazelrc

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,17 @@ build:gcc --action_env=BAZEL_COMPILER=gcc
6767
build:gcc --action_env=CC=gcc
6868
build:gcc --action_env=CXX=g++
6969

70+
build:hermetic --incompatible_enable_cc_toolchain_resolution
71+
build:hermetic --action_env BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1
72+
build:hermetic --extra_toolchains @emsdk//emscripten_toolchain:cc-toolchain-wasm
73+
7074
# Use vendored LLVM C/C++ compiler.
75+
build:hermetic-llvm --config=hermetic
76+
build:hermetic-llvm --extra_toolchains @llvm_toolchain//:cc-toolchain-x86_64-linux
77+
78+
build:hermetic-llvm-macos-amd64 --config=hermetic
79+
build:hermetic-llvm-macos-amd64 --extra_toolchains @llvm_toolchain//:cc-toolchain-x86_64-darwin
80+
7181
build:hermetic-llvm --incompatible_enable_cc_toolchain_resolution
7282
build:hermetic-llvm --action_env BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1
7383
build:hermetic-llvm --extra_toolchains @llvm_toolchain//:cc-toolchain-x86_64-linux
@@ -76,6 +86,7 @@ build:hermetic-llvm --extra_toolchains @emsdk//emscripten_toolchain:cc-toolchain
7686

7787
# Use vendored LLVM C/C++ compiler (cross-compile to Linux/aarch64).
7888
build:linux-aarch64-cross --config=hermetic-llvm
89+
build:linux-aarch64-cross --extra_toolchains @llvm_aarch64//:cc-toolchain-aarch64-linux
7990
build:linux-aarch64-cross --platforms @toolchains_llvm//platforms:linux-aarch64
8091
build:linux-aarch64-cross --cxxopt --gcc-install-dir=external/sysroot_linux_arm64/usr/lib/gcc/aarch64-linux-gnu/13/
8192
build:linux-aarch64-cross --test_env=QEMU_LD_PREFIX=/usr/aarch64-linux-gnu/

.github/workflows/test.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -181,6 +181,7 @@ jobs:
181181
os: macos-15
182182
arch: x86_64
183183
action: test
184+
flags: --config=hermetic-llvm-macos-amd64
184185
cache: true
185186
- name: 'WAMR interp on Linux/x86_64'
186187
engine: 'wamr-interp'

0 commit comments

Comments
 (0)