diff --git a/.travis.yml b/.travis.yml index ba96dd4e..d315e0a7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,6 +2,18 @@ language: rust matrix: include: + - env: TARGET=x86_64-unknown-linux-gnu + rust: beta + if: branch != master + + - env: TARGET=thumbv6m-none-eabi + rust: beta + if: branch != master + + - env: TARGET=thumbv7m-none-eabi + rust: beta + if: branch != master + - env: TARGET=x86_64-unknown-linux-gnu rust: nightly diff --git a/ci/script.sh b/ci/script.sh index eafda3fd..335da344 100644 --- a/ci/script.sh +++ b/ci/script.sh @@ -1,22 +1,28 @@ set -euxo pipefail main() { - cargo check --target $TARGET + cargo check --target $TARGET --no-default-features + if [ $TRAVIS_RUST_VERSION = nightly ]; then + cargo check --target $TARGET + fi if [ $TARGET = x86_64-unknown-linux-gnu ]; then - cargo test --target $TARGET cargo test --target $TARGET --no-default-features - cargo test --target $TARGET --release cargo test --target $TARGET --release --no-default-features - export RUSTFLAGS="-Z sanitizer=thread" - export RUST_TEST_THREADS=1 - export TSAN_OPTIONS="suppressions=$(pwd)/blacklist.txt" + if [ $TRAVIS_RUST_VERSION = nightly ]; then + cargo test --target $TARGET + cargo test --target $TARGET --release - cargo test --test tsan --target $TARGET - cargo test --test tsan --target $TARGET --no-default-features - cargo test --test tsan --target $TARGET --release - cargo test --test tsan --target $TARGET --release --no-default-features + export RUSTFLAGS="-Z sanitizer=thread" + export RUST_TEST_THREADS=1 + export TSAN_OPTIONS="suppressions=$(pwd)/blacklist.txt" + + cargo test --test tsan --target $TARGET + cargo test --test tsan --target $TARGET --no-default-features + cargo test --test tsan --target $TARGET --release + cargo test --test tsan --target $TARGET --release --no-default-features + fi fi }