X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=scripts%2Fcommon%2Fscan-build.sh;h=e5652b19a75688316cff7516b1827ff78843a8ca;hb=00b991d2b3aa497b41425dd7240606c39f6deabd;hp=3b14ea7805f5aa8737f4c5d0d6928871cc25347e;hpb=fa43a231fd428b7bcfcb4c27801d53eff04fd074;p=lttng-ci.git diff --git a/scripts/common/scan-build.sh b/scripts/common/scan-build.sh index 3b14ea7..e5652b1 100755 --- a/scripts/common/scan-build.sh +++ b/scripts/common/scan-build.sh @@ -1,4 +1,4 @@ -#!/bin/bash -exu +#!/bin/bash # # Copyright (C) 2015 Jonathan Rajotte-Julien # Copyright (C) 2019 Michael Jeanson @@ -16,9 +16,21 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . +set -exu -# do not exit immediately if any command fails -set +e +# Required variables +WORKSPACE=${WORKSPACE:-} + +DEPS_INC="$WORKSPACE/deps/build/include" +DEPS_LIB="$WORKSPACE/deps/build/lib" +DEPS_PKGCONFIG="$DEPS_LIB/pkgconfig" +DEPS_BIN="$WORKSPACE/deps/build/bin" + +export PATH="$DEPS_BIN:$PATH" +export LD_LIBRARY_PATH="$DEPS_LIB:${LD_LIBRARY_PATH:-}" +export PKG_CONFIG_PATH="$DEPS_PKGCONFIG" +export CPPFLAGS="-I$DEPS_INC" +export LDFLAGS="-L$DEPS_LIB" SRCDIR="$WORKSPACE/src/$PROJECT_NAME" TMPDIR="$WORKSPACE/tmp" @@ -35,8 +47,12 @@ mkdir -p "$TMPDIR" export TMPDIR +# Builds configured with '-Werror=missing-include-dirs' if this directory +# doesn't exist +mkdir -p "$DEPS_INC" + # temp directory to store the scan-build report -SCAN_BUILD_TMPDIR=$( mktemp -d ) +SCAN_BUILD_TMPDIR=$(mktemp -d) case "$PROJECT_NAME" in babeltrace) @@ -63,10 +79,6 @@ lttng-ust) BUILD_TYPE="autotools" export CLASSPATH="/usr/share/java/log4j-1.2.jar" ;; -linux-rseq) - CONF_OPTS="" - BUILD_TYPE="linux-rseq" - ;; *) echo "Generic project, no configure options." CONF_OPTS="" @@ -74,27 +86,6 @@ linux-rseq) ;; esac -# liburcu dependency -if [ -d "$WORKSPACE/deps/liburcu" ]; then - URCU_INCS="$WORKSPACE/deps/liburcu/build/include/" - URCU_LIBS="$WORKSPACE/deps/liburcu/build/lib/" - - export CPPFLAGS="-I$URCU_INCS ${CPPFLAGS:-}" - export LDFLAGS="-L$URCU_LIBS ${LDFLAGS:-}" - export LD_LIBRARY_PATH="$URCU_LIBS:${LD_LIBRARY_PATH:-}" -fi - - -# lttng-ust dependency -if [ -d "$WORKSPACE/deps/lttng-ust" ]; then - UST_INCS="$WORKSPACE/deps/lttng-ust/build/include/" - UST_LIBS="$WORKSPACE/deps/lttng-ust/build/lib/" - - export CPPFLAGS="-I$UST_INCS ${CPPFLAGS:-}" - export LDFLAGS="-L$UST_LIBS ${LDFLAGS:-}" - export LD_LIBRARY_PATH="$UST_LIBS:${LD_LIBRARY_PATH:-}" -fi - if [ -d "$WORKSPACE/src/linux" ]; then export KERNELDIR="$WORKSPACE/src/linux" fi @@ -103,7 +94,6 @@ fi cd "$SRCDIR" # Build -echo -e "\033[33;1mRunning Coverity Scan Analysis Tool...\033[0m" case "$BUILD_TYPE" in autotools) # Prepare build dir for autotools based projects @@ -114,11 +104,6 @@ autotools) scan-build -k -o "${SCAN_BUILD_TMPDIR}" make -j"$NPROC" V=1 ;; -linux-rseq) - make defconfig - make -j"$NPROC" prepare - scan-build -k -o "${SCAN_BUILD_TMPDIR}" make -j"$NPROC" kernel/rseq.o kernel/do_on_cpu/core.o kernel/do_on_cpu/interpreter.o kernel/do_on_cpu/validate.o V=1 - ;; *) echo "Unsupported build type: $BUILD_TYPE" exit 1