mirror of https://github.com/WebAssembly/wasi-sdk
main
toolchain_conly
threads-prerelease
sunfishcode/really-update-llvm
sunfishcode/llvm-13
cmake_module_path
sunfishcode/test-seekdir
remove_no_threads
run_tests
update_expected
lto
pch/compnerd_cmake_integration
pch/debian_dep
remove-hacks
wasi-sdk-34-rc.2
wasi-sdk-34-rc.1
wasi-sdk-33
wasi-sdk-32
wasi-sdk-31
wasi-sdk-30
wasi-sdk-29
wasi-sdk-28
wasi-sdk-27
wasi-sdk-26
wasi-sdk-25
wasi-sdk-24
wasi-sdk-23
wasi-sdk-22
wasi-sdk-21
wasi-sdk-20
wasi-sdk-20+threads
wasi-sdk-19
wasi-sdk-18
wasi-sdk-17
wasi-sdk-16
wasi-sdk-15
wasi-sdk-14
wasi-sdk-13
wasi-sdk-12
wasi-sdk-11
wasi-sdk-10
wasi-sdk-9
wasi-sdk-8
wasi-sdk-7
wasi-sdk-6
wasi-sdk-5
wasi-sdk-4
wasi-sdk-3
wasi-sdk-2
wasi-sdk-1
wasi-sdk-0
${ noResults }
1 Commits (main)
| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
42b7263534
|
ci: add riscv64-linux build via cross-compilation on ubuntu-24.04 (#621)
Rework of the riscv64-linux CI build to use CMake cross-compilation on a standard `ubuntu-24.04` runner, rather than a native RISE runner. ## What changed **`ci/docker/Dockerfile.riscv64-linux`** (new): - Ubuntu 24.04 base — has `crossbuild-essential-riscv64` in its package repos - Sets `CC=riscv64-linux-gnu-gcc` / `CXX=riscv64-linux-gnu-g++` so CMake detects cross-compilation and causes LLVM to build a native `llvm-tblgen` first, then cross-compile the rest of the toolchain - Sets `CARGO_TARGET_RISCV64_UNKNOWN_LINUX_GNU_LINKER` for Rust cross-builds - `XDG_CACHE_HOME=/tmp/cache` avoids write permission issues in the container **`ci/docker-build.sh`**: - Select `ci/docker/Dockerfile.<artifact>` if it exists, fall back to the default `ci/docker/Dockerfile` - Make the wasmtime volume mount conditional on `WASI_SDK_CI_SKIP_SYSROOT != 1` **`.github/workflows/main.yml`**: - New `riscv64-linux` matrix entry: `os: ubuntu-24.04`, `rust_target: riscv64-unknown-linux-gnu` - `cross_cmake_args: -DCMAKE_SYSTEM_NAME=Linux -DCMAKE_SYSTEM_PROCESSOR=riscv64 -DWASI_SDK_LLDB=OFF` - `WASI_SDK_CI_SKIP_SYSROOT: 1` - Handle `cross_cmake_args` in the cmake flags step ## Why WASI_SDK_CI_SKIP_SYSROOT The cross-compiled clang runs on riscv64, not on the x86_64 build host, so the wasm sysroot step is skipped. ## Why WASI_SDK_LLDB=OFF Avoids cross-compiling libedit and libxml2 in this first iteration; can be re-enabled as a follow-up. Closes #607 --------- Signed-off-by: Bruno Verachten <gounthar@gmail.com> |
4 months ago |