ci: implement debian-cross-riscv64
Revival of my old effort to get riscv64 testing in! Now we're at Debian 13 (trixie), we can support RISC-V builds! Disable llvmpipe suite because of lp_test_arit failure, see https://gitlab.freedesktop.org/mesa/mesa/-/issues/14123 Signed-off-by: David Heidelberg <david@ixit.cz> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/37445>
This commit is contained in:
@@ -22,6 +22,8 @@ elif [[ "$arch" = "i386" ]]; then
|
||||
rust_target=i686-unknown-linux-gnu
|
||||
elif [[ "$arch" = "ppc64el" ]]; then
|
||||
rust_target=powerpc64le-unknown-linux-gnu
|
||||
elif [[ "$arch" = "riscv64" ]]; then
|
||||
rust_target=riscv64gc-unknown-linux-gnu
|
||||
elif [[ "$arch" = "s390x" ]]; then
|
||||
rust_target=s390x-unknown-linux-gnu
|
||||
else
|
||||
|
||||
@@ -121,6 +121,30 @@ debian/ppc64el_build:
|
||||
- job: debian/ppc64el_build
|
||||
optional: true
|
||||
|
||||
# Debian based RISC-V 64 cross-build image
|
||||
debian/riscv64_build:
|
||||
extends:
|
||||
- .use-debian/x86_64_build-base
|
||||
variables:
|
||||
MESA_IMAGE_TAG: &debian-riscv64_build ${DEBIAN_BUILD_TAG}
|
||||
LLVM_VERSION: &debian-riscv64-llvm 19
|
||||
|
||||
.use-debian/riscv64_build:
|
||||
tags:
|
||||
- $FDO_RUNNER_JOB_PRIORITY_TAG_X86_64
|
||||
extends:
|
||||
- .set-image-base-tag
|
||||
variables:
|
||||
MESA_BASE_TAG: *debian-x86_64_build-base
|
||||
MESA_IMAGE_PATH: "debian/riscv64_build"
|
||||
MESA_IMAGE_TAG: *debian-riscv64_build
|
||||
LLVM_VERSION: *debian-riscv64-llvm
|
||||
needs:
|
||||
- job: sanity
|
||||
optional: true
|
||||
- job: debian/riscv64_build
|
||||
optional: true
|
||||
|
||||
# Debian based s390x cross-build image
|
||||
debian/s390x_build:
|
||||
extends:
|
||||
|
||||
20
.gitlab-ci/container/debian/riscv64_build.sh
Normal file
20
.gitlab-ci/container/debian/riscv64_build.sh
Normal file
@@ -0,0 +1,20 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
|
||||
. .gitlab-ci/setup-test-env.sh
|
||||
|
||||
arch=riscv64
|
||||
|
||||
# Ephemeral packages (installed for this script and removed again at the end)
|
||||
EPHEMERAL=(
|
||||
libssl-dev
|
||||
)
|
||||
|
||||
apt-get -y install "${EPHEMERAL[@]}"
|
||||
|
||||
. .gitlab-ci/container/build-mold.sh
|
||||
|
||||
apt-get purge -y "${EPHEMERAL[@]}"
|
||||
|
||||
. .gitlab-ci/container/cross_build.sh
|
||||
Reference in New Issue
Block a user