# Make Travis use docker (for faster builds, in theory).
# TODO(benvanik): re-enable when clang-3.8 is whitelisted.
# https://github.com/travis-ci/apt-package-whitelist/issues/474
#sudo: false

language: cpp
compiler:
  - clang
  # - gcc

os:
  - linux
  # - osx

env:
  global:
    - LLVM_VERSION=3.8.0
    - LLVM_ARCHIVE_PATH=$HOME/clang+llvm.tar.xz

dist: trusty
sudo: required
addons:
  apt:
    sources:
      - ubuntu-toolchain-r-test
      # - llvm-toolchain-precise
    packages:
      # - clang-3.8
      # - clang-format-3.8

git:
  # We handle submodules ourselves in xenia-build setup.
  submodules: false

before_install:
  - wget http://llvm.org/releases/$LLVM_VERSION/clang+llvm-$LLVM_VERSION-x86_64-linux-gnu-ubuntu-14.04.tar.xz -O $LLVM_ARCHIVE_PATH
  - mkdir $HOME/clang+llvm
  - tar xf $LLVM_ARCHIVE_PATH -C $HOME/clang+llvm --strip-components 1
  - export PATH=$HOME/clang+llvm/bin:$PATH

before_script:
  # Dump useful info.
  - $CXX --version
  # Prepare environment (pull dependencies, build tools).
  - travis_retry ./xenia-build setup

script:
  # Run linter.
  - ./xenia-build lint --all
  # Run style checker.
  #- ./xenia-build style
  # TODO(DrChat): Enable builds in the future.
  # Build and run our simple hello world test.
  # - ./xenia-build build --config=debug --target=xenia-base-tests
  # - ./build/bin/Linux/Debug/xenia-base-tests
  # Build all of xenia.
  #- ./xenia-build build --config=debug
  # All tests (without haswell support).
  #- ./xenia-build test --config=debug --no-build -- --enable_haswell_instructions=false
  # All tests (with haswell support).
  #- ./xenia-build test --config=debug --no-build -- --enable_haswell_instructions=true
