2016-05-31 04:33:30 -04:00
|
|
|
sudo: required
|
2018-12-23 17:14:55 -05:00
|
|
|
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"
|
|
|
|
|
2018-05-19 11:02:14 -04:00
|
|
|
# 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
|
2018-12-02 10:39:14 -05:00
|
|
|
- libxcb-composite0-dev
|
2018-05-19 11:02:14 -04:00
|
|
|
- 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:
|
|
|
|
- compiler: clang
|
|
|
|
env: BUILD_TYPE=Release
|
2018-12-23 17:14:55 -05:00
|
|
|
addons: {apt: {packages: [*base_deps, *optional_deps]}}
|
2018-04-07 18:49:51 -04:00
|
|
|
|
|
|
|
- compiler: gcc
|
2018-11-21 12:46:33 -05:00
|
|
|
env: BUILD_TYPE=Coverage POLYBAR_BUILD_TYPE=tests BUILD_TESTS=ON
|
2018-12-23 17:14:55 -05:00
|
|
|
addons: {apt: {packages: [*base_deps, *optional_deps]}}
|
2019-01-11 08:35:13 -05:00
|
|
|
script: make check
|
2018-04-07 19:37:58 -04:00
|
|
|
after_success:
|
2018-04-16 14:03:34 -04:00
|
|
|
- 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
|
2018-12-23 17:14:55 -05:00
|
|
|
addons: {apt: {packages: [*base_deps, *optional_deps]}}
|
2018-04-07 18:49:51 -04:00
|
|
|
|
2018-05-19 11:13:23 -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
|
2018-12-23 17:14:55 -05:00
|
|
|
addons: {apt: {packages: [*base_deps]}}
|
2016-06-14 23:32:35 -04:00
|
|
|
|
2016-10-11 10:20:19 -04:00
|
|
|
cache:
|
2018-04-08 09:16:03 -04:00
|
|
|
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
|
|
|
|
2018-04-08 09:22:22 -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:
|
2016-11-19 02:55:46 -05:00
|
|
|
- "%{author} pushed #%{commit} \"%{commit_subject}\" to %{repository_name}/%{branch}"
|
|
|
|
- "Build #%{build_number} %{result} / %{build_url} (diff: %{compare_url})"
|
|
|
|
use_notice: true
|
|
|
|
on_success: change
|
|
|
|
on_failure: change
|