Skip to content

Commit f3f4c61

Browse files
Auto merge of #142538 - alex:add-armv7-musl-host-tools, r=<try>
Add armv7-unknown-linux-musleabihf host tools to CI Related to rust-lang/rustup#3398 try-job: `dist-armv7-linux-musl` try-job: `dist-various`
2 parents a30f178 + af713a3 commit f3f4c61

File tree

4 files changed

+61
-8
lines changed

4 files changed

+61
-8
lines changed
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
FROM ubuntu:22.04
2+
3+
COPY scripts/cross-apt-packages.sh /scripts/
4+
RUN sh /scripts/cross-apt-packages.sh
5+
6+
COPY scripts/crosstool-ng.sh /scripts/
7+
RUN sh /scripts/crosstool-ng.sh
8+
9+
COPY scripts/rustbuild-setup.sh /scripts/
10+
RUN sh /scripts/rustbuild-setup.sh
11+
WORKDIR /tmp
12+
13+
COPY scripts/crosstool-ng-build.sh /scripts/
14+
COPY host-x86_64/dist-armv7-linux-musl/armv7-unknown-linux-musleabihf.defconfig /tmp/crosstool.defconfig
15+
RUN /scripts/crosstool-ng-build.sh
16+
17+
COPY scripts/sccache.sh /scripts/
18+
RUN sh /scripts/sccache.sh
19+
20+
ENV PATH=$PATH:/x-tools/armv7-unknown-linux-musleabihf/bin
21+
22+
ENV CC_armv7_unknown_linux_musleabihf=armv7-unknown-linux-musleabihf-gcc \
23+
AR_armv7_unknown_linux_musleabihf=armv7-unknown-linux-musleabihf-ar \
24+
CXX_armv7_unknown_linux_musleabihf=armv7-unknown-linux-musleabihf-g++
25+
26+
ENV HOSTS=armv7-unknown-linux-musleabihf
27+
28+
ENV RUST_CONFIGURE_ARGS \
29+
--enable-extended \
30+
--enable-full-tools \
31+
--enable-profiler \
32+
--enable-sanitizers \
33+
--disable-docs \
34+
--set target.armv7-unknown-linux-musleabihf.crt-static=false \
35+
--musl-root-armv7hf=/x-tools/armv7-unknown-linux-musleabihf/armv7-unknown-linux-musleabihf/sysroot/usr
36+
37+
ENV SCRIPT python3 ../x.py dist --host $HOSTS --target $HOSTS
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
CT_CONFIG_VERSION="4"
2+
CT_EXPERIMENTAL=y
3+
CT_PREFIX_DIR="/x-tools/${CT_TARGET}"
4+
CT_USE_MIRROR=y
5+
CT_MIRROR_BASE_URL="https://ci-mirrors.rust-lang.org/rustc"
6+
CT_ARCH_ARM=y
7+
CT_ARCH_ARM_MODE_THUMB=y
8+
CT_ARCH_SUFFIX="v7"
9+
CT_ARCH_ARCH="armv7-a"
10+
CT_ARCH_FPU="vfpv3-d16"
11+
CT_ARCH_FLOAT_HW=y
12+
CT_KERNEL_LINUX=y
13+
CT_LINUX_V_4_19=y
14+
CT_LIBC_MUSL=y
15+
CT_MUSL_V_1_2_3=y
16+
CT_CC_LANG_CXX=y
17+
CT_GETTEXT_NEEDED=y

src/ci/docker/host-x86_64/dist-various-1/Dockerfile

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -70,11 +70,7 @@ RUN env \
7070
env \
7171
CC=arm-linux-gnueabihf-gcc CFLAGS="-march=armv6 -marm -mfpu=vfp" \
7272
CXX=arm-linux-gnueabihf-g++ CXXFLAGS="-march=armv6 -marm -mfpu=vfp" \
73-
bash musl.sh armhf && \
74-
env \
75-
CC=arm-linux-gnueabihf-gcc CFLAGS="-march=armv7-a+fp" \
76-
CXX=arm-linux-gnueabihf-g++ CXXFLAGS="-march=armv7-a+fp" \
77-
bash musl.sh armv7hf
73+
bash musl.sh armhf
7874

7975
ENV RUN_MAKE_TARGETS=thumbv6m-none-eabi
8076
ENV RUN_MAKE_TARGETS=$RUN_MAKE_TARGETS,thumbv7m-none-eabi
@@ -86,7 +82,7 @@ ENV TARGETS=$TARGETS,arm-unknown-linux-musleabi
8682
ENV TARGETS=$TARGETS,arm-unknown-linux-musleabihf
8783
ENV TARGETS=$TARGETS,armv5te-unknown-linux-gnueabi
8884
ENV TARGETS=$TARGETS,armv5te-unknown-linux-musleabi
89-
ENV TARGETS=$TARGETS,armv7-unknown-linux-musleabihf
85+
9086
ENV TARGETS=$TARGETS,aarch64-unknown-none
9187
ENV TARGETS=$TARGETS,aarch64-unknown-none-softfloat
9288
ENV TARGETS=$TARGETS,sparc64-unknown-linux-gnu
@@ -115,7 +111,7 @@ ENV TARGETS=$TARGETS,armv7a-none-eabi
115111
ENV CFLAGS_armv5te_unknown_linux_musleabi="-march=armv5te -marm -mfloat-abi=soft" \
116112
CFLAGS_arm_unknown_linux_musleabi="-march=armv6 -marm" \
117113
CFLAGS_arm_unknown_linux_musleabihf="-march=armv6 -marm -mfpu=vfp" \
118-
CFLAGS_armv7_unknown_linux_musleabihf="-march=armv7-a+fp" \
114+
119115
CC_sparc64_unknown_linux_gnu=sparc64-linux-gnu-gcc \
120116
CC_x86_64_unknown_redox=x86_64-unknown-redox-gcc \
121117
CC_thumbv7neon_unknown_linux_gnueabihf=arm-linux-gnueabihf-gcc \
@@ -148,7 +144,7 @@ ENV RUST_CONFIGURE_ARGS \
148144
--musl-root-armv5te=/musl-armv5te \
149145
--musl-root-arm=/musl-arm \
150146
--musl-root-armhf=/musl-armhf \
151-
--musl-root-armv7hf=/musl-armv7hf \
147+
152148
--disable-docs
153149

154150
ENV SCRIPT \

src/ci/github-actions/jobs.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -200,6 +200,9 @@ auto:
200200
- name: dist-armv7-linux
201201
<<: *job-linux-4c
202202

203+
- name: dist-armv7-linux-musl
204+
<<: *job-linux-4c
205+
203206
- name: dist-i586-gnu-i586-i686-musl
204207
<<: *job-linux-4c
205208

0 commit comments

Comments
 (0)