Skip to content

Commit

Permalink
Auto merge of #47157 - malbarbo:shared-build-musl, r=alexcrichton
Browse files Browse the repository at this point in the history
ci: use a shared script to build musl

The dist-x86_64-musl, dist-various-1 and dist-i586-gnu-i686-musl builders had different scripts to build musl. This PR creates an unified script, which makes it easier to add new musl targets and update musl and libunwind (used in the musl targets).

The libunwind is update from 3.7 to 3.9 for dist-x86_64-musl and dist-i586-gnu-i686-musl (dist-various-1 already used 3.9 version).
  • Loading branch information
bors committed Jan 7, 2018
2 parents a704583 + 00b5413 commit 2148bcd
Show file tree
Hide file tree
Showing 8 changed files with 144 additions and 272 deletions.
7 changes: 5 additions & 2 deletions src/ci/docker/dist-i586-gnu-i686-musl/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,11 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
pkg-config

WORKDIR /build/
COPY dist-i586-gnu-i686-musl/musl-libunwind-patch.patch dist-i586-gnu-i686-musl/build-musl.sh /build/
RUN sh /build/build-musl.sh && rm -rf /build
COPY scripts/musl.sh /build/
RUN CC=gcc CFLAGS="-m32 -fPIC -Wa,-mrelax-relocations=no" \
CXX=g++ CXXFLAGS="-m32 -Wa,-mrelax-relocations=no" \
bash musl.sh i686 --target=i686 && \
rm -rf /build

COPY scripts/sccache.sh /scripts/
RUN sh /scripts/sccache.sh
Expand Down
55 changes: 0 additions & 55 deletions src/ci/docker/dist-i586-gnu-i686-musl/build-musl.sh

This file was deleted.

15 changes: 0 additions & 15 deletions src/ci/docker/dist-i586-gnu-i686-musl/musl-libunwind-patch.patch

This file was deleted.

42 changes: 29 additions & 13 deletions src/ci/docker/dist-various-1/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -22,23 +22,39 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
libssl-dev \
pkg-config

WORKDIR /tmp
WORKDIR /build

COPY dist-various-1/build-rumprun.sh /tmp/
COPY dist-various-1/build-rumprun.sh /build
RUN ./build-rumprun.sh

COPY dist-various-1/build-arm-musl.sh /tmp/
RUN ./build-arm-musl.sh
COPY dist-various-1/install-x86_64-redox.sh /build
RUN ./install-x86_64-redox.sh

COPY scripts/musl.sh /build
RUN env \
CC=arm-linux-gnueabi-gcc CFLAGS="-march=armv6 -marm" \
CXX=arm-linux-gnueabi-g++ CXXFLAGS="-march=armv6 -marm" \
bash musl.sh arm && \
env \
CC=arm-linux-gnueabihf-gcc CFLAGS="-march=armv6 -marm" \
CXX=arm-linux-gnueabihf-g++ CXXFLAGS="-march=armv6 -marm" \
bash musl.sh armhf && \
env \
CC=arm-linux-gnueabihf-gcc CFLAGS="-march=armv7-a" \
CXX=arm-linux-gnueabihf-g++ CXXFLAGS="-march=armv7-a" \
bash musl.sh armv7 && \
env \
CC=aarch64-linux-gnu-gcc \
CXX=aarch64-linux-gnu-g++ \
bash musl.sh aarch64 && \
rm -rf /build/*

COPY dist-various-1/install-mips-musl.sh /tmp/
COPY dist-various-1/install-mips-musl.sh /build
RUN ./install-mips-musl.sh

COPY dist-various-1/install-mipsel-musl.sh /tmp/
COPY dist-various-1/install-mipsel-musl.sh /build
RUN ./install-mipsel-musl.sh

COPY dist-various-1/install-x86_64-redox.sh /tmp/
RUN ./install-x86_64-redox.sh

ENV TARGETS=asmjs-unknown-emscripten
ENV TARGETS=$TARGETS,wasm32-unknown-emscripten
ENV TARGETS=$TARGETS,x86_64-rumprun-netbsd
Expand Down Expand Up @@ -67,10 +83,10 @@ ENV STAGING_DIR=/tmp
ENV RUST_CONFIGURE_ARGS \
--enable-extended \
--target=$TARGETS \
--musl-root-arm=/usr/local/arm-linux-musleabi \
--musl-root-armhf=/usr/local/arm-linux-musleabihf \
--musl-root-armv7=/usr/local/armv7-linux-musleabihf \
--musl-root-aarch64=/usr/local/aarch64-linux-musl
--musl-root-arm=/musl-arm \
--musl-root-armhf=/musl-armhf \
--musl-root-armv7=/musl-armv7 \
--musl-root-aarch64=/musl-aarch64
ENV SCRIPT python2.7 ../x.py dist --target $TARGETS

# sccache
Expand Down
147 changes: 0 additions & 147 deletions src/ci/docker/dist-various-1/build-arm-musl.sh

This file was deleted.

10 changes: 8 additions & 2 deletions src/ci/docker/dist-x86_64-musl/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,14 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
pkg-config

WORKDIR /build/
COPY dist-x86_64-musl/build-musl.sh /build/
RUN sh /build/build-musl.sh && rm -rf /build

COPY scripts/musl.sh /build/
# We need to mitigate rust-lang/rust#34978 when compiling musl itself as well
RUN CC=gcc \
CFLAGS="-fPIC -Wa,-mrelax-relocations=no" \
CXX=g++ \
CXXFLAGS="-Wa,-mrelax-relocations=no" \
bash musl.sh x86_64 && rm -rf /build

COPY scripts/sccache.sh /scripts/
RUN sh /scripts/sccache.sh
Expand Down
38 changes: 0 additions & 38 deletions src/ci/docker/dist-x86_64-musl/build-musl.sh

This file was deleted.

Loading

0 comments on commit 2148bcd

Please sign in to comment.