1150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5LoganLOCAL_PATH:= $(call my-dir)
2150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan
3c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan Chienclang_static_analyzer_checkers_TBLGEN_TABLES := \
4c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan Chien  AttrKinds.inc \
5150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  AttrList.inc \
6560ad31c413724fafd13d6fd723e403f28daa132Shih-wei Liao  AttrParsedAttrList.inc \
7150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  Attrs.inc \
8c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan Chien  Checkers.inc \
9bd3aca04d304b9f31240b94af0aad818f6f932abStephen Hines  CommentCommandList.inc \
10ee959355b93c0648fea88dc986d196e3705407dcShih-wei Liao  CommentNodes.inc \
11150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  DeclNodes.inc \
12150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  DiagnosticCommonKinds.inc \
13150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  StmtNodes.inc
14150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan
15c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan Chienclang_static_analyzer_checkers_SRC_FILES := \
169c64df299df8b565955920c038ce9b8a0244448cLogan  AnalyzerStatsChecker.cpp \
17150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  ArrayBoundChecker.cpp \
18c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan Chien  ArrayBoundCheckerV2.cpp \
19150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  BasicObjCFoundationChecks.cpp \
20361035524dc26094825134f30c07311f38f4f8b1Stephen Hines  BoolAssignmentChecker.cpp \
21150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  BuiltinFunctionChecker.cpp \
22c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan Chien  CStringChecker.cpp \
23361035524dc26094825134f30c07311f38f4f8b1Stephen Hines  CStringSyntaxChecker.cpp \
24150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  CallAndMessageChecker.cpp \
25150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  CastSizeChecker.cpp \
26150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  CastToStructChecker.cpp \
27150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  CheckObjCDealloc.cpp \
28150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  CheckObjCInstMethSignature.cpp \
29150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  CheckSecuritySyntaxOnly.cpp \
30150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  CheckSizeofPointer.cpp \
319b879db75be6b8db4a7c804e9bba4c07c4cfa81cLogan Chien  CheckerDocumentation.cpp \
329c64df299df8b565955920c038ce9b8a0244448cLogan  ChrootChecker.cpp \
33fe6bd6dc51777802a0118521b9039981a0e6a806Logan Chien  ClangCheckers.cpp \
3428c9e5720dea5f7b9a4d154ee49886c69de8ae29Shih-wei Liao  CommonBugCategories.cpp \
35c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan Chien  DeadStoresChecker.cpp \
36c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan Chien  DebugCheckers.cpp \
37150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  DereferenceChecker.cpp \
38af42246bdafd7145ef0f0daaddda7e8c41baf265Stephen Hines  DirectIvarAssignment.cpp \
39150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  DivZeroChecker.cpp \
408eba6f194484c38ed724375aeab27de556113a84Stephen Hines  DynamicTypePropagation.cpp \
41ee959355b93c0648fea88dc986d196e3705407dcShih-wei Liao  ExprInspectionChecker.cpp \
42150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  FixedAddressChecker.cpp \
432db4f4e0b4234eb96347aa69c00aa0c5624676a3Logan Chien  GenericTaintChecker.cpp \
44150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  IdempotentOperationChecker.cpp \
45af42246bdafd7145ef0f0daaddda7e8c41baf265Stephen Hines  IvarInvalidationChecker.cpp \
46150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  LLVMConventionsChecker.cpp \
47fe6bd6dc51777802a0118521b9039981a0e6a806Logan Chien  MacOSKeychainAPIChecker.cpp \
48150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  MacOSXAPIChecker.cpp \
49150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  MallocChecker.cpp \
50fe6bd6dc51777802a0118521b9039981a0e6a806Logan Chien  MallocOverflowSecurityChecker.cpp \
519b879db75be6b8db4a7c804e9bba4c07c4cfa81cLogan Chien  MallocSizeofChecker.cpp \
52150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  NSAutoreleasePoolChecker.cpp \
53150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  NSErrorChecker.cpp \
54150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  NoReturnFunctionChecker.cpp \
55af42246bdafd7145ef0f0daaddda7e8c41baf265Stephen Hines  NonNullParamChecker.cpp \
569c64df299df8b565955920c038ce9b8a0244448cLogan  ObjCAtSyncChecker.cpp \
57361035524dc26094825134f30c07311f38f4f8b1Stephen Hines  ObjCContainersASTChecker.cpp \
58361035524dc26094825134f30c07311f38f4f8b1Stephen Hines  ObjCContainersChecker.cpp \
59af42246bdafd7145ef0f0daaddda7e8c41baf265Stephen Hines  ObjCMissingSuperCallChecker.cpp \
60c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan Chien  ObjCSelfInitChecker.cpp \
61c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan Chien  ObjCUnusedIVarsChecker.cpp \
62150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  PointerArithChecker.cpp \
63150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  PointerSubChecker.cpp \
64150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  PthreadLockChecker.cpp \
65fe6bd6dc51777802a0118521b9039981a0e6a806Logan Chien  RetainCountChecker.cpp \
66150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  ReturnPointerRangeChecker.cpp \
67150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  ReturnUndefChecker.cpp \
68af42246bdafd7145ef0f0daaddda7e8c41baf265Stephen Hines  SimpleStreamChecker.cpp \
69c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan Chien  StackAddrEscapeChecker.cpp \
70150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  StreamChecker.cpp \
719b879db75be6b8db4a7c804e9bba4c07c4cfa81cLogan Chien  TaintTesterChecker.cpp \
72ee959355b93c0648fea88dc986d196e3705407dcShih-wei Liao  TraversalChecker.cpp \
73150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  UndefBranchChecker.cpp \
74150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  UndefCapturedBlockVarChecker.cpp \
75150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  UndefResultChecker.cpp \
76150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  UndefinedArraySubscriptChecker.cpp \
77150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  UndefinedAssignmentChecker.cpp \
78150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  UnixAPIChecker.cpp \
79150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan  UnreachableCodeChecker.cpp \
80361035524dc26094825134f30c07311f38f4f8b1Stephen Hines  VirtualCallChecker.cpp \
81c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan Chien  VLASizeChecker.cpp
82c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan Chien
83c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan Chien# For the host only
84c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan Chien# =====================================================
85c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan Chieninclude $(CLEAR_VARS)
86c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan Chieninclude $(CLEAR_TBLGEN_VARS)
87c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan Chien
88c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan ChienTBLGEN_TABLES := $(clang_static_analyzer_checkers_TBLGEN_TABLES)
89150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan
90c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan ChienLOCAL_SRC_FILES := $(clang_static_analyzer_checkers_SRC_FILES)
91150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan
92c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan ChienLOCAL_MODULE:= libclangStaticAnalyzerCheckers
93c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan Chien
94c805eb9bc32fb0e2e767e2c4dcce1541feb4b69dLogan ChienLOCAL_MODULE_TAGS := optional
95150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Logan
96150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Loganinclude $(CLANG_HOST_BUILD_MK)
97150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Loganinclude $(CLANG_TBLGEN_RULES_MK)
98fe6bd6dc51777802a0118521b9039981a0e6a806Logan Chieninclude $(CLANG_VERSION_INC_MK)
99150e0efec6302fa5a8c3b5c3c4ecf5778d3a29f5Loganinclude $(BUILD_HOST_STATIC_LIBRARY)
100