From 0da19c2ef6f3ae4be7c0ae18665c59db5f110e0d Mon Sep 17 00:00:00 2001 From: Albert Xing Date: Mon, 28 Sep 2026 15:46:20 -0700 Subject: [PATCH] fix: compile aarch64-unknown-linux-gnu with clang to enable arm64 AES hardware acceleration --- .github/workflows/CI.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 28a032f..2fcd49b 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -50,10 +50,13 @@ jobs: docker: ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-debian-aarch64 build: |- apt-get update -yq && - apt-get install -yq gcc-aarch64-linux-gnu g++-aarch64-linux-gnu lld && + apt-get install -yq clang gcc-aarch64-linux-gnu g++-aarch64-linux-gnu lld && ls -l /usr/bin && rustup target add aarch64-unknown-linux-gnu && - CC=x86_64-linux-gnu-gcc CMAKE_C_COMPILER=aarch64-linux-gnu-gcc CMAKE_CXX_COMPILER=aarch64-linux-gnu-g++ RUSTC_LINKER=aarch64-linux-gnu-gcc yarn build --target aarch64-unknown-linux-gnu + # Match Clang's GCC runtime to the image's bundled sysroot. + CFLAGS_aarch64_unknown_linux_gnu="${CFLAGS_aarch64_unknown_linux_gnu:-} --gcc-toolchain=/usr/aarch64-unknown-linux-gnu" \ + CXXFLAGS_aarch64_unknown_linux_gnu="${CXXFLAGS_aarch64_unknown_linux_gnu:-} --gcc-toolchain=/usr/aarch64-unknown-linux-gnu" \ + CC=x86_64-linux-gnu-gcc CMAKE_C_COMPILER=clang CMAKE_CXX_COMPILER=clang++ RUSTC_LINKER=aarch64-linux-gnu-gcc yarn build --target aarch64-unknown-linux-gnu - host: ubuntu-24.04-arm target: aarch64-unknown-linux-musl docker: ghcr.io/napi-rs/napi-rs/nodejs-rust:lts-alpine