projects
/
lttng-ci.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
jjb: liburcu cleanups
[lttng-ci.git]
/
scripts
/
liburcu
/
scan-build.sh
diff --git
a/scripts/liburcu/scan-build.sh
b/scripts/liburcu/scan-build.sh
index e67305a49e9daccfef821e08e4ac505f62bf613f..d290a6fd0a1ee67bd14695be9116b91e290a29d9 100755
(executable)
--- a/
scripts/liburcu/scan-build.sh
+++ b/
scripts/liburcu/scan-build.sh
@@
-1,6
+1,7
@@
#!/bin/sh -exu
#
# Copyright (C) 2015 - Jonathan Rajotte-Julien <jonathan.rajotte-julien@efficios.com>
#!/bin/sh -exu
#
# 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,60
@@
# 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/liburcu"
+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
-make clean
+
+
+./configure --prefix="$PREFIX"
+
# generate the scan-build report
# generate the scan-build report
-scan-build -k -o
${SCAN_BUILD_TMPDIR}
make
-
+scan-build -k -o
"${SCAN_BUILD_TMPDIR}"
make
+
# get the directory name of the report created by scan-build
# 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}`
)
+SCAN_BUILD_REPORT=$( find
"${SCAN_BUILD_TMPDIR}" -maxdepth 1 -not -empty -not -name "`basename ${SCAN_BUILD_TMPDIR}`"
)
rc=$?
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}"
echo ">>> Archiving scan-build report to ${SCAN_BUILD_ARCHIVE}"
- mv
${SCAN_BUILD_REPORT}/* ${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.025734 seconds
and
4
git commands to generate.