language: rust
rust:
  - stable
  - beta
  - nightly
matrix:
  include:
    # Minimum version supported
    - rust: 1.13.0
      install:
      script: cargo build

sudo: false
install:
  - if [ "$TRAVIS_OS_NAME" = "linux" ]; then OS=unknown-linux-gnu; else OS=apple-darwin; fi
  - export TARGET=$ARCH-$OS
  - if [ -z "$NO_ADD" ]; then rustup target add $TARGET; fi
before_script:
  - pip install 'travis-cargo<0.2' --user && export PATH=$HOME/.local/bin:$PATH
script:
  - cargo build --verbose
  - cargo test --verbose
  - cargo test --verbose --features parallel
  - cargo test --manifest-path gcc-test/Cargo.toml --target $TARGET
  - cargo test --manifest-path gcc-test/Cargo.toml --target $TARGET --features parallel
  - cargo test --manifest-path gcc-test/Cargo.toml --target $TARGET --release
  - cargo doc
  - cargo clean && cargo build
  - rustdoc --test README.md -L target/debug -L target/debug/deps
after_success:
  - travis-cargo --only nightly doc-upload
env:
  global:
    secure: "CBtqrudgE0PS8x3kTr44jKbC2D4nfnmdYVecooNm0qnER4B4TSvZpZSQoCgKK6k4BYQuOSyFTOwYx6M79w39ZMOgyCP9ytB+tyMWL0/+ZuUQL04yVg4M5vd3oJMkOaXbvG56ncgPyFrseY+FPDg+mXAzvJk/nily37YXjkQj2D0="

  matrix:
    - ARCH=x86_64 NO_ADD=1
    - ARCH=i686
notifications:
  email:
    on_success: never
os:
  - linux
  - osx
addons:
  apt:
    packages:
      - g++-multilib
