Skip to content

Commit fe3c139

Browse files
committed
Test the c-system feature in CI as well
1 parent e4384f6 commit fe3c139

File tree

6 files changed

+42
-9
lines changed

6 files changed

+42
-9
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,16 @@
11
FROM ubuntu:18.04
2-
RUN apt-get update && \
2+
RUN dpkg --add-architecture arm64 && \
3+
sed -e "\,security.ubuntu.com/ubuntu,p;s,security.ubuntu.com/ubuntu,ports.ubuntu.com/ubuntu-ports,g" \
4+
-e "\,archive.ubuntu.com/ubuntu,p;s,archive.ubuntu.com/ubuntu,ports.ubuntu.com/ubuntu-ports,g" \
5+
-i /etc/apt/sources.list && \
6+
apt-get update; \
37
apt-get install -y --no-install-recommends \
48
gcc libc6-dev ca-certificates \
59
gcc-aarch64-linux-gnu libc6-dev-arm64-cross \
10+
clang libclang-common-6.0-dev:arm64 \
611
qemu-user-static
712
ENV CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=aarch64-linux-gnu-gcc \
813
CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_RUNNER=qemu-aarch64-static \
914
QEMU_LD_PREFIX=/usr/aarch64-linux-gnu \
15+
CLANG=clang \
1016
RUST_TEST_THREADS=1
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,16 @@
11
FROM ubuntu:18.04
2-
RUN apt-get update && \
2+
RUN dpkg --add-architecture armhf && \
3+
sed -e "\,security.ubuntu.com/ubuntu,p;s,security.ubuntu.com/ubuntu,ports.ubuntu.com/ubuntu-ports,g" \
4+
-e "\,archive.ubuntu.com/ubuntu,p;s,archive.ubuntu.com/ubuntu,ports.ubuntu.com/ubuntu-ports,g" \
5+
-i /etc/apt/sources.list && \
6+
apt-get update; \
37
apt-get install -y --no-install-recommends \
48
gcc libc6-dev ca-certificates \
5-
gcc-arm-linux-gnueabihf libc6-dev-armhf-cross qemu-user-static
9+
gcc-arm-linux-gnueabihf libc6-dev-armhf-cross \
10+
clang libclang-common-6.0-dev:armhf \
11+
qemu-user-static
612
ENV CARGO_TARGET_ARMV7_UNKNOWN_LINUX_GNUEABIHF_LINKER=arm-linux-gnueabihf-gcc \
713
CARGO_TARGET_ARMV7_UNKNOWN_LINUX_GNUEABIHF_RUNNER=qemu-arm-static \
814
QEMU_LD_PREFIX=/usr/arm-linux-gnueabihf \
15+
CLANG=clang \
916
RUST_TEST_THREADS=1
+8-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,10 @@
11
FROM ubuntu:18.04
2-
RUN apt-get update && \
2+
RUN dpkg --add-architecture i386 && \
3+
sed -e "\,security.ubuntu.com/ubuntu,p;s,security.ubuntu.com/ubuntu,ports.ubuntu.com/ubuntu-ports,g" \
4+
-e "\,archive.ubuntu.com/ubuntu,p;s,archive.ubuntu.com/ubuntu,ports.ubuntu.com/ubuntu-ports,g" \
5+
-i /etc/apt/sources.list && \
6+
apt-get update; \
37
apt-get install -y --no-install-recommends \
4-
gcc-multilib libc6-dev ca-certificates
8+
gcc-multilib libc6-dev ca-certificates \
9+
clang libclang-common-6.0-dev:i386
10+
ENV CLANG=clang
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,19 @@
11
FROM ubuntu:18.04
22

3-
RUN apt-get update && \
3+
RUN dpkg --add-architecture ppc64el && \
4+
sed -e "\,security.ubuntu.com/ubuntu,p;s,security.ubuntu.com/ubuntu,ports.ubuntu.com/ubuntu-ports,g" \
5+
-e "\,archive.ubuntu.com/ubuntu,p;s,archive.ubuntu.com/ubuntu,ports.ubuntu.com/ubuntu-ports,g" \
6+
-i /etc/apt/sources.list && \
7+
apt-get update; \
48
apt-get install -y --no-install-recommends \
5-
gcc libc6-dev qemu-user-static ca-certificates \
9+
gcc libc6-dev ca-certificates \
610
gcc-powerpc64le-linux-gnu libc6-dev-ppc64el-cross \
7-
qemu-system-ppc
11+
clang libclang-common-6.0-dev:ppc64el \
12+
qemu-user-static qemu-system-ppc
813

914
ENV CARGO_TARGET_POWERPC64LE_UNKNOWN_LINUX_GNU_LINKER=powerpc64le-linux-gnu-gcc \
1015
CARGO_TARGET_POWERPC64LE_UNKNOWN_LINUX_GNU_RUNNER=qemu-ppc64le-static \
1116
QEMU_CPU=POWER8 \
1217
QEMU_LD_PREFIX=/usr/powerpc64le-linux-gnu \
18+
CLANG=clang \
1319
RUST_TEST_THREADS=1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
FROM ubuntu:18.04
22
RUN apt-get update && \
33
apt-get install -y --no-install-recommends \
4-
gcc libc6-dev ca-certificates
4+
gcc libc6-dev ca-certificates clang

ci/run.sh

+8
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,10 @@ cargo build --target $1
1818
cargo build --target $1 --release
1919
cargo build --target $1 --features c
2020
cargo build --target $1 --release --features c
21+
if [ -n "$CLANG" -o -n "$LLVM_CONFIG" ]; then
22+
cargo build --target $1 --features c-system
23+
cargo build --target $1 --release --features c-system
24+
fi
2125

2226
PREFIX=$(echo $1 | sed -e 's/unknown-//')-
2327
case $1 in
@@ -77,6 +81,10 @@ RUSTFLAGS="-C debug-assertions=no" $build_intrinsics
7781
RUSTFLAGS="-C debug-assertions=no" $build_intrinsics --release
7882
RUSTFLAGS="-C debug-assertions=no" $build_intrinsics --features c
7983
RUSTFLAGS="-C debug-assertions=no" $build_intrinsics --features c --release
84+
if [ -n "$CLANG" -o -n "$LLVM_CONFIG" ]; then
85+
RUSTFLAGS="-C debug-assertions=no" $build_intrinsics --features c-system
86+
RUSTFLAGS="-C debug-assertions=no" $build_intrinsics --features c-system --release
87+
fi
8088

8189
# Verify that there are no undefined symbols to `panic` within our
8290
# implementations

0 commit comments

Comments
 (0)