if: type = pull_request OR NOT branch =~ /^(master$|optimization)/ OR fork
language: c
sudo: required
services:
- docker
os: linux
env:
- DOCKER_TAG=ubuntu:xenial
- DOCKER_TAG=ubuntu:bionic
- DOCKER_TAG=ubuntu:cosmic
- DOCKER_TAG=ubuntu:disco
- DOCKER_TAG=3ds
- DOCKER_TAG=wii
- DOCKER_TAG=vita
- DOCKER_TAG=switch
- DOCKER_TAG=windows:w32
- DOCKER_TAG=windows:w64

matrix:
  include:
  - os: osx
    compiler: clang
    env: DOCKER_TAG=

before_install:
- '[ -z "$DOCKER_TAG" ] || docker pull mgba/$DOCKER_TAG'
- '[ "$TRAVIS_OS_NAME" != "osx" ] || . ./.travis-deps.sh'
- 'mkdir build && chmod 777 build'

script:
- '[ -z "$DOCKER_TAG" ] || docker run -e BUILD_DIR=build -e MAKEFLAGS=-j2 -v $PWD:/home/mgba/src mgba/$DOCKER_TAG'
- '[ "$TRAVIS_OS_NAME" != "osx" ] || (cd build && cmake -DCMAKE_PREFIX_PATH="/usr/local/opt/qt5" .. && make -j2)'
