summaryrefslogtreecommitdiff
path: root/SConstruct
diff options
context:
space:
mode:
authorEric S. Raymond <esr@thyrsus.com>2013-11-19 16:11:52 -0500
committerEric S. Raymond <esr@thyrsus.com>2013-11-19 16:11:52 -0500
commit944914be5fcb4c176279a8fc8cd14a07eeb46822 (patch)
tree0479045256e60c2928182ff0876f76e23e44ad88 /SConstruct
parent4ac774d5a48fc7341904cd61858532e383adc726 (diff)
downloadgpsd-944914be5fcb4c176279a8fc8cd14a07eeb46822.tar.gz
Code is now static-checker clean with splint, cppcheck, and Coverity.
All regression tests pass. PPS is live.
Diffstat (limited to 'SConstruct')
-rw-r--r--SConstruct6
1 files changed, 4 insertions, 2 deletions
diff --git a/SConstruct b/SConstruct
index f731c89a..d0b4e654 100644
--- a/SConstruct
+++ b/SConstruct
@@ -1447,8 +1447,10 @@ splint_table = [
for (target,sources,description,params) in splint_table:
env.Alias('splint',Splint(target,sources,description,params))
+# Putting in all these -U flags speeds up cppcheck and allows it to look
+# at configurations we actually care about.
Utility("cppcheck", ["gpsd.h", "packet_names.h"],
- "cppcheck -U__UNUSED__ -UAF_UNSPEC -UINADDR_ANY -UFIXED_PORT_SPEED -UFIXED_STOP_BITS -U_WIN32 -U__CYGWIN__ --template gcc --enable=all --inline-suppr --suppress='*:driver_proto.c' --force $SRCDIR")
+ "cppcheck -U__UNUSED__ -US_SPLINT_S -U__COVERITY__ -U__future__ -ULIMITED_MAX_CLIENTS -ULIMITED_MAX_DEVICES -UAF_UNSPEC -UINADDR_ANY -UFIXED_PORT_SPEED -UFIXED_STOP_BITS -U_WIN32 -U__CYGWIN__ -UPATH_MAX -UHAVE_STRLCAT -UHAVE_STRLCPY --template gcc --enable=all --inline-suppr --suppress='*:driver_proto.c' --force $SRCDIR")
# Experimental check with clang analyzer
Utility("scan-build", ["gpsd.h", "packet_names.h"],
@@ -1456,7 +1458,7 @@ Utility("scan-build", ["gpsd.h", "packet_names.h"],
# Sanity-check Python code.
pylint = Utility("pylint", ["jsongen.py", "maskaudit.py", python_built_extensions],
- ['''pylint --output-format=parseable --reports=n --include-ids=y --disable=F0001,C0103,C0111,C0301,C0302,C0322,C0324,C0323,C0321,R0201,R0801,R0902,R0903,R0904,R0911,R0912,R0913,R0914,R0915,R0924,W0201,W0401,W0403,W0141,W0142,W0603,W0614,W0621,E1101,E1102 jsongen.py leapsecond.py maskaudit.py gpsprof.py gpscat.py gpsfake.py gegps.py gps/*.py xgps'''])
+ ['''pylint --output-format=parseable --reports=n --include-ids=y --disable=F0001,C0103,C0111,C0301,C0302,C0322,C0324,C0323,C0321,R0201,R0801,R0902,R0903,R0904,R0911,R0912,R0913,R0914,R0915,R0924,W0201,W0401,W0403,W0141,W0142,W0603,W0614,W0621,E1101,E1102,F0401 jsongen.py leapsecond.py maskaudit.py gpsprof.py gpscat.py gpsfake.py gegps.py gps/*.py xgps'''])
# Check the documentation for bogons, too
Utility("xmllint", glob.glob("*.xml"),