From: Thomas Hindoe Paaboel Andersen <[email protected]>
scan-build is a static analyzer in llvm. As ususal static analyzers
tend to mostly find theoretical bugs in software that has been in
production for a while. For in-development code it can be useful to
check if new issues is added as there is a chance to spot real problems
before release. For systemd we are now down to 297 issues - the vast
majority are false positives because the tool does not understand the
cleanup attribute.
Running clang's static analyzer scan-build is a bit messy. You have to
run both configure and make "inside" the build-scan tool. To have an
easy shortcut from autogen.sh I thus call both directly from it. This
makes it different from the other options in autogen.sh. I chose 's'
for static analysis.
scan-build is in the package clang-analyzer on fedora. On fedora we
also need to set --use-analyzer=/usr/bin/clang
---
autogen.sh | 3 +++
1 file changed, 3 insertions(+)
diff --git a/autogen.sh b/autogen.sh
index 91df10a..b6d197d 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -65,6 +65,9 @@ elif [ "x$1" = "xa" ]; then
elif [ "x$1" = "xl" ]; then
./configure CC=clang CFLAGS='-g -O0 -ftrapv -Wno-cast-align -Wno-gnu'
--enable-kdbus $args
make clean
+elif [ "x$1" = "xs" ]; then
+ scan-build --use-analyzer=/usr/bin/clang ./configure CFLAGS='-g -O0
-ftrapv' --enable-kdbus $args
+ scan-build --use-analyzer=/usr/bin/clang make
else
echo
echo "----------------------------------------------------------------"
--
1.8.4.2
_______________________________________________
systemd-devel mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/systemd-devel