summaryrefslogtreecommitdiff
path: root/.travis.yml
blob: 02c9223c1a4dc0965f3411e32ac29698fd404e87 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
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)