mirror of
https://github.com/irungentoo/toxcore.git
synced 2024-03-22 13:30:51 +08:00
91 lines
2.7 KiB
YAML
91 lines
2.7 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 jobs list.
|
|
|
|
language: c
|
|
dist: xenial
|
|
os: linux
|
|
|
|
jobs:
|
|
include:
|
|
- stage: "Stage 1"
|
|
env: JOB=cmake-linux
|
|
compiler: gcc
|
|
addons:
|
|
apt:
|
|
packages:
|
|
- libconfig-dev # For tox-bootstrapd.
|
|
- libopus-dev # For toxav.
|
|
- libsodium-dev # For toxcore.
|
|
- libgtest-dev # For unit tests.
|
|
- libvpx-dev # For toxav.
|
|
- ninja-build
|
|
- pylint3
|
|
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"
|
|
env: JOB=tox-bootstrapd-docker
|
|
services: [docker]
|
|
script: .travis/$JOB
|
|
- 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
|
|
install: .travis/$JOB-stage1 install
|
|
script: .travis/$JOB-stage1 script
|
|
- stage: "Stage 1"
|
|
if: type IN (push, api, cron)
|
|
env: JOB=cmake-osx
|
|
os: osx
|
|
install: .travis/$JOB install
|
|
script: .travis/$JOB script
|
|
- stage: "Stage 2"
|
|
if: type IN (push, api, cron)
|
|
env: JOB=cmake-freebsd
|
|
install: .travis/$JOB-stage2 install
|
|
script: .travis/$JOB-stage2 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}"
|
|
|
|
# Only build pull requests and releases, don't build master on pushes,
|
|
# except through api or cron.
|
|
if: type IN (pull_request, api, cron) OR tag IS present
|