2018-01-16 04:24:44 +08:00
|
|
|
# For Pull Requests, we build only the first three jobs: autotools on Linux,
|
|
|
|
# cmake on Linux, and cmake on Windows 32 bit.
|
|
|
|
#
|
|
|
|
# For branch builds and cron builds (once a day), we build all the jobs. This
|
|
|
|
# is achieved using the "if: type IN (push, api, cron)" fields in the matrix.
|
|
|
|
|
2013-06-25 08:56:38 +08:00
|
|
|
language: c
|
2016-07-13 20:12:11 +08:00
|
|
|
|
2016-08-10 19:28:33 +08:00
|
|
|
matrix:
|
|
|
|
include:
|
2017-12-12 08:28:00 +08:00
|
|
|
- stage: "Stage 1"
|
|
|
|
env: JOB=autotools ENV=linux
|
2017-06-05 02:34:15 +08:00
|
|
|
compiler: gcc
|
2018-01-16 06:13:56 +08:00
|
|
|
addons:
|
|
|
|
apt: &apt-dependencies
|
|
|
|
sources:
|
|
|
|
- avsm
|
|
|
|
- hvr-ghc
|
|
|
|
packages:
|
|
|
|
- alex-3.1.7 # For hstox.
|
|
|
|
- cabal-install-1.18 # For hstox.
|
|
|
|
- check # For tests.
|
|
|
|
- ghc-7.8.4 # For hstox.
|
|
|
|
- happy-1.19.5 # For hstox.
|
|
|
|
- libcv-dev # For av_test.
|
|
|
|
- libhighgui-dev # For av_test.
|
|
|
|
- libopencv-contrib-dev # For av_test.
|
|
|
|
- libsndfile1-dev # For av_test.
|
|
|
|
- libvpx-dev # For toxav.
|
|
|
|
- opam # For apidsl and Frama-C.
|
|
|
|
- aspcud # For Opam
|
|
|
|
- portaudio19-dev # For av_test.
|
|
|
|
- texinfo # For libconfig.
|
2017-12-12 08:28:00 +08:00
|
|
|
- stage: "Stage 1"
|
|
|
|
env: JOB=toxcore ENV=linux
|
2017-06-05 02:34:15 +08:00
|
|
|
compiler: clang
|
2018-01-16 06:13:56 +08:00
|
|
|
addons:
|
|
|
|
apt: *apt-dependencies
|
2017-12-12 08:28:00 +08:00
|
|
|
- stage: "Stage 1"
|
2018-01-22 17:37:31 +08:00
|
|
|
if: type IN (push, api, cron)
|
2017-12-12 08:28:00 +08:00
|
|
|
env: JOB=toxcore ENV=windows ARCH=i686
|
2017-12-14 05:12:26 +08:00
|
|
|
group: deprecated-2017Q4
|
2017-06-05 02:34:15 +08:00
|
|
|
services:
|
|
|
|
- docker
|
2017-12-12 08:28:00 +08:00
|
|
|
- stage: "Stage 1"
|
2018-01-16 04:24:44 +08:00
|
|
|
if: type IN (push, api, cron)
|
2017-12-12 08:28:00 +08:00
|
|
|
env: JOB=toxcore ENV=windows ARCH=x86_64
|
2017-12-14 05:12:26 +08:00
|
|
|
group: deprecated-2017Q4
|
2017-06-05 02:34:15 +08:00
|
|
|
services:
|
|
|
|
- docker
|
2017-12-12 08:28:00 +08:00
|
|
|
- stage: "Stage 1"
|
2018-01-16 04:24:44 +08:00
|
|
|
if: type IN (push, api, cron)
|
2017-12-12 08:28:00 +08:00
|
|
|
env: JOB=toxcore ENV=freebsd
|
|
|
|
dist: trusty
|
|
|
|
sudo: required
|
|
|
|
install: other/travis/phase $JOB $ENV install stage1
|
|
|
|
script: other/travis/phase $JOB $ENV script stage1
|
2017-12-13 12:39:51 +08:00
|
|
|
- stage: "Stage 1"
|
2018-01-16 04:24:44 +08:00
|
|
|
if: type IN (push, api, cron)
|
2017-12-13 12:39:51 +08:00
|
|
|
env: JOB=tox-bootstrapd-docker ENV=linux
|
|
|
|
services:
|
|
|
|
- docker
|
|
|
|
sudo: required
|
2017-12-12 08:28:00 +08:00
|
|
|
- stage: "Stage 2"
|
2018-01-16 04:24:44 +08:00
|
|
|
if: type IN (push, api, cron)
|
2017-12-12 08:28:00 +08:00
|
|
|
env: JOB=toxcore ENV=freebsd
|
2017-03-08 17:10:46 +08:00
|
|
|
dist: trusty
|
|
|
|
sudo: required
|
2017-12-12 08:28:00 +08:00
|
|
|
install: other/travis/phase $JOB $ENV install stage2
|
|
|
|
- stage: "Stage 2"
|
2018-01-16 04:24:44 +08:00
|
|
|
if: type IN (push, api, cron)
|
2017-12-12 08:28:00 +08:00
|
|
|
env: JOB=toxcore ENV=osx RUN_TESTS=true
|
|
|
|
os: osx
|
2016-09-22 21:42:29 +08:00
|
|
|
fast_finish: true
|
2013-06-25 08:56:38 +08:00
|
|
|
|
2016-07-06 16:47:13 +08:00
|
|
|
cache:
|
|
|
|
directories:
|
2017-06-05 02:34:15 +08:00
|
|
|
# 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
|
2017-03-08 17:10:46 +08:00
|
|
|
- /opt/freebsd/cache
|
2016-07-06 16:47:13 +08:00
|
|
|
|
2016-08-25 06:52:34 +08:00
|
|
|
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
|
2013-07-13 06:31:57 +08:00
|
|
|
|
2016-07-13 03:32:35 +08:00
|
|
|
notifications:
|
2016-10-31 02:29:14 +08:00
|
|
|
irc:
|
|
|
|
channels:
|
2017-06-05 02:34:15 +08:00
|
|
|
- "chat.freenode.net#toktok-status"
|
2016-10-31 02:29:14 +08:00
|
|
|
template:
|
2017-06-05 02:34:15 +08:00
|
|
|
- "%{result} %{repository_name} %{build_url}"
|
|
|
|
- "#%{build_number} changes: %{compare_url}"
|
2016-08-11 20:49:49 +08:00
|
|
|
|
|
|
|
branches:
|
|
|
|
only:
|
2017-06-05 02:34:15 +08:00
|
|
|
- master
|