blob: bbd1eeb071c7c5fdd18c55204e991bf233b1c70f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
|
#
# Operating Environment
#
language: rust
sudo: false
dist: trusty
services:
- docker
addons:
apt:
packages:
- gcc-multilib
- libcurl4-openssl-dev
- libelf-dev
- libdw-dev
- binutils-dev
rust:
- 1.7.0 # Oldest supported version
- stable
- beta
- nightly
#
# Environment Variables and Build Matrix
#
env:
global:
- PATH=$HOME/.local/bin:$PATH
- TRAVIS_CARGO_NIGHTLY_FEATURE=""
matrix:
- ARCH=x86_64
- ARCH=i686
os: # OSX included in build matrix explicitly
- linux
# Failures on nightly shouldn't fail the overall build.
matrix:
fast_finish: true
include:
# 32-bit and 64-bit OSX builds on oldest/stable
- os: osx
env: ARCH=x86_64
rust: stable
- os: osx
env: ARCH=i686
rust: stable
# Docker builds for other targets
- os: linux
env: TARGET=aarch64-unknown-linux-gnu DOCKER_IMAGE=posborne/rust-cross:arm
rust: 1.7.0
sudo: true
- os: linux
env: TARGET=arm-unknown-linux-gnueabihf DOCKER_IMAGE=posborne/rust-cross:arm
rust: 1.7.0
sudo: true
- os: linux
env: TARGET=mips-unknown-linux-gnu DOCKER_IMAGE=posborne/rust-cross:mips
rust: 1.7.0
sudo: true
- os: linux
env: TARGET=mipsel-unknown-linux-gnu DOCKER_IMAGE=posborne/rust-cross:mips
rust: 1.7.0
sudo: true
- os: linux
env: TARGET=arm-linux-androideabi DOCKER_IMAGE=posborne/rust-cross:android
rust: 1.7.0
sudo: true
allow_failures:
- rust: nightly
# Fail on beta failures again, when 1.13.0-beta.3 or newer is released.
- rust: beta
- env: TARGET=mips-unknown-linux-gnu DOCKER_IMAGE=posborne/rust-cross:mips
- env: TARGET=mipsel-unknown-linux-gnu DOCKER_IMAGE=posborne/rust-cross:mips
- env: TARGET=arm-linux-androideabi DOCKER_IMAGE=posborne/rust-cross:android
#
# Build/Test/Deploy Steps
#
before_script:
- pip install 'travis-cargo<0.2' --user
script:
- bash ci/run-travis.sh
- |
if [ "$TRAVIS_OS_NAME" = "linux" ]; then
travis-cargo --only stable doc
fi
after_success:
- |
if [ "$TRAVIS_OS_NAME" = "linux" ] && \
[ "$TRAVIS_RUST_VERSION" = "stable" ] && \
[ "$ARCH" = "x86_64" ]; then
# Upload docs for stable (on master) to gh-pages
travis-cargo --only stable doc-upload
# Measure code coverage using kcov and upload to coveralls.io
travis-cargo coveralls --no-sudo --verify
fi
|