Skip to content

Commit 1a87c49

Browse files
committed
Auto merge of rust-lang#70414 - lopsided98:armv6-gcc-8, r=pietroalbini
Upgrade GCC to 8.3.0, glibc to 2.17.0 and crosstool-ng to 1.24.0 for dist-arm-linux and dist-armhf-linux Attempt to fix rust-lang#69420 in the same manner as rust-lang#65302 did for armv7l. I have tested that this eliminates the segfault while building a `hello_world` package on `arm-unknown-linux-gnueabihf`. I have not been able to test whether the bug exists for `arm-unknown-linux-gnueabi` as well, but I suspect it does, so I upgraded the toolchain for that platform as well.
2 parents 58dd1ce + 55bdb61 commit 1a87c49

File tree

9 files changed

+1035
-743
lines changed

9 files changed

+1035
-743
lines changed

src/ci/docker/README.md

+8-10
Original file line numberDiff line numberDiff line change
@@ -138,33 +138,31 @@ $category > $option = $value -- $comment
138138
For targets: `arm-unknown-linux-gnueabi`
139139
140140
- Path and misc options > Prefix directory = /x-tools/${CT\_TARGET}
141-
- Path and misc options > Patches origin = Bundled, then local
142-
- Path and misc options > Local patch directory = /tmp/patches
141+
- Path and misc options > Patches origin = Bundled only
143142
- Target options > Target Architecture = arm
144143
- Target options > Architecture level = armv6 -- (+)
145144
- Target options > Floating point = software (no FPU) -- (\*)
146145
- Operating System > Target OS = linux
147-
- Operating System > Linux kernel version = 3.2.72 -- Precise kernel
148-
- C-library > glibc version = 2.16.0
149-
- C compiler > gcc version = 5.2.0
146+
- Operating System > Linux kernel version = 3.2.101
147+
- C-library > glibc version = 2.17.0
148+
- C compiler > gcc version = 8.3.0
150149
- C compiler > C++ = ENABLE -- to cross compile LLVM
151150
152151
### `arm-linux-gnueabihf.config`
153152
154153
For targets: `arm-unknown-linux-gnueabihf`
155154
156155
- Path and misc options > Prefix directory = /x-tools/${CT\_TARGET}
157-
- Path and misc options > Patches origin = Bundled, then local
158-
- Path and misc options > Local patch directory = /tmp/patches
156+
- Path and misc options > Patches origin = Bundled only
159157
- Target options > Target Architecture = arm
160158
- Target options > Architecture level = armv6 -- (+)
161159
- Target options > Use specific FPU = vfp -- (+)
162160
- Target options > Floating point = hardware (FPU) -- (\*)
163161
- Target options > Default instruction set mode = arm -- (+)
164162
- Operating System > Target OS = linux
165-
- Operating System > Linux kernel version = 3.2.72 -- Precise kernel
166-
- C-library > glibc version = 2.16.0
167-
- C compiler > gcc version = 5.2.0
163+
- Operating System > Linux kernel version = 3.2.101
164+
- C-library > glibc version = 2.17.0
165+
- C compiler > gcc version = 8.3.0
168166
- C compiler > C++ = ENABLE -- to cross compile LLVM
169167
170168
### `armv7-linux-gnueabihf.config`

src/ci/docker/dist-arm-linux/Dockerfile

+2-8
Original file line numberDiff line numberDiff line change
@@ -3,20 +3,14 @@ FROM ubuntu:16.04
33
COPY scripts/cross-apt-packages.sh /scripts/
44
RUN sh /scripts/cross-apt-packages.sh
55

6-
# Ubuntu 16.04 (this container) ships with make 4, but something in the
7-
# toolchains we build below chokes on that, so go back to make 3
8-
COPY scripts/make3.sh /scripts/
9-
RUN sh /scripts/make3.sh
10-
11-
COPY scripts/crosstool-ng.sh /scripts/
12-
RUN sh /scripts/crosstool-ng.sh
6+
COPY scripts/crosstool-ng-1.24.sh /scripts/
7+
RUN sh /scripts/crosstool-ng-1.24.sh
138

149
COPY scripts/rustbuild-setup.sh /scripts/
1510
RUN sh /scripts/rustbuild-setup.sh
1611
USER rustbuild
1712
WORKDIR /tmp
1813

19-
COPY dist-arm-linux/patches/ /tmp/patches/
2014
COPY dist-arm-linux/arm-linux-gnueabi.config dist-arm-linux/build-toolchains.sh /tmp/
2115
RUN ./build-toolchains.sh
2216

0 commit comments

Comments
 (0)