glutin 0.19.0

Cross-platform OpenGL context provider.
Documentation
language: rust

cache: cargo

matrix:
  include:
    # Linux 32bit
    - env: TARGET=i686-unknown-linux-gnu
      os: linux
      rust: nightly
      addons:
        apt:
          # Cross compiler and cross compiled C libraries
          packages: &i686_packages
            - gcc-multilib
    - env: TARGET=i686-unknown-linux-gnu
      os: linux
      rust: stable
      addons:
        apt:
          packages: *i686_packages
    - env: TARGET=i686-unknown-linux-gnu
      os: linux
      rust: 1.24.1
      addons:
        apt:
          packages: *i686_packages

    # Linux 64bit
    - env: TARGET=x86_64-unknown-linux-gnu
      os: linux
      rust: nightly
    - env: TARGET=x86_64-unknown-linux-gnu
      os: linux
      rust: stable
    - env: TARGET=x86_64-unknown-linux-gnu
      os: linux
      rust: 1.24.1

    # macOS
    - env: TARGET=x86_64-apple-darwin
      os: osx
      rust: nightly
    - env: TARGET=x86_64-apple-darwin
      os: osx
      rust: stable
    - env: TARGET=x86_64-apple-darwin
      os: osx
      rust: 1.24.1

    # iOS
    - env: TARGET=x86_64-apple-ios
      os: osx
      rust: nightly
    - env: TARGET=x86_64-apple-ios
      os: osx
      rust: stable
    - env: TARGET=x86_64-apple-ios
      os: osx
      rust: 1.24.1

addons:
  apt:
    packages:
    - libxxf86vm-dev
    - libosmesa6-dev

env:
  global:
    - secure: "kVjHgK+6ivT5tUleNH/m6+69tPf8gkPNSPLsnXrkMJaIeXSnnKKQegP1O0UCThYAUbbwrUGlrKJUngDxkD8jSANhzAULX9t1iXho41InzYBEErTanXBYF8WO1rK1keKjLwiYw4KuvbiBoSeKabzQRwv0kMttxY57+hKVROr5dSg="

install:
  - rustup self update
  - rustup target add $TARGET; true

script:
  - cargo build --target $TARGET --verbose
    # Running iOS apps on OSX requires the simulator so we skip that for now
  - if [ "$TARGET" != "x86_64-apple-ios" ]; then cargo test --target $TARGET --verbose; fi

after_success:
  - |
      [ $TRAVIS_BRANCH = master ] &&
      [ $TRAVIS_PULL_REQUEST = false ] &&
      cargo publish --token ${CRATESIO_TOKEN}