File tree 19 files changed +30
-32
lines changed
aarch64-unknown-linux-gnu
arm-unknown-linux-gnueabi
arm-unknown-linux-gnueabihf
armv7-unknown-linux-gnueabihf
powerpc-unknown-linux-gnu
powerpc64-unknown-linux-gnu
powerpc64le-unknown-linux-gnu
19 files changed +30
-32
lines changed Original file line number Diff line number Diff line change
1
+ cache : cargo
1
2
dist : trusty
2
3
language : rust
3
4
services : docker
@@ -45,14 +46,16 @@ install:
45
46
script :
46
47
- cargo generate-lockfile
47
48
- if [[ $TRAVIS_OS_NAME = "linux" ]]; then
48
- sudo apt-get remove -y qemu-user-static &&
49
- sudo apt-get install -y qemu-user-static &&
50
49
sh ci/run-docker.sh $TARGET;
51
50
else
52
51
cargo test --target $TARGET &&
53
52
cargo test --target $TARGET --release;
54
53
fi
55
54
55
+ after_success :
56
+ # Travis can't cache files that are not readable by "others"
57
+ - chmod -R a+r /home/travis/.cargo
58
+
56
59
branches :
57
60
only :
58
61
- auto
Original file line number Diff line number Diff line change @@ -5,6 +5,5 @@ RUN apt-get install -y --no-install-recommends \
5
5
gcc-aarch64-linux-gnu libc6-dev-arm64-cross \
6
6
qemu-user-static
7
7
ENV CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER=aarch64-linux-gnu-gcc \
8
- PATH=$PATH:/rust/bin \
9
8
QEMU_LD_PREFIX=/usr/aarch64-linux-gnu \
10
9
RUST_TEST_THREADS=1
Original file line number Diff line number Diff line change @@ -4,7 +4,6 @@ RUN apt-get install -y --no-install-recommends \
4
4
gcc libc6-dev ca-certificates \
5
5
gcc-arm-linux-gnueabi libc6-dev-armel-cross qemu-user-static
6
6
ENV CARGO_TARGET_ARM_UNKNOWN_LINUX_GNUEABI_LINKER=arm-linux-gnueabi-gcc \
7
- PATH=$PATH:/rust/bin \
8
7
QEMU_LD_PREFIX=/usr/arm-linux-gnueabi \
9
8
RUST_TEST_THREADS=1
10
9
Original file line number Diff line number Diff line change @@ -4,6 +4,5 @@ RUN apt-get install -y --no-install-recommends \
4
4
gcc libc6-dev ca-certificates \
5
5
gcc-arm-linux-gnueabihf libc6-dev-armhf-cross qemu-user-static
6
6
ENV CARGO_TARGET_ARM_UNKNOWN_LINUX_GNUEABIHF_LINKER=arm-linux-gnueabihf-gcc \
7
- PATH=$PATH:/rust/bin \
8
7
QEMU_LD_PREFIX=/usr/arm-linux-gnueabihf \
9
8
RUST_TEST_THREADS=1
Original file line number Diff line number Diff line change @@ -4,6 +4,5 @@ RUN apt-get install -y --no-install-recommends \
4
4
gcc libc6-dev ca-certificates \
5
5
gcc-arm-linux-gnueabihf libc6-dev-armhf-cross qemu-user-static
6
6
ENV CARGO_TARGET_ARMV7_UNKNOWN_LINUX_GNUEABIHF_LINKER=arm-linux-gnueabihf-gcc \
7
- PATH=$PATH:/rust/bin \
8
7
QEMU_LD_PREFIX=/usr/arm-linux-gnueabihf \
9
8
RUST_TEST_THREADS=1
Original file line number Diff line number Diff line change @@ -2,4 +2,3 @@ FROM ubuntu:16.04
2
2
RUN apt-get update
3
3
RUN apt-get install -y --no-install-recommends \
4
4
gcc-multilib libc6-dev ca-certificates
5
- ENV PATH=$PATH:/rust/bin
Original file line number Diff line number Diff line change @@ -2,4 +2,3 @@ FROM ubuntu:16.04
2
2
RUN apt-get update
3
3
RUN apt-get install -y --no-install-recommends \
4
4
gcc-multilib libc6-dev ca-certificates
5
- ENV PATH=$PATH:/rust/bin
Original file line number Diff line number Diff line change @@ -7,6 +7,5 @@ RUN apt-get install -y --no-install-recommends \
7
7
binfmt-support qemu-user-static qemu-system-mips
8
8
9
9
ENV CARGO_TARGET_MIPS_UNKNOWN_LINUX_GNU_LINKER=mips-linux-gnu-gcc \
10
- PATH=$PATH:/rust/bin \
11
10
QEMU_LD_PREFIX=/usr/mips-linux-gnu \
12
11
RUST_TEST_THREADS=1
Original file line number Diff line number Diff line change @@ -7,6 +7,5 @@ RUN apt-get install -y --no-install-recommends \
7
7
binfmt-support qemu-user-static
8
8
9
9
ENV CARGO_TARGET_MIPSEL_UNKNOWN_LINUX_GNU_LINKER=mipsel-linux-gnu-gcc \
10
- PATH=$PATH:/rust/bin \
11
10
QEMU_LD_PREFIX=/usr/mipsel-linux-gnu \
12
11
RUST_TEST_THREADS=1
Original file line number Diff line number Diff line change @@ -7,6 +7,5 @@ RUN apt-get install -y --no-install-recommends \
7
7
qemu-system-ppc
8
8
9
9
ENV CARGO_TARGET_POWERPC_UNKNOWN_LINUX_GNU_LINKER=powerpc-linux-gnu-gcc \
10
- PATH=$PATH:/rust/bin \
11
10
QEMU_LD_PREFIX=/usr/powerpc-linux-gnu \
12
11
RUST_TEST_THREADS=1
Original file line number Diff line number Diff line change @@ -8,6 +8,5 @@ RUN apt-get install -y --no-install-recommends \
8
8
9
9
ENV CARGO_TARGET_POWERPC64_UNKNOWN_LINUX_GNU_LINKER=powerpc64-linux-gnu-gcc \
10
10
CC_powerpc64_unknown_linux_gnu=powerpc64-linux-gnu-gcc \
11
- PATH=$PATH:/rust/bin \
12
11
QEMU_LD_PREFIX=/usr/powerpc64-linux-gnu \
13
12
RUST_TEST_THREADS=1
Original file line number Diff line number Diff line change @@ -7,7 +7,5 @@ RUN apt-get install -y --no-install-recommends \
7
7
qemu-system-ppc
8
8
9
9
ENV CARGO_TARGET_POWERPC64LE_UNKNOWN_LINUX_GNU_LINKER=powerpc64le-linux-gnu-gcc \
10
- CC_powerpc64le_unknown_linux_gnu=powerpc64le-linux-gnu-gcc \
11
- PATH=$PATH:/rust/bin \
12
10
QEMU_LD_PREFIX=/usr/powerpc64le-linux-gnu \
13
11
RUST_TEST_THREADS=1
Original file line number Diff line number Diff line change @@ -5,4 +5,3 @@ RUN apt-get install -y --no-install-recommends \
5
5
ENV AR_thumbv6m_none_eabi=arm-none-eabi-ar \
6
6
CARGO_TARGET_THUMBV6M_NONE_EABI_LINKER=arm-none-eabi-gcc \
7
7
CC_thumbv6m_none_eabi=arm-none-eabi-gcc \
8
- PATH=$PATH:/rust/bin
Original file line number Diff line number Diff line change @@ -5,4 +5,3 @@ RUN apt-get install -y --no-install-recommends \
5
5
ENV AR_thumbv7em_none_eabi=arm-none-eabi-ar \
6
6
CARGO_TARGET_THUMBV7EM_NONE_EABI_LINKER=arm-none-eabi-gcc \
7
7
CC_thumbv7em_none_eabi=arm-none-eabi-gcc \
8
- PATH=$PATH:/rust/bin
Original file line number Diff line number Diff line change @@ -5,4 +5,3 @@ RUN apt-get install -y --no-install-recommends \
5
5
ENV AR_thumbv7em_none_eabihf=arm-none-eabi-ar \
6
6
CARGO_TARGET_THUMBV7EM_NONE_EABIHF_LINKER=arm-none-eabi-gcc \
7
7
CC_thumbv7em_none_eabihf=arm-none-eabi-gcc \
8
- PATH=$PATH:/rust/bin
Original file line number Diff line number Diff line change @@ -5,4 +5,3 @@ RUN apt-get install -y --no-install-recommends \
5
5
ENV AR_thumbv7m_none_eabi=arm-none-eabi-ar \
6
6
CARGO_TARGET_THUMBV7M_NONE_EABI_LINKER=arm-none-eabi-gcc \
7
7
CC_thumbv7m_none_eabi=arm-none-eabi-gcc \
8
- PATH=$PATH:/rust/bin
Original file line number Diff line number Diff line change @@ -2,5 +2,3 @@ FROM ubuntu:16.04
2
2
RUN apt-get update
3
3
RUN apt-get install -y --no-install-recommends \
4
4
gcc libc6-dev ca-certificates
5
- ENV PATH=$PATH:/rust/bin
6
-
Original file line number Diff line number Diff line change 4
4
set -ex
5
5
6
6
run () {
7
- echo $1
8
- docker build -t $1 ci/docker/$1
7
+ local gid=$( id -g) \
8
+ group=$( id -g -n) \
9
+ target=$1 \
10
+ uid=$( id -u) \
11
+ user=$( id -u -n)
12
+
13
+ echo $target
14
+ docker build -t $target ci/docker/$target
9
15
docker run \
10
- -v ` rustc --print sysroot` :/rust:ro \
11
- -v ` pwd` :/checkout:ro \
12
- -e CARGO_TARGET_DIR=/tmp/target \
13
- -w /checkout \
14
- --privileged \
15
- -it $1 \
16
- sh ci/run.sh $1
16
+ --rm \
17
+ -e CARGO_HOME=/cargo \
18
+ -e CARGO_TARGET_DIR=/target \
19
+ -v $HOME /.cargo:/cargo \
20
+ -v ` pwd` /target:/target \
21
+ -v ` pwd` :/checkout:ro \
22
+ -v ` rustc --print sysroot` :/rust:ro \
23
+ -w /checkout \
24
+ -it $target \
25
+ sh -c "
26
+ groupadd -g $gid $group
27
+ useradd -m -g $gid -u $uid $user
28
+ chown $user /cargo /target
29
+ su -c 'PATH=\$ PATH:/rust/bin ci/run.sh $target ' $user
30
+ "
17
31
}
18
32
19
33
if [ -z " $1 " ]; then
Original file line number Diff line number Diff line change 44
44
45
45
case $TRAVIS_OS_NAME in
46
46
osx)
47
- NM=gnm
48
-
49
47
# NOTE OSx's nm doesn't accept the `--defined-only` or provide an equivalent.
50
48
# Use GNU nm instead
49
+ NM=gnm
51
50
brew install binutils
52
51
;;
53
52
* )
@@ -56,7 +55,7 @@ case $TRAVIS_OS_NAME in
56
55
esac
57
56
58
57
# NOTE On i586, It's normal that the get_pc_thunk symbol appears several times so ignore it
59
- $PREFIX$NM -g --defined-only /tmp/ target/${1} /debug/librustc_builtins.rlib | \
58
+ $PREFIX$NM -g --defined-only /target/${1} /debug/librustc_builtins.rlib | \
60
59
sort | uniq -d | grep -v __x86.get_pc_thunk | grep ' T __'
61
60
62
61
if test $? = 0; then
You can’t perform that action at this time.
0 commit comments