From deb428db357dfd020b13d5ec2333cbdeff28a768 Mon Sep 17 00:00:00 2001 From: Bruno Verachten Date: Thu, 12 Mar 2026 16:09:41 +0100 Subject: [PATCH 1/2] ci: add riscv64gc-unknown-linux-gnu to release artifacts --- .github/workflows/main.yml | 5 +++++ ci/docker/riscv64-linux/Dockerfile | 8 ++++++++ 2 files changed, 13 insertions(+) create mode 100644 ci/docker/riscv64-linux/Dockerfile diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 5dc4b7d0e3..43abaea03e 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -48,6 +48,11 @@ jobs: env: CARGO_BUILD_TARGET: aarch64-unknown-linux-musl DOCKER_IMAGE: ./ci/docker/aarch64-musl/Dockerfile + - build: riscv64-linux + os: ubuntu-latest + env: + CARGO_BUILD_TARGET: riscv64gc-unknown-linux-gnu + DOCKER_IMAGE: ./ci/docker/riscv64-linux/Dockerfile - build: x86_64-macos os: macos-latest diff --git a/ci/docker/riscv64-linux/Dockerfile b/ci/docker/riscv64-linux/Dockerfile new file mode 100644 index 0000000000..80c133d72d --- /dev/null +++ b/ci/docker/riscv64-linux/Dockerfile @@ -0,0 +1,8 @@ +FROM ubuntu:16.04 + +RUN apt-get update -y && apt-get install -y gcc gcc-riscv64-linux-gnu ca-certificates git +RUN git config --global --add safe.directory '*' + +ENV PATH=$PATH:/rust/bin +ENV CARGO_BUILD_TARGET=riscv64gc-unknown-linux-gnu +ENV CARGO_TARGET_RISCV64GC_UNKNOWN_LINUX_GNU_LINKER=riscv64-linux-gnu-gcc From afdd3f5bd230b54ec7b33b91153b2923c93366dd Mon Sep 17 00:00:00 2001 From: Bruno Verachten Date: Thu, 12 Mar 2026 16:22:12 +0100 Subject: [PATCH 2/2] fix(ci): use ubuntu:18.04 for riscv64 Dockerfile gcc-riscv64-linux-gnu is not available in Ubuntu 16.04 (Xenial). Use 18.04 (Bionic) which ships the riscv64 cross-compiler. This is acceptable because RISC-V Linux distributions all ship glibc >= 2.27 (the 18.04 version). --- ci/docker/riscv64-linux/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/docker/riscv64-linux/Dockerfile b/ci/docker/riscv64-linux/Dockerfile index 80c133d72d..a5edb8fe51 100644 --- a/ci/docker/riscv64-linux/Dockerfile +++ b/ci/docker/riscv64-linux/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:16.04 +FROM ubuntu:18.04 RUN apt-get update -y && apt-get install -y gcc gcc-riscv64-linux-gnu ca-certificates git RUN git config --global --add safe.directory '*'