projects
/
lttng-ci.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
lttng-analyses: checkout sources in a subdirectory
[lttng-ci.git]
/
scripts
/
babeltrace
/
scan-build.sh
diff --git
a/scripts/babeltrace/scan-build.sh
b/scripts/babeltrace/scan-build.sh
old mode 100644
(file)
new mode 100755
(executable)
index
ed80c0e
..
887de62
--- a/
scripts/babeltrace/scan-build.sh
+++ b/
scripts/babeltrace/scan-build.sh
@@
-1,6
+1,7
@@
-#!/bin/sh
+#!/bin/sh
-exu
#
# Copyright (C) 2015 - Jonathan Rajotte-Julien <jonathan.rajotte-julien@efficios.com>
#
# Copyright (C) 2015 - Jonathan Rajotte-Julien <jonathan.rajotte-julien@efficios.com>
+# 2016 - Michael Jeanson <mjeanson@efficios.com>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@
-18,49
+19,59
@@
# do not exit immediately if any command fails
set +e
# do not exit immediately if any command fails
set +e
-
-# temp directory to store the scan-build report
-SCAN_BUILD_TMPDIR=$( mktemp -d /tmp/scan-build.XXXXXX )
-
-#
directory to use for archiving
the scan-build report
+
+SRCDIR="$WORKSPACE/src/babeltrace"
+TMPDIR="$WORKSPACE/tmp"
+PREFIX="$WORKSPACE/build"
+#
Directory to archive
the scan-build report
SCAN_BUILD_ARCHIVE="${WORKSPACE}/scan-build-archive"
SCAN_BUILD_ARCHIVE="${WORKSPACE}/scan-build-archive"
-# Create build directory
-rm -rf $WORKSPACE/build
-mkdir -p $WORKSPACE/build
+# Create build and tmp directories
+rm -rf "$PREFIX" "$TMPDIR"
+mkdir -p "$PREFIX" "$TMPDIR"
+
+export TMPDIR
+
+# temp directory to store the scan-build report
+SCAN_BUILD_TMPDIR=$( mktemp -d )
export CFLAGS="-O0 -g -DDEBUG"
export CFLAGS="-O0 -g -DDEBUG"
-PREFIX="$WORKSPACE/build"
+# Enter the source directory
+cd "$SRCDIR"
+
+# Run bootstrap in the source directory prior to configure
./bootstrap
./bootstrap
+
+
./configure --prefix=$PREFIX
./configure --prefix=$PREFIX
-make clean
+
# generate the scan-build report
scan-build -k -o ${SCAN_BUILD_TMPDIR} make
# generate the scan-build report
scan-build -k -o ${SCAN_BUILD_TMPDIR} make
-
+
# get the directory name of the report created by scan-build
SCAN_BUILD_REPORT=$( find ${SCAN_BUILD_TMPDIR} -maxdepth 1 -not -empty -not -name `basename ${SCAN_BUILD_TMPDIR}` )
rc=$?
# get the directory name of the report created by scan-build
SCAN_BUILD_REPORT=$( find ${SCAN_BUILD_TMPDIR} -maxdepth 1 -not -empty -not -name `basename ${SCAN_BUILD_TMPDIR}` )
rc=$?
-
+
if [ -z "${SCAN_BUILD_REPORT}" ]; then
echo ">>> No new bugs identified."
echo ">>> No scan-build report has been generated"
else
echo ">>> New scan-build report generated in ${SCAN_BUILD_REPORT}"
if [ -z "${SCAN_BUILD_REPORT}" ]; then
echo ">>> No new bugs identified."
echo ">>> No scan-build report has been generated"
else
echo ">>> New scan-build report generated in ${SCAN_BUILD_REPORT}"
-
+
if [ ! -d "${SCAN_BUILD_ARCHIVE}" ]; then
echo ">>> Creating scan-build archive directory"
if [ ! -d "${SCAN_BUILD_ARCHIVE}" ]; then
echo ">>> Creating scan-build archive directory"
-
install -d -o jenkins -g jenkins -m 0755
"${SCAN_BUILD_ARCHIVE}"
+
mkdir
"${SCAN_BUILD_ARCHIVE}"
else
echo ">>> Removing any previous scan-build reports from ${SCAN_BUILD_ARCHIVE}"
else
echo ">>> Removing any previous scan-build reports from ${SCAN_BUILD_ARCHIVE}"
- rm -f
${SCAN_BUILD_ARCHIVE}/*
+ rm -f
"${SCAN_BUILD_ARCHIVE}/*"
fi
fi
-
+
echo ">>> Archiving scan-build report to ${SCAN_BUILD_ARCHIVE}"
mv ${SCAN_BUILD_REPORT}/* ${SCAN_BUILD_ARCHIVE}/
echo ">>> Archiving scan-build report to ${SCAN_BUILD_ARCHIVE}"
mv ${SCAN_BUILD_REPORT}/* ${SCAN_BUILD_ARCHIVE}/
-
+
echo ">>> Removing any temporary files and directories"
rm -rf "${SCAN_BUILD_TMPDIR}"
fi
echo ">>> Removing any temporary files and directories"
rm -rf "${SCAN_BUILD_TMPDIR}"
fi
-
+
exit ${rc}
exit ${rc}
This page took
0.024093 seconds
and
4
git commands to generate.