@@ -8,7 +8,8 @@ RUN sed -i 's/^# deb-src/deb-src/' /etc/apt/sources.list
8
8
9
9
RUN apt-get update && apt-get build-dep -y clang llvm && apt-get install -y --no-install-recommends \
10
10
build-essential \
11
- gcc-multilib \
11
+ # gcc-multilib can not be installed together with gcc-arm-linux-gnueabi
12
+ gcc-7-multilib \
12
13
libedit-dev \
13
14
libgmp-dev \
14
15
libisl-dev \
@@ -21,11 +22,20 @@ RUN apt-get update && apt-get build-dep -y clang llvm && apt-get install -y --no
21
22
unzip \
22
23
# Needed for apt-key to work:
23
24
dirmngr \
24
- gpg-agent
25
+ gpg-agent \
26
+ g++-7-arm-linux-gnueabi
25
27
26
28
RUN apt-key adv --batch --yes --keyserver keyserver.ubuntu.com --recv-keys 74DA7924C5513486
27
29
RUN add-apt-repository -y 'deb http://apt.dilos.org/dilos dilos2 main'
28
30
31
+ WORKDIR /build
32
+ COPY scripts/musl.sh /build
33
+ RUN env \
34
+ CC=arm-linux-gnueabi-gcc-7 CFLAGS="-march=armv7-a" \
35
+ CXX=arm-linux-gnueabi-g++-7 CXXFLAGS="-march=armv7-a" \
36
+ bash musl.sh armv7 && \
37
+ rm -rf /build/*
38
+
29
39
WORKDIR /tmp
30
40
COPY dist-various-2/shared.sh /tmp/
31
41
COPY dist-various-2/build-cloudabi-toolchain.sh /tmp/
58
68
CXX_sparcv9_sun_solaris=sparcv9-sun-solaris2.10-g++ \
59
69
AR_x86_64_sun_solaris=x86_64-sun-solaris2.10-ar \
60
70
CC_x86_64_sun_solaris=x86_64-sun-solaris2.10-gcc \
61
- CXX_x86_64_sun_solaris=x86_64-sun-solaris2.10-g++
71
+ CXX_x86_64_sun_solaris=x86_64-sun-solaris2.10-g++ \
72
+ CC_armv7_unknown_linux_gnueabi=arm-linux-gnueabi-gcc-7 \
73
+ CXX_armv7_unknown_linux_gnueabi=arm-linux-gnueabi-g++-7 \
74
+ CC=gcc-7 \
75
+ CXX=g++-7
62
76
63
77
ENV CARGO_TARGET_X86_64_FUCHSIA_AR /usr/local/bin/llvm-ar
64
78
ENV CARGO_TARGET_X86_64_FUCHSIA_RUSTFLAGS \
@@ -81,9 +95,19 @@ ENV TARGETS=$TARGETS,x86_64-unknown-linux-gnux32
81
95
ENV TARGETS=$TARGETS,x86_64-unknown-cloudabi
82
96
ENV TARGETS=$TARGETS,x86_64-fortanix-unknown-sgx
83
97
ENV TARGETS=$TARGETS,nvptx64-nvidia-cuda
98
+ ENV TARGETS=$TARGETS,armv7-unknown-linux-gnueabi
99
+ ENV TARGETS=$TARGETS,armv7-unknown-linux-musleabi
84
100
85
101
ENV X86_FORTANIX_SGX_LIBS="/x86_64-fortanix-unknown-sgx/lib/"
86
102
103
+ # As per https://bugs.launchpad.net/ubuntu/+source/gcc-defaults/+bug/1300211
104
+ # we need asm in the search path for gcc-7 (for gnux32) but not in the search path of the
105
+ # cross compilers.
106
+ # Luckily one of the folders is /usr/local/include so symlink /usr/include/asm-generic there
107
+ RUN ln -s /usr/include/asm-generic /usr/local/include/asm
108
+
87
109
ENV RUST_CONFIGURE_ARGS --enable-extended --enable-lld --disable-docs \
88
- --set target.wasm32-wasi.wasi-root=/wasm32-wasi
110
+ --set target.wasm32-wasi.wasi-root=/wasm32-wasi \
111
+ --musl-root-armv7=/musl-armv7
112
+
89
113
ENV SCRIPT python2.7 ../x.py dist --target $TARGETS
0 commit comments