aboutsummaryrefslogtreecommitdiffstats
path: root/etc/woodpecker/analysis.yml
blob: 35cef7f440db1b891cae7afa12d19862021cebea (plain) (blame)
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
branches: master

pipeline:
  analysis:
    image: alpine
    commands: |
      apk add --no-cache build-base cppcheck clang-extra-tools \
          imlib2-dev xorgproto \
          libxft-dev libexif-dev giflib-dev libwebp-dev >/dev/null
      make config.h version.h
      std="c99"
      run_cppcheck() {
        cppcheck --std="$std" --enable=performance,portability \
          --force --quiet --inline-suppr --error-exitcode=1 \
          --max-ctu-depth=8 -j"$(nproc)" \
          $(make OPT_DEP_DEFAULT="$1" dump_cppflags) \
          --suppress=varFuncNullUB --suppress=uninitvar \
          *.c
      }
      run_tidy() {
        checks="$(sed '/^#/d' etc/woodpecker/clang-tidy-checks | paste -d ',' -s)"
        clang-tidy --warnings-as-errors="*" --checks="$checks" --quiet *.c \
                   -- -std="$std" $(make OPT_DEP_DEFAULT="$1" dump_cppflags)
      }
      run_cppcheck "0"
      run_cppcheck "1"
      run_tidy "0"
      run_tidy "1"