aboutsummaryrefslogtreecommitdiffstats
path: root/.travis/targets/clang-analyzer.sh
blob: 6efadc50cc5319f499dd645fe78319e634a81051 (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
42
43
build() {
    default_configure \
        --enable-silent-rules \
        --disable-tests

    local pn="$(grep PACKAGE_TARNAME config.h | cut -d\" -f2)"
    local pv="$(grep PACKAGE_VERSION config.h | cut -d\" -f2)"
    local p="${pn}-clang-analyzer-${pv}"

    set +e
    scan-build \
        --use-cc="${CC}" \
        -o reports \
        make
    #src/blogc/libblogc_la-debug.lo
    local rv=$?
    set -e

    local num_reports=$(ls -1 reports | wc -l)
    [[ ${num_reports} -eq 0 ]] && return ${rv}
    [[ ${num_reports} -eq 1 ]]

    local reports="reports/$(ls -1 reports)"

    if [[ -d "${reports}" ]]; then
        mv "${reports}" clang-analyzer
        tar \
            -cvJf "${p}.tar.xz" \
            clang-analyzer
        rv=1
    fi

    return ${rv}
}

deploy() {
    FILES=( *.tar.xz )
    [[ ${RV} -ne 0 ]] && [[ "x${CC}" = "xclang" ]]
}

extract() {
    grep .
}