1
0
Fork 0
mirror of https://github.com/polybar/polybar.git synced 2024-11-11 13:50:56 -05:00
polybar/.travis.yml

108 lines
2.9 KiB
YAML
Raw Normal View History

2016-05-31 04:33:30 -04:00
sudo: required
dist: xenial
2016-10-11 10:20:19 -04:00
language: cpp
2018-04-07 18:49:51 -04:00
env:
global:
- JOBS=4
2018-04-08 09:29:31 -04:00
- MAKEFLAGS="-j ${JOBS}"
2018-04-07 18:49:51 -04: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
- python-xcbgen
- xcb-proto
- &optional_deps
- libxcb-xkb-dev
- libxcb-cursor-dev
- libxcb1-dev
- xutils-dev
- i3-wm
- libasound2-dev
- libpulse-dev
- libcairo2-dev
- libiw-dev
- libmpdclient-dev
2018-04-07 18:49:51 -04:00
script: source ${TRAVIS_BUILD_DIR}/common/travis/build.sh
matrix:
include:
2019-04-30 15:54:01 -04: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
install:
cache:
2018-04-07 18:49:51 -04:00
- compiler: clang
env: BUILD_TYPE=Release
addons: {apt: {packages: [*base_deps, *optional_deps]}}
2018-04-07 18:49:51 -04: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 18:49:51 -04:00
- compiler: gcc
env: BUILD_TYPE=Release
addons: {apt: {packages: [*base_deps, *optional_deps]}}
2018-04-07 18:49:51 -04: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-14 23:32:35 -04:00
2016-10-11 10:20:19 -04:00
cache:
ccache: true
apt: true
2016-10-11 10:20:19 -04:00
directories:
2017-01-19 21:30:03 -05:00
- ${TRAVIS_BUILD_DIR}/deps/xcb-util-xrm
2016-10-11 10:20:19 -04:00
2016-06-14 23:32:35 -04:00
install:
2017-01-25 09:21:58 -05:00
- DEPS_DIR="${TRAVIS_BUILD_DIR}/deps"
- mkdir -p "${DEPS_DIR}" && cd "${DEPS_DIR}"
2017-01-19 21:30:03 -05:00
- source ${TRAVIS_BUILD_DIR}/common/travis/install_xcb_xrm.sh
2016-10-11 10:20:19 -04:00
2016-05-31 04:33:30 -04:00
before_script:
2016-11-19 02:55:46 -05:00
- source ${TRAVIS_BUILD_DIR}/common/travis/summary.sh
- source ${TRAVIS_BUILD_DIR}/common/travis/configure.sh
2016-05-31 04:33:30 -04:00
# Only fetch the newest 5 commits instead of 50
git:
depth: 5
2016-05-31 07:09:42 -04:00
notifications:
2016-11-19 02:31:06 -05:00
email: false
2016-05-31 07:09:42 -04:00
irc:
channels:
2016-11-19 00:22:44 -05:00
- "irc.freenode.org#polybar"
2016-05-31 08:53:37 -04:00
template:
- " %{repository_slug}(%{branch})#%{build_number} | \"%{commit_subject}\" by %{author} | Commit #%{commit} %{result}: %{build_url}"
2016-11-19 02:55:46 -05:00
use_notice: true
on_success: change
on_failure: change