glib 0.8.1

Rust bindings for the GLib library
Documentation
dist: xenial
language: rust
matrix:
  include:
    - os: linux
      rust: nightly
      env: GTK=3.14 FEATURES=subclassing,futures
    - os: linux
      rust: nightly
      env: GTK=3.24 FEATURES=subclassing,v2_48,futures
    - os: linux
      rust: beta
      env: GTK=3.14 FEATURES=subclassing
    - os: linux
      rust: beta
      env: GTK=3.24 FEATURES=subclassing,v2_48
    - os: linux
      rust: 1.34.0
      env: GTK=3.14 FEATURES=subclassing
    - os: linux
      rust: 1.34.0
      env: GTK=3.24 FEATURES=subclassing,v2_48
    - os: osx
      rust: nightly
      env: GTK=3.14 FEATURES=subclassing,futures
    # - os: osx
    #   rust: nightly
    #   env: GTK=3.24 FEATURES=subclassing,v2_48,futures
    - os: osx
      rust: beta
      env: GTK=3.14 FEATURES=subclassing
    # - os: osx
    #   rust: beta
    #   env: GTK=3.24 FEATURES=subclassing,v2_48
    - os: osx
      rust: stable
      env: GTK=3.14 FEATURES=subclassing
    # - os: osx
    #   rust: stable
    #   env: GTK=3.24 FEATURES=subclassing,v2_48
    - os: linux
      rust: nightly
      env: GTK=3.14 FEATURES=subclassing,futures ARM=1 OTHER_TARGET="--target armv7-unknown-linux-gnueabihf"
    - os: linux
      rust: nightly
      env: GTK=3.24 FEATURES=subclassing,v2_48,futures ARM=1 OTHER_TARGET="--target armv7-unknown-linux-gnueabihf"
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
  - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:/opt/X11/lib/pkgconfig:/usr/local/opt/libffi/lib/pkgconfig; fi
  - if [[ "$ARM" == "1" ]]; then rustup target add armv7-unknown-linux-gnueabihf; fi
script:
  - if [ "$TRAVIS_RUST_VERSION" == "beta" ]; then
    rustup component add clippy;
    cargo clippy --release;
    fi
  - if [ "$TRAVIS_RUST_VERSION" == "nightly" ] && [ "$GTK" == "3.14" ] && ! [ "$ARM" == "1" ]; then
    rustup component add rustfmt;
    make regen_check;
    fi
  - if ! [ "$ARM" == "1" ]; then
    cargo doc --features "dox";
    fi
  - if ! [ "$ARM" == "1" ]; then
    cargo test --features "$FEATURES";
    fi
  - if [ "$ARM" == "1" ]; then
    PKG_CONFIG_ALLOW_CROSS=1 cargo build --features "$FEATURES" $OTHER_TARGET;
    fi
  - rustc --version
  - mkdir .cargo
  - echo 'paths = ["."]' > .cargo/config
  - git clone -q --depth 50 -b pending https://github.com/gtk-rs/examples _examples
  - cd _examples
  - ./build_travis.sh