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. - 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