aboutsummaryrefslogtreecommitdiffstats
path: root/.travis/targets/clang-analyzer.sh
diff options
context:
space:
mode:
Diffstat (limited to '.travis/targets/clang-analyzer.sh')
-rw-r--r--.travis/targets/clang-analyzer.sh42
1 files changed, 42 insertions, 0 deletions
diff --git a/.travis/targets/clang-analyzer.sh b/.travis/targets/clang-analyzer.sh
new file mode 100644
index 0000000..bd2d61d
--- /dev/null
+++ b/.travis/targets/clang-analyzer.sh
@@ -0,0 +1,42 @@
+build() {
+ pushd build > /dev/null
+ ../configure \
+ CFLAGS="-Wall -g -O0" \
+ --enable-silent-rules \
+ --enable-ronn \
+ --enable-tests \
+ --disable-valgrind \
+ --enable-git-receiver \
+ --enable-make \
+ --enable-runserver
+ popd > /dev/null
+
+ PN="$(grep PACKAGE_TARNAME build/config.h | cut -d\" -f2)"
+ PV="$(grep PACKAGE_VERSION build/config.h | cut -d\" -f2)"
+ P="${PN}-clang-analyzer-${PV}"
+
+ set +e
+ scan-build \
+ --status-bugs \
+ -o "build/${P}" \
+ make -C build
+ RV=$?
+ set -e
+
+ if [[ ${RV} -ne 0 ]]; then
+ tar \
+ -cvJf "build/${P}.tar.xz" \
+ -C build/${P}/ \
+ .
+ fi
+
+ echo ${RV} > build/.test_result
+}
+
+deploy_cond() {
+ [[ "x${CC}" = "xclang" ]] && [[ -f build/*.tar.xz ]]
+}
+
+deploy() {
+ FILES=( build/*.tar.xz )
+}