polybar/.travis.yml

109 lines
2.9 KiB
YAML
Raw Normal View History

2016-05-31 08:33:30 +00:00
sudo: required
dist: focal
2016-10-11 14:20:19 +00:00
language: cpp
2018-04-07 22:49:51 +00:00
env:
global:
- JOBS=4
2018-04-08 13:29:31 +00:00
- MAKEFLAGS="-j ${JOBS}"
2018-04-07 22:49:51 +00:00
- POLYBAR_BUILD_TYPE="compile"
# Build configurations can either not specify anything for 'addon' and use this
# default list of packages. Or they can pick and choose which package groups to
# install
addons:
apt:
packages:
- &base_deps
- libxcb-composite0-dev
- libxcb-ewmh-dev
- libxcb-icccm4-dev
- libxcb-image0-dev
- libxcb-randr0-dev
- libxcb-util0-dev
- python3-xcbgen
- xcb-proto
- &optional_deps
- libxcb-xkb-dev
- libxcb-cursor-dev
- libxcb-xrm-dev
- libxcb1-dev
- xutils-dev
- i3-wm
2020-02-22 16:51:14 +00:00
- libjsoncpp-dev
- libasound2-dev
- libpulse-dev
- libcairo2-dev
- libiw-dev
- libmpdclient-dev
2018-04-07 22:49:51 +00:00
script: source ${TRAVIS_BUILD_DIR}/common/travis/build.sh
matrix:
include:
2019-04-30 19:54:01 +00:00
# Only builds the documentation
- language: generic
# Doesn't actually do anything, just used for the indicator on travis
compiler: Sphinx
addons: {apt: {packages: [python3-sphinx]}}
before_script:
- mkdir -p doc/build
- cd doc/build
- cmake ..
script: make doc
# Disable unnecessary commands
cache:
2018-04-07 22:49:51 +00:00
- compiler: clang
env: BUILD_TYPE=Release
addons: {apt: {packages: [*base_deps, *optional_deps]}}
2018-04-07 22:49:51 +00:00
- compiler: gcc
env: BUILD_TYPE=Coverage POLYBAR_BUILD_TYPE=tests BUILD_TESTS=ON
addons: {apt: {packages: [*base_deps, *optional_deps]}}
script: make check
after_success:
- cd ${TRAVIS_BUILD_DIR}
- bash <(curl -s https://codecov.io/bash) -F unittests -a "-ap" -Z || echo "Codecov did not collect coverage reports"
2018-04-07 22:49:51 +00:00
- compiler: gcc
env: BUILD_TYPE=Release
addons: {apt: {packages: [*base_deps, *optional_deps]}}
2018-04-07 22:49:51 +00:00
# Minimal build, contains no optional dependencies. This makes sure that
# we properly remove files from compilation that depend on libraries that
# are not installed
- compiler: gcc
env: BUILD_TYPE=Release POLYBAR_BUILD_TYPE=minimal
addons: {apt: {packages: [*base_deps]}}
2016-06-15 03:32:35 +00:00
2016-10-11 14:20:19 +00:00
cache:
ccache: true
apt: true
2016-10-11 14:20:19 +00:00
2016-05-31 08:33:30 +00:00
before_script:
2016-11-19 07:55:46 +00:00
- source ${TRAVIS_BUILD_DIR}/common/travis/summary.sh
- source ${TRAVIS_BUILD_DIR}/common/travis/configure.sh
2016-05-31 08:33:30 +00:00
# Only fetch the newest 5 commits instead of 50
git:
depth: 5
2016-05-31 11:09:42 +00:00
notifications:
2016-11-19 07:31:06 +00:00
email: false
2016-05-31 11:09:42 +00:00
irc:
channels:
2016-11-19 05:22:44 +00:00
- "irc.freenode.org#polybar"
2016-05-31 12:53:37 +00:00
template:
- " %{repository_slug}(%{branch})#%{build_number} | \"%{commit_subject}\" by %{author} | Commit #%{commit} %{result}: %{build_url}"
2016-11-19 07:55:46 +00:00
use_notice: true
on_success: change
on_failure: change
webhooks:
urls:
# For the https://gitter.im/polybar/polybar gitter room
- https://webhooks.gitter.im/e/10bdbe25961312646ace
on_success: change
on_failure: always
on_start: never