mirror of
https://github.com/irungentoo/toxcore.git
synced 2024-03-22 13:30:51 +08:00
1a54be06cd
Have one script per build. This means more duplication between the scripts, but it's much easier to understand and to run locally.
89 lines
2.6 KiB
YAML
89 lines
2.6 KiB
YAML
# 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.
|
|
|
|
language: c
|
|
|
|
matrix:
|
|
include:
|
|
- stage: "Stage 1"
|
|
env: JOB=cmake-linux
|
|
compiler: gcc
|
|
addons:
|
|
apt:
|
|
packages:
|
|
- libconfig-dev # For tox-bootstrapd.
|
|
- libcv-dev # For av_test.
|
|
- libhighgui-dev # For av_test.
|
|
- libopencv-contrib-dev # For av_test.
|
|
- libopus-dev # For toxav.
|
|
- libsndfile1-dev # For av_test.
|
|
- libgtest-dev # For unit tests.
|
|
- libvpx-dev # For toxav.
|
|
- portaudio19-dev # For av_test.
|
|
install: .travis/$JOB install
|
|
script: .travis/$JOB script
|
|
after_script: .travis/upload-coverage
|
|
- stage: "Stage 1"
|
|
env: JOB=autotools-linux
|
|
compiler: clang
|
|
addons:
|
|
apt:
|
|
packages:
|
|
- libconfig-dev # For tox-bootstrapd.
|
|
- libopus-dev # For toxav.
|
|
- libvpx-dev # For toxav.
|
|
install: .travis/$JOB install
|
|
script: .travis/$JOB script
|
|
- stage: "Stage 1"
|
|
if: type IN (push, api, cron)
|
|
env: JOB=cmake-win32
|
|
services: [docker]
|
|
install: .travis/$JOB install
|
|
script: .travis/$JOB script
|
|
- stage: "Stage 1"
|
|
if: type IN (push, api, cron)
|
|
env: JOB=cmake-win64
|
|
services: [docker]
|
|
install: .travis/$JOB install
|
|
script: .travis/$JOB script
|
|
- stage: "Stage 1"
|
|
if: type IN (push, api, cron)
|
|
env: JOB=cmake-freebsd
|
|
sudo: required
|
|
install: .travis/$JOB-stage1 install
|
|
script: .travis/$JOB-stage1 script
|
|
- stage: "Stage 1"
|
|
if: type IN (push, api, cron)
|
|
env: JOB=tox-bootstrapd-docker
|
|
services: [docker]
|
|
script: .travis/$JOB
|
|
- stage: "Stage 2"
|
|
if: type IN (push, api, cron)
|
|
env: JOB=cmake-freebsd
|
|
sudo: required
|
|
install: .travis/$JOB-stage2 install
|
|
script: .travis/$JOB-stage2 script
|
|
- stage: "Stage 2"
|
|
if: type IN (push, api, cron)
|
|
env: JOB=cmake-osx
|
|
os: osx
|
|
install: .travis/$JOB install
|
|
script: .travis/$JOB script
|
|
fast_finish: true
|
|
|
|
cache:
|
|
directories:
|
|
- $HOME/cache
|
|
- /opt/freebsd/cache
|
|
|
|
notifications:
|
|
irc:
|
|
channels:
|
|
- "chat.freenode.net#toktok-status"
|
|
template:
|
|
- "%{result} %{repository_name} %{build_url}"
|
|
- "#%{build_number} changes: %{compare_url}"
|