dist: xenial
language: rust
matrix:
include:
- os: linux
rust: nightly
env: GTK=3.14 FEATURES=
- os: linux
rust: nightly
env: GTK=3.24 FEATURES=
- os: linux
rust: beta
env: GTK=3.14 FEATURES=
- os: linux
rust: beta
env: GTK=3.24 FEATURES=
- os: linux
rust: 1.39.0
env: GTK=3.14 FEATURES=
- os: linux
rust: 1.39.0
env: GTK=3.24 FEATURES=
- os: osx
rust: nightly
env: GTK=3.14 FEATURES=
- os: osx
rust: beta
env: GTK=3.14 FEATURES=
- os: osx
rust: stable
env: GTK=3.14 FEATURES=
sudo: true
addons:
apt:
packages:
- libgtk-3-dev
- libmount-dev
before_install:
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update; fi
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install gtk+3 cairo atk; fi
script:
- rustc --version
- if [ "$TRAVIS_RUST_VERSION" == "stable" ] && [ "$GTK" == "3.14" ]; then
rustup component add rustfmt;
cargo fmt --all -- --check;
fi
- cargo doc --features "dox,embed-lgpl-docs"
- cargo test --features "$FEATURES,png,pdf,svg,pdf,xcb"
- cargo test --no-default-features --features "$FEATURES,png,pdf,svg,pdf,xcb"
- cd cairo-sys-rs
- cargo rustdoc --no-default-features --features "dox xlib png pdf svg ps xcb use_glib win32-surface"
- cargo rustdoc --no-default-features --features "dox xlib png pdf svg ps xcb use_glib"
- cd ..
- cargo build --features purge-lgpl-docs
- git diff -R --exit-code
- mkdir .cargo
- echo 'paths = [".", "./cairo-sys-rs"]' > .cargo/config
- git clone -q --depth 50 -b pending https://github.com/gtk-rs/examples _examples
- cd _examples
- ./build_travis.sh