blob: 2d78af3a0afd2bb9dad3d73d28b03628dd7c3220 [file] [log] [blame]
Oscar Fuentes6f725402011-02-20 22:06:32 +00001clang_tablegen(Checkers.inc -gen-clang-sa-checkers
2 -I ${CMAKE_CURRENT_SOURCE_DIR}/../../../include
3 SOURCE Checkers.td
4 TARGET ClangSACheckers)
Argyrios Kyrtzidis556c45e2011-02-14 18:13:31 +00005
NAKAMURA Takumi65d42bc2013-12-09 19:04:43 +00006set(LLVM_LINK_COMPONENTS
7 Support
8 )
9
Ted Kremenekd99bd552010-12-23 19:38:26 +000010add_clang_library(clangStaticAnalyzerCheckers
Ted Kremenek8671acb2013-04-16 21:44:22 +000011 AllocationDiagnostics.cpp
Argyrios Kyrtzidisfa0734e2011-02-08 22:30:36 +000012 AnalyzerStatsChecker.cpp
Argyrios Kyrtzidisa700e972010-12-22 18:52:56 +000013 ArrayBoundChecker.cpp
Ted Kremeneke73571b2010-12-23 02:42:43 +000014 ArrayBoundCheckerV2.cpp
Argyrios Kyrtzidisa700e972010-12-22 18:52:56 +000015 BasicObjCFoundationChecks.cpp
Ryan Govostes55011c02012-02-11 16:32:09 +000016 BoolAssignmentChecker.cpp
Argyrios Kyrtzidisa700e972010-12-22 18:52:56 +000017 BuiltinFunctionChecker.cpp
Ted Kremeneke73571b2010-12-23 02:42:43 +000018 CStringChecker.cpp
Anna Zaks87b6ff02012-01-31 19:33:39 +000019 CStringSyntaxChecker.cpp
Argyrios Kyrtzidisa700e972010-12-22 18:52:56 +000020 CallAndMessageChecker.cpp
21 CastSizeChecker.cpp
22 CastToStructChecker.cpp
Argyrios Kyrtzidisa700e972010-12-22 18:52:56 +000023 CheckObjCDealloc.cpp
24 CheckObjCInstMethSignature.cpp
25 CheckSecuritySyntaxOnly.cpp
26 CheckSizeofPointer.cpp
Benjamin Kramer9ce686e2011-11-30 18:56:24 +000027 CheckerDocumentation.cpp
Argyrios Kyrtzidisa700e972010-12-22 18:52:56 +000028 ChrootChecker.cpp
Jordy Rose59cce712011-08-16 21:24:21 +000029 ClangCheckers.cpp
Ted Kremenekc7ed0932011-01-13 20:58:59 +000030 DeadStoresChecker.cpp
Oscar Fuentes79b52bf2011-02-17 22:07:39 +000031 DebugCheckers.cpp
Argyrios Kyrtzidisa700e972010-12-22 18:52:56 +000032 DereferenceChecker.cpp
Ted Kremenekc9822eb2012-10-11 20:58:21 +000033 DirectIvarAssignment.cpp
Argyrios Kyrtzidisa700e972010-12-22 18:52:56 +000034 DivZeroChecker.cpp
Anna Zaks472dbcf2012-08-06 23:25:39 +000035 DynamicTypePropagation.cpp
Jordy Rose31ae2592012-05-16 16:01:07 +000036 ExprInspectionChecker.cpp
Argyrios Kyrtzidis5629fec2010-12-22 20:30:07 +000037 FixedAddressChecker.cpp
Benjamin Kramerde2ac702011-11-16 20:05:08 +000038 GenericTaintChecker.cpp
Argyrios Kyrtzidisa700e972010-12-22 18:52:56 +000039 IdempotentOperationChecker.cpp
Jordan Rose51327f92013-11-08 01:15:39 +000040 IdenticalExprChecker.cpp
Anna Zaks9802f9f2012-09-26 18:55:16 +000041 IvarInvalidationChecker.cpp
Argyrios Kyrtzidisa700e972010-12-22 18:52:56 +000042 LLVMConventionsChecker.cpp
Anna Zaks15f496c2011-08-01 22:40:01 +000043 MacOSKeychainAPIChecker.cpp
Argyrios Kyrtzidisa700e972010-12-22 18:52:56 +000044 MacOSXAPIChecker.cpp
45 MallocChecker.cpp
Ted Kremenek1c2fb272011-08-03 20:17:43 +000046 MallocOverflowSecurityChecker.cpp
Peter Collingbourne266e3dd2011-12-08 08:31:14 +000047 MallocSizeofChecker.cpp
Argyrios Kyrtzidisa700e972010-12-22 18:52:56 +000048 NSAutoreleasePoolChecker.cpp
49 NSErrorChecker.cpp
50 NoReturnFunctionChecker.cpp
Ted Kremenekeb5f0892013-04-16 21:10:09 +000051 NonNullParamChecker.cpp
Argyrios Kyrtzidisa700e972010-12-22 18:52:56 +000052 ObjCAtSyncChecker.cpp
NAKAMURA Takumie3593112012-01-26 01:14:39 +000053 ObjCContainersASTChecker.cpp
Anna Zaks4f870e62012-01-30 06:42:48 +000054 ObjCContainersChecker.cpp
Jordan Rose3c2f65a2012-10-30 01:21:35 +000055 ObjCMissingSuperCallChecker.cpp
Argyrios Kyrtzidis4b7433f2011-01-11 19:45:25 +000056 ObjCSelfInitChecker.cpp
Argyrios Kyrtzidisa700e972010-12-22 18:52:56 +000057 ObjCUnusedIVarsChecker.cpp
58 PointerArithChecker.cpp
59 PointerSubChecker.cpp
60 PthreadLockChecker.cpp
Jordy Rose75e680e2011-09-02 06:44:22 +000061 RetainCountChecker.cpp
Argyrios Kyrtzidisa700e972010-12-22 18:52:56 +000062 ReturnPointerRangeChecker.cpp
63 ReturnUndefChecker.cpp
Ted Kremeneke71ce972012-12-04 22:17:32 +000064 SimpleStreamChecker.cpp
Ted Kremenek5eb4b602011-02-25 22:00:43 +000065 StackAddrEscapeChecker.cpp
Argyrios Kyrtzidisa700e972010-12-22 18:52:56 +000066 StreamChecker.cpp
Anna Zaks1c215d02011-12-05 18:58:01 +000067 TaintTesterChecker.cpp
Jordan Rose42ee04d2012-06-29 00:33:10 +000068 TraversalChecker.cpp
Argyrios Kyrtzidisa700e972010-12-22 18:52:56 +000069 UndefBranchChecker.cpp
70 UndefCapturedBlockVarChecker.cpp
71 UndefResultChecker.cpp
72 UndefinedArraySubscriptChecker.cpp
73 UndefinedAssignmentChecker.cpp
74 UnixAPIChecker.cpp
75 UnreachableCodeChecker.cpp
76 VLASizeChecker.cpp
Ted Kremenekb3512d32012-01-03 23:18:57 +000077 VirtualCallChecker.cpp
Argyrios Kyrtzidisa700e972010-12-22 18:52:56 +000078 )
79
Oscar Fuentesf7fa56f2011-02-19 21:38:48 +000080add_dependencies(clangStaticAnalyzerCheckers
81 clangStaticAnalyzerCore
82 ClangAttrClasses
83 ClangAttrList
Dmitri Gribenkoec925312012-07-06 00:28:32 +000084 ClangCommentNodes
Oscar Fuentesf7fa56f2011-02-19 21:38:48 +000085 ClangDeclNodes
NAKAMURA Takumi836926d2012-07-27 06:18:33 +000086 ClangDiagnosticCommon
Oscar Fuentesf7fa56f2011-02-19 21:38:48 +000087 ClangStmtNodes
88 ClangSACheckers
89 )
Chandler Carruth28969b42012-06-21 01:30:21 +000090
91target_link_libraries(clangStaticAnalyzerCheckers
Chandler Carruth28969b42012-06-21 01:30:21 +000092 clangAST
NAKAMURA Takumi65d42bc2013-12-09 19:04:43 +000093 clangAnalysis
94 clangBasic
Chandler Carruth28969b42012-06-21 01:30:21 +000095 clangStaticAnalyzerCore
96 )