84ad5c93db
New matrix for 5 jobs in total. Updates our checks to bionic & xenial. Trusty could also be included but it is a bit outdated at this point. I use bionic to pull a more recent clang-format and use a dedicated job just to check formatting. An alternative would be to conditionally run the formatting script only on bionic. I don't think that there is a better way to expand a `dist` x `compiler` matrix (except using docker).
42 lines
1.3 KiB
YAML
42 lines
1.3 KiB
YAML
os: linux
|
|
language: c
|
|
|
|
jobs:
|
|
include:
|
|
- name: "clang-format check"
|
|
dist: bionic
|
|
addons:
|
|
apt:
|
|
packages:
|
|
- clang-format-6.0
|
|
script:
|
|
- clang-format-6.0 -i $(find . -name "*.[ch]" | tr '\n' ' ') && git diff --exit-code || (echo 'Code was not formatted using clang-format!'; false)
|
|
- dist: xenial
|
|
compiler: gcc
|
|
- dist: xenial
|
|
compiler: clang
|
|
- dist: bionic
|
|
compiler: gcc
|
|
- dist: bionic
|
|
compiler: clang
|
|
|
|
addons:
|
|
# See http://docs.travis-ci.com/user/apt/
|
|
apt:
|
|
packages:
|
|
- libconfuse-dev
|
|
- libyajl-dev
|
|
- libasound2-dev
|
|
- libpulse-dev
|
|
- libnl-genl-3-dev
|
|
- asciidoc
|
|
# xmlto pulls in a2x which we need for generating manpages from asciidoc.
|
|
- xmlto
|
|
- libcap2-bin
|
|
- pulseaudio
|
|
script:
|
|
# TODO: re-enable sanitizers once issues are fixed
|
|
- autoreconf -fi && mkdir -p build && cd build && (../configure --disable-sanitizers || (cat config.log; false)) && make -j 8 V=1 && ldd ./i3status |& grep -q pulse || (echo "not linked against pulseaudio"; exit 1)
|
|
- make clean && (../configure --disable-sanitizers --disable-pulseaudio || (cat config.log; false)) && make -j 8 V=1 && ldd ./i3status |& grep -q pulse && (echo "linked against pulseaudio"; exit 1) || true
|
|
- make -j 8 check V=1 || (cat test-suite.log; false)
|