Skip to content

Commit 3013734

Browse files
committed
feat: try musllinux riscv64
1 parent 9ae4a5a commit 3013734

File tree

4 files changed

+20
-3
lines changed

4 files changed

+20
-3
lines changed

.github/workflows/build.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ jobs:
5555
("aarch64", "ubuntu-24.04-arm", ("manylinux2014", "manylinux_2_28", "manylinux_2_34", "musllinux_1_2")),
5656
("i686", "ubuntu-24.04", ("manylinux2014", "musllinux_1_2")),
5757
("armv7l", "ubuntu-24.04-arm", ("musllinux_1_2",)),
58+
("riscv64", "ubuntu-24.04", ("musllinux_1_2",)),
5859
]
5960
expanded = [{"policy": policy, "platform": platform, "runner": runner} for platform, runner, policies in reduced for policy in policies]
6061
print(json.dumps(expanded, indent=2))
@@ -82,6 +83,15 @@ jobs:
8283
with:
8384
fetch-depth: 50
8485

86+
- name: Set up QEMU
87+
if: matrix.platform == 'riscv64'
88+
uses: docker/setup-qemu-action@v3
89+
with:
90+
# This should be temporary
91+
# xref https://github.com/docker/setup-qemu-action/issues/188
92+
# xref https://github.com/tonistiigi/binfmt/issues/215
93+
image: tonistiigi/binfmt:qemu-v8.1.5
94+
8595
- name: Set up Docker Buildx
8696
uses: docker/setup-buildx-action@v3
8797

README.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -200,10 +200,10 @@ Toolchain: GCC 4.8
200200
- i686 image: ``quay.io/pypa/manylinux1_i686``
201201

202202

203-
musllinux_1_2 (Alpine Linux 3.20 based, 3.13+ compatible)
203+
musllinux_1_2 (Alpine Linux 3.21 based, 3.13+ compatible)
204204
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
205205

206-
Toolchain: GCC 13
206+
Toolchain: GCC 14
207207

208208
- x86_64 image: ``quay.io/pypa/musllinux_1_2_x86_64``
209209
- i686 image: ``quay.io/pypa/musllinux_1_2_i686``

build.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ case "${PLATFORM}" in
1919
ppc64le) GOARCH="ppc64le";;
2020
s390x) GOARCH="s390x";;
2121
armv7l) GOARCH="arm/v7";;
22+
riscv64) GOARCH="riscv64";;
2223
*) echo "Unsupported platform: '${PLATFORM}'"; exit 1;;
2324
esac
2425

@@ -43,7 +44,7 @@ elif [ "${POLICY}" == "manylinux_2_34" ]; then
4344
PREPEND_PATH="/usr/local/bin:${DEVTOOLSET_ROOTPATH}/usr/bin:"
4445
LD_LIBRARY_PATH_ARG="${DEVTOOLSET_ROOTPATH}/usr/lib64:${DEVTOOLSET_ROOTPATH}/usr/lib:${DEVTOOLSET_ROOTPATH}/usr/lib64/dyninst:${DEVTOOLSET_ROOTPATH}/usr/lib/dyninst"
4546
elif [ "${POLICY}" == "musllinux_1_2" ]; then
46-
BASEIMAGE="alpine:3.20"
47+
BASEIMAGE="alpine:3.21"
4748
DEVTOOLSET_ROOTPATH=
4849
PREPEND_PATH=
4950
LD_LIBRARY_PATH_ARG=

docker/build_scripts/finalize.sh

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,12 @@ for TOOL_PATH in "${MY_DIR}/requirements-tools/"*; do
8686
case ${AUDITWHEEL_PLAT}-${TOOL} in
8787
musllinux*_ppc64le-uv) continue;; # uv doesn't provide musl ppc64le wheels due to Rust issues
8888
musllinux*_s390x-uv) continue;; # uv doesn't provide musl s390x wheels due to Rust issues
89+
*_riscv64-uv) continue;; # no uv for riscv64
90+
musllinux*_riscv64-cmake|musllinux*_riscv64-swig) apk --no-cache add ${TOOL};;
91+
musllinux*_riscv64-patchelf)
92+
apk --no-cache add cmake
93+
pipx install patchelf==0.17.2.1
94+
;;
8995
*) pipx install --pip-args="--require-hashes -r ${TOOL_PATH} --only-binary" "${TOOL}";;
9096
esac
9197
done

0 commit comments

Comments
 (0)