|
|
|
# Based on the "trust" template v0.1.2
|
|
|
|
# https://github.com/japaric/trust/tree/v0.1.2
|
|
|
|
|
|
|
|
dist: trusty
|
|
|
|
language: rust
|
|
|
|
rust:
|
|
|
|
- nightly
|
|
|
|
sudo: required
|
|
|
|
|
|
|
|
# TODO Rust builds on stable by default, this can be
|
|
|
|
# overridden on a case by case basis down below.
|
|
|
|
|
|
|
|
|
|
|
|
matrix:
|
|
|
|
# TODO These are all the build jobs. Adjust as necessary. Comment out what you
|
|
|
|
# don't need
|
|
|
|
include:
|
|
|
|
# Android
|
|
|
|
#- env: TARGET=aarch64-linux-android DISABLE_TESTS=1
|
|
|
|
#- env: TARGET=arm-linux-androideabi DISABLE_TESTS=1
|
|
|
|
#- env: TARGET=armv7-linux-androideabi DISABLE_TESTS=1
|
|
|
|
#- env: TARGET=i686-linux-android DISABLE_TESTS=1
|
|
|
|
#- env: TARGET=x86_64-linux-android DISABLE_TESTS=1
|
|
|
|
|
|
|
|
# iOS
|
|
|
|
#- env: TARGET=aarch64-apple-ios DISABLE_TESTS=1
|
|
|
|
# os: osx
|
|
|
|
#- env: TARGET=armv7-apple-ios DISABLE_TESTS=1
|
|
|
|
# os: osx
|
|
|
|
#- env: TARGET=armv7s-apple-ios DISABLE_TESTS=1
|
|
|
|
# os: osx
|
|
|
|
#- env: TARGET=i386-apple-ios DISABLE_TESTS=1
|
|
|
|
# os: osx
|
|
|
|
#- env: TARGET=x86_64-apple-ios DISABLE_TESTS=1
|
|
|
|
# os: osx
|
|
|
|
|
|
|
|
# Linux
|
|
|
|
#- env: TARGET=aarch64-unknown-linux-gnu
|
|
|
|
# Raspberry Pi
|
|
|
|
- env: TARGET=arm-unknown-linux-gnueabi DISABLE_EXAMPLES=1
|
|
|
|
# Raspberry Pi 3...
|
|
|
|
- env: TARGET=armv7-unknown-linux-gnueabihf DISABLE_EXAMPLES=1
|
|
|
|
#- env: TARGET=i686-unknown-linux-gnu
|
|
|
|
#- env: TARGET=i686-unknown-linux-musl
|
|
|
|
#- env: TARGET=mips-unknown-linux-gnu
|
|
|
|
#- env: TARGET=mips64-unknown-linux-gnuabi64
|
|
|
|
#- env: TARGET=mips64el-unknown-linux-gnuabi64
|
|
|
|
#- env: TARGET=mipsel-unknown-linux-gnu
|
|
|
|
#- env: TARGET=powerpc-unknown-linux-gnu
|
|
|
|
#- env: TARGET=powerpc64-unknown-linux-gnu
|
|
|
|
#- env: TARGET=powerpc64le-unknown-linux-gnu
|
|
|
|
#- env: TARGET=s390x-unknown-linux-gnu DISABLE_TESTS=1
|
|
|
|
- env: TARGET=x86_64-unknown-linux-gnu
|
|
|
|
- env: TARGET=x86_64-unknown-linux-musl
|
|
|
|
|
|
|
|
# OSX
|
|
|
|
#- env: TARGET=i686-apple-darwin
|
|
|
|
# os: osx
|
|
|
|
#- env: TARGET=x86_64-apple-darwin
|
|
|
|
# os: osx
|
|
|
|
|
|
|
|
# *BSD
|
|
|
|
#- env: TARGET=i686-unknown-freebsd DISABLE_TESTS=1
|
|
|
|
#- env: TARGET=x86_64-unknown-freebsd DISABLE_TESTS=1
|
|
|
|
#- env: TARGET=x86_64-unknown-netbsd DISABLE_TESTS=1
|
|
|
|
|
|
|
|
# Windows
|
|
|
|
#- env: TARGET=x86_64-pc-windows-gnu
|
|
|
|
|
|
|
|
# Bare metal
|
|
|
|
# These targets don't support std and as such are likely not suitable for
|
|
|
|
# most crates.
|
|
|
|
- env: TARGET=thumbv6m-none-eabi
|
|
|
|
- env: TARGET=thumbv7em-none-eabi
|
|
|
|
- env: TARGET=thumbv7em-none-eabihf
|
|
|
|
- env: TARGET=thumbv7m-none-eabi
|
|
|
|
|
|
|
|
# Testing other channels
|
|
|
|
#- env: TARGET=x86_64-unknown-linux-gnu
|
|
|
|
# rust: nightly
|
|
|
|
#- env: TARGET=x86_64-apple-darwin
|
|
|
|
# os: osx
|
|
|
|
# rust: nightly
|
|
|
|
|
|
|
|
#- env: TEST_DIR=examples/embedded_linux
|
|
|
|
#- env: TEST_DIR=examples/f3_stm32f30x
|
|
|
|
|
|
|
|
before_install:
|
|
|
|
- set -e
|
|
|
|
- rustup self update
|
|
|
|
|
|
|
|
|
|
|
|
install:
|
|
|
|
- cargo install cargo-travis || true
|
|
|
|
- rustup override set nightly
|
|
|
|
- rustup target add thumbv7m-none-eabi
|
|
|
|
- rustup component add clippy-preview
|
|
|
|
|
|
|
|
#TODO: remove -A clippy::new_ret_no_self when new version of clippy gets released!
|
|
|
|
script:
|
|
|
|
- cargo check
|
|
|
|
- cargo clippy --all-targets --all-features -- -D warnings -A clippy::new_ret_no_self
|
|
|
|
- cargo test --all-features --release
|
|
|
|
- cargo doc --all-features --release
|
|
|
|
- cd examples/embedded_linux_epd4in2 && cargo check && cd ../../
|
|
|
|
- cd examples/embedded_linux_epd1in54 && cargo check && cd ../../
|
|
|
|
# - cd examples/stm32f3discovery && cargo check --target thumbv7m-none-eabi && cd ../../
|
|
|
|
#- cd ../f3_stm32f30x && cargo build
|
|
|
|
|
|
|
|
after_success:
|
|
|
|
#- cargo doc-upload
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
cache: cargo
|
|
|
|
before_cache:
|
|
|
|
# Travis can't cache files that are not readable by "others"
|
|
|
|
- chmod -R a+r $HOME/.cargo
|
|
|
|
|
|
|
|
branches:
|
|
|
|
only:
|
|
|
|
# release tags
|
|
|
|
- /^v\d+\.\d+\.\d+.*$/
|
|
|
|
- master
|
|
|
|
|
|
|
|
notifications:
|
|
|
|
email:
|
|
|
|
on_success: never
|