language: rust
rust:
  - 1.20.0
  - stable
  - beta
  - nightly

cache: cargo

addons:
  apt:
    packages:
      - gcc-arm-linux-gnueabihf
      - libc6-dev-armhf-cross
      - libpulse-dev
      - portaudio19-dev

before_script:
    - mkdir -p ~/.cargo
    - echo '[target.armv7-unknown-linux-gnueabihf]' > ~/.cargo/config
    - echo 'linker = "arm-linux-gnueabihf-gcc"' >> ~/.cargo/config
    - rustup target add armv7-unknown-linux-gnueabihf

script:
    - cargo build --no-default-features
    - cargo build --no-default-features --features "with-tremor"
    - cargo build --no-default-features --features "with-vorbis"
    - cargo build --no-default-features --features "portaudio-backend"
    - cargo build --no-default-features --features "pulseaudio-backend"
    - cargo build --no-default-features --features "alsa-backend"
    - cargo build --no-default-features --target armv7-unknown-linux-gnueabihf

notifications:
  email: false
  webhooks:
    urls:
      - https://webhooks.gitter.im/e/780b178b15811059752e
    on_success: change  # options: [always|never|change] default: always
    on_failure: always  # options: [always|never|change] default: always
    on_start: never     # options: [always|never|change] default: always