Page MenuHomeFreeBSD

D5449.id13747.diff
No OneTemporary

D5449.id13747.diff

Index: share/mk/Makefile
===================================================================
--- share/mk/Makefile
+++ share/mk/Makefile
@@ -17,6 +17,7 @@
auto.obj.mk \
bsd.README \
bsd.arch.inc.mk \
+ bsd.clang-analyze.mk \
bsd.compiler.mk \
bsd.confs.mk \
bsd.cpu.mk \
Index: share/mk/bsd.clang-analyze.mk
===================================================================
--- /dev/null
+++ share/mk/bsd.clang-analyze.mk
@@ -0,0 +1,42 @@
+# $FreeBSD$
+# $NetBSD: bsd.clang-analyze.mk,v 1.3 2012/04/04 10:37:18 joerg Exp $
+
+.if !target(__<bsd.clang-analyze.mk>__)
+__<bsd.clang-analyze.mk>__:
+
+CLANG_ANALYZE_FLAGS+= --analyze
+
+CLANG_ANALYZE_CHECKERS+= core deadcode security unix
+
+.for checker in ${CLANG_ANALYZE_CHECKERS}
+CLANG_ANALYZE_FLAGS+= -Xanalyzer -analyzer-checker=${checker}
+.endfor
+
+.SUFFIXES: .c .cc .cpp .cxx .C .clang-analyzer
+
+CLANG_ANALYZE_CFLAGS= ${CFLAGS:N-Wa,--fatal-warnings}
+CLANG_ANALYZE_CXXFLAGS= ${CXXFLAGS:N-Wa,--fatal-warnings}
+
+.c.clang-analyzer:
+ ${CC} ${CLANG_ANALYZE_FLAGS} \
+ ${CLANG_ANALYZE_CFLAGS} ${CPPFLAGS} \
+ ${COPTS.${.IMPSRC:T}} ${CPUFLAGS.${.IMPSRC:T}} \
+ ${CPPFLAGS.${.IMPSRC:T}} ${.IMPSRC}
+.cc.clang-analyzer .cpp.clang-analyzer .cxx.clang-analyzer .C.clang-analyzer:
+ ${CXX} ${CLANG_ANALYZE_FLAGS} \
+ ${CLANG_ANALYZE_CXXFLAGS} ${CPPFLAGS} \
+ ${COPTS.${.IMPSRC:T}} ${CPUFLAGS.${.IMPSRC:T}} \
+ ${CPPFLAGS.${.IMPSRC:T}} ${.IMPSRC}
+
+CLANG_ANALYZE_SRCS= \
+ ${SRCS:M*.[cC]} ${SRCS:M*.cc} \
+ ${SRCS:M*.cpp} ${SRCS:M*.cxx} \
+ ${DPSRCS:M*.[cC]} ${DPSRCS:M*.cc} \
+ ${DPSRCS:M*.cpp} ${DPSRCS:M*.cxx}
+.if !empty(CLANG_ANALYZE_SRCS)
+CLANG_ANALYZE_OUTPUT= ${CLANG_ANALYZE_SRCS:R:S,$,.clang-analyzer,}
+.endif
+
+analyze: .PHONY ${DPSRCS} ${CLANG_ANALYZE_OUTPUT}
+
+.endif # !target(__<bsd.clang-analyze.mk>__)
Index: share/mk/bsd.lib.mk
===================================================================
--- share/mk/bsd.lib.mk
+++ share/mk/bsd.lib.mk
@@ -441,5 +441,6 @@
.endif
.include <bsd.dep.mk>
+.include <bsd.clang-analyze.mk>
.include <bsd.obj.mk>
.include <bsd.sys.mk>
Index: share/mk/bsd.prog.mk
===================================================================
--- share/mk/bsd.prog.mk
+++ share/mk/bsd.prog.mk
@@ -283,5 +283,6 @@
.endif
.include <bsd.dep.mk>
+.include <bsd.clang-analyze.mk>
.include <bsd.obj.mk>
.include <bsd.sys.mk>
Index: sys/conf/kmod.mk
===================================================================
--- sys/conf/kmod.mk
+++ sys/conf/kmod.mk
@@ -460,6 +460,9 @@
${OBJS}: ${OBJS_DEPEND_GUESS}
.endif
+analyze: ${_ILINKS}
+
.include <bsd.dep.mk>
+.include <bsd.clang-analyze.mk>
.include <bsd.obj.mk>
.include "kern.mk"

File Metadata

Mime Type
text/plain
Expires
Tue, Jun 30, 12:59 AM (4 h, 50 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
34479122
Default Alt Text
D5449.id13747.diff (2 KB)

Event Timeline