toxcore/.travis.yml
2017-04-01 17:47:34 +02:00

74 lines
2.1 KiB
YAML

language: c
matrix:
include:
# OSX build comes first because Travis queues builds in order. The OSX
# builds are often pushed on a very long (100-200 jobs) backlog, so they get
# highest priority in our build sequence.
- env: JOB=toxcore ENV=osx RUN_TESTS=false
os: osx
- env: JOB=toxcore ENV=osx RUN_TESTS=true
os: osx
- env: JOB=hstox ENV=linux
language: haskell
ghc: 7.8
- env: JOB=autotools ENV=linux
compiler: gcc
- env: JOB=toxcore ENV=linux
compiler: clang
- env: JOB=toxcore ENV=windows ARCH=i686
services:
- docker
- env: JOB=toxcore ENV=windows ARCH=x86_64
services:
- docker
fast_finish: true
allow_failures:
- env: JOB=toxcore ENV=osx RUN_TESTS=true
addons:
apt:
sources:
- avsm
packages:
- check
- libcv-dev # For av_test.
- libev-dev # For tox_loop.
- libevent-dev # For tox_loop.
- libhighgui-dev # For av_test.
- libopencv-contrib-dev # For av_test.
- libsndfile1-dev # For av_test.
- libvpx-dev
- opam # For apidsl and Frama-C.
- portaudio19-dev # For av_test.
- texinfo # For libconfig.
cache:
directories:
# Although Travis documentation says not to rely on the value of $HOME, we
# rely on it here because cabal installs its packages there by default. If
# that ever changes, these values need to be updated.
# Note that we can't use shell expressions in these paths, so we can't ask
# cabal where its data is stored.
- $HOME/.cabal
- $HOME/.ghc
- $HOME/cache
install: other/travis/phase $JOB $ENV install
script: other/travis/phase $JOB $ENV script
after_script: other/travis/phase $JOB $ENV after_script
after_failure: other/travis/phase $JOB $ENV after_failure
notifications:
irc:
channels:
- "chat.freenode.net#toktok-status"
template:
- "%{result} %{repository_name} %{build_url}"
- "#%{build_number} changes: %{compare_url}"
branches:
only:
- master