2015-09-21 21:48:40 +00:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
|
|
|
set -e
|
|
|
|
|
|
|
|
src=$(readlink -f $(dirname $0))
|
|
|
|
out=$PWD
|
|
|
|
|
|
|
|
MAKEFLAGS=${MAKEFLAGS:--j16}
|
|
|
|
DPDK_DIR=/usr/local/dpdk-2.1.0/x86_64-native-linuxapp-gcc
|
|
|
|
|
|
|
|
cd $src
|
|
|
|
|
|
|
|
scanbuild=''
|
|
|
|
if hash scan-build; then
|
2015-09-22 23:20:35 +00:00
|
|
|
scanbuild="scan-build -o $out/scan-build-tmp --status-bugs"
|
2015-09-21 21:48:40 +00:00
|
|
|
fi
|
|
|
|
|
|
|
|
make $MAKEFLAGS clean
|
2015-09-22 23:20:35 +00:00
|
|
|
fail=0
|
|
|
|
time $scanbuild make $MAKEFLAGS DPDK_DIR=$DPDK_DIR || fail=1
|
2015-09-21 21:48:40 +00:00
|
|
|
|
|
|
|
if [ -d $out/scan-build-tmp ]; then
|
|
|
|
scanoutput=$(ls -1 $out/scan-build-tmp/)
|
|
|
|
mv $out/scan-build-tmp/$scanoutput $out/scan-build
|
2015-09-22 23:42:53 +00:00
|
|
|
rm -rf $out/scan-build-tmp
|
2015-09-21 21:48:40 +00:00
|
|
|
chmod -R a+rX $out/scan-build
|
|
|
|
fi
|
|
|
|
|
|
|
|
if hash doxygen; then
|
|
|
|
(cd "$src"/doc; make $MAKEFLAGS)
|
|
|
|
mkdir -p "$out"/doc
|
|
|
|
for d in "$src"/doc/output.*; do
|
|
|
|
component=$(basename "$d" | sed -e 's/^output.//')
|
|
|
|
mv "$d"/html "$out"/doc/$component
|
|
|
|
rm -rf "$d"
|
|
|
|
done
|
|
|
|
fi
|
2015-09-22 23:20:35 +00:00
|
|
|
|
|
|
|
exit $fail
|