File tree Expand file tree Collapse file tree 5 files changed +98
-0
lines changed
Expand file tree Collapse file tree 5 files changed +98
-0
lines changed Original file line number Diff line number Diff line change @@ -207,6 +207,7 @@ terminate.
207207| ` aarch64-unknown-linux-gnu:centos ` [ 7] | 2.17 | 4.8.5 | | 4.2.1 | ✓ |
208208| ` aarch64-unknown-linux-musl ` | 1.2.3 | 9.2.0 | ✓ | 6.1.0 | ✓ |
209209| ` aarch64_be-unknown-linux-gnu ` | 2.36 | 14.2.0 | ✓ | 6.1.0 | ✓ |
210+ | ` aarch64_be-unknown-linux-musl ` | 1.2.5 | 14.2.0 | ✓ | 6.1.0 | ✓ |
210211| ` arm-linux-androideabi ` [ 1] | 9.0.8 | 9.0.8 | ✓ | 6.1.0 | ✓ |
211212| ` arm-unknown-linux-gnueabi ` | 2.31 | 9.4.0 | ✓ | 6.1.0 | ✓ |
212213| ` arm-unknown-linux-gnueabihf ` | 2.31 | 8.5.0 | ✓ | 6.1.0 | ✓ |
Original file line number Diff line number Diff line change 1+ FROM ubuntu:24.04 AS cross-base
2+ ENV DEBIAN_FRONTEND=noninteractive
3+
4+ COPY common.sh lib.sh /
5+ RUN /common.sh
6+
7+ COPY cmake.sh /
8+ RUN /cmake.sh
9+
10+ FROM cross-base AS build
11+
12+ ARG VERBOSE
13+ COPY crosstool-ng.sh /
14+ COPY crosstool-config/aarch64_be-unknown-linux-musl.config /
15+ RUN /crosstool-ng.sh aarch64_be-unknown-linux-musl.config 5
16+
17+ ENV PATH=/x-tools/aarch64_be-unknown-linux-musl/bin/:$PATH
18+
19+ COPY qemu.sh /
20+ RUN /qemu.sh aarch64_be
21+
22+ COPY qemu-runner base-runner.sh /
23+ COPY toolchain.cmake /opt/toolchain.cmake
24+
25+ COPY tidyup.sh /
26+ RUN /tidyup.sh
27+
28+ ENV CROSS_TOOLCHAIN_PREFIX=aarch64_be-unknown-linux-musl-
29+ ENV CROSS_SYSROOT=/x-tools/aarch64_be-unknown-linux-musl/aarch64_be-unknown-linux-musl/sysroot/
30+ ENV CROSS_TARGET_RUNNER="/qemu-runner aarch64_be"
31+ ENV CARGO_TARGET_AARCH64_BE_UNKNOWN_LINUX_GNU_LINKER="$CROSS_TOOLCHAIN_PREFIX"gcc \
32+ CARGO_TARGET_AARCH64_BE_UNKNOWN_LINUX_GNU_RUNNER="$CROSS_TARGET_RUNNER" \
33+ AR_aarch64_be_unknown_linux_musl="$CROSS_TOOLCHAIN_PREFIX"ar \
34+ CC_aarch64_be_unknown_linux_musl="$CROSS_TOOLCHAIN_PREFIX"gcc \
35+ CXX_aarch64_be_unknown_linux_musl="$CROSS_TOOLCHAIN_PREFIX"g++ \
36+ CMAKE_TOOLCHAIN_FILE_aarch64_be_unknown_linux_musl=/opt/toolchain.cmake \
37+ BINDGEN_EXTRA_CLANG_ARGS_aarch64_be_unknown_linux_musl="--sysroot=$CROSS_SYSROOT -idirafter/usr/include" \
38+ QEMU_LD_PREFIX="$CROSS_SYSROOT" \
39+ RUST_TEST_THREADS=1 \
40+ CROSS_CMAKE_SYSTEM_NAME=Linux \
41+ CROSS_CMAKE_SYSTEM_PROCESSOR=aarch64_be \
42+ CROSS_CMAKE_CRT=musl \
43+ CROSS_CMAKE_OBJECT_FLAGS="-ffunction-sections -fdata-sections -fPIC"
44+
45+ RUN sed -e "s#@DEFAULT_QEMU_LD_PREFIX@#$QEMU_LD_PREFIX#g" -i /qemu-runner
Original file line number Diff line number Diff line change 1+ CT_CONFIG_VERSION="4"
2+ CT_EXPERIMENTAL=y
3+ CT_PREFIX_DIR="/x-tools/${CT_TARGET}"
4+ CT_ARCH_ARM=y
5+ CT_ARCH_64=y
6+ CT_ARCH_BE=y
7+ CT_ARCH_FLOAT_HW=y
8+ # CT_DEMULTILIB is not set
9+ CT_ARCH_USE_MMU=y
10+ CT_KERNEL_LINUX=y
11+ CT_LINUX_V_5_19=y
12+ # CT_LINUX_NO_VERSIONS is not set
13+ CT_LINUX_VERSION="5.19.16"
14+ CT_LINUX_later_than_4_8=y
15+ CT_LINUX_4_8_or_later=y
16+ CT_LINUX_later_than_3_7=y
17+ CT_LINUX_3_7_or_later=y
18+ CT_LINUX_later_than_3_2=y
19+ CT_LINUX_3_2_or_later=y
20+ CT_LIBC_MUSL=y
21+ CT_MUSL_V_1_2_5=y
22+ # CT_MUSL_NO_VERSIONS is not set
23+ CT_MUSL_VERSION="1.2.5"
24+ CT_GCC_V_14=y
25+ # CT_GCC_NO_VERSIONS is not set
26+ CT_GCC_VERSION="14.2.0"
27+ CT_GCC_later_than_7=y
28+ CT_GCC_7_or_later=y
29+ CT_GCC_later_than_6=y
30+ CT_GCC_6_or_later=y
31+ CT_GCC_later_than_5=y
32+ CT_GCC_5_or_later=y
33+ CT_GCC_later_than_4_9=y
34+ CT_GCC_4_9_or_later=y
35+ CT_GCC_later_than_4_8=y
36+ CT_GCC_4_8_or_later=y
37+ CT_CC_GCC_ENABLE_DEFAULT_PIE=y
38+ CT_CC_LANG_CXX=y
39+
Original file line number Diff line number Diff line change @@ -133,6 +133,11 @@ pub static PROVIDED_IMAGES: &[ProvidedImage] = &[
133133 platforms : & [ ImagePlatform :: X86_64_UNKNOWN_LINUX_GNU ] ,
134134 sub : None
135135 } ,
136+ ProvidedImage {
137+ name : "aarch64_be-unknown-linux-musl" ,
138+ platforms : & [ ImagePlatform :: X86_64_UNKNOWN_LINUX_GNU ] ,
139+ sub : None
140+ } ,
136141 ProvidedImage {
137142 name : "arm-unknown-linux-musleabihf" ,
138143 platforms : & [ ImagePlatform :: X86_64_UNKNOWN_LINUX_GNU ] ,
Original file line number Diff line number Diff line change @@ -271,6 +271,14 @@ dylib = true
271271std = true
272272run = true
273273
274+ [[target ]]
275+ target = " aarch64_be-unknown-linux-musl"
276+ os = " ubuntu-latest"
277+ cpp = true
278+ dylib = true
279+ std = true
280+ run = true
281+
274282[[target ]]
275283target = " arm-unknown-linux-musleabihf"
276284os = " ubuntu-latest"
You can’t perform that action at this time.
0 commit comments