1.include <bsd.init.mk> 2.include "../clang.pre.mk" 3 4.if defined(TOOLS_PREFIX) 5# Build static library during cross-tools stage 6LIB= clang 7INTERNALLIB= 8.else 9PACKAGE= clang 10SHLIB_CXX= clang 11SHLIB_MAJOR= 19 12PRIVATELIB= 13.if ${MACHINE} == "powerpc" 14# Work around "relocation R_PPC_GOT16 out of range" errors 15PICFLAG= -fPIC 16.endif 17.endif 18 19SHARED_CXXFLAGS+= -UPIC # To avoid compile errors 20 21CFLAGS+= -I${.OBJDIR} 22CFLAGS+= -I${OBJTOP}/lib/clang/libllvm 23CFLAGS+= -I${CLANG_SRCS}/lib/Basic 24CFLAGS+= -I${CLANG_SRCS}/lib/Driver 25CFLAGS+= -I${CLANG_SRCS}/lib/CodeGen 26 27# Ensure FREEBSD_CC_VERSION is defined for Basic/Targets.cpp 28CFLAGS.Targets.cpp+= -include ../freebsd_cc_version.h 29 30# Work around GCC bug 67888 31.if ${COMPILER_TYPE} == "gcc" 32CXXFLAGS.Module.cpp+= -fpermissive 33.endif 34 35SRCDIR= clang/lib 36 37# Explanation of different SRCS variants below: 38# SRCS_MIN: always required, even for bootstrap 39# SRCS_EXT: required for MK_CLANG_EXTRAS || MK_CLANG_FORMAT 40# SRCS_FUL: required for MK_CLANG_FULL 41# SRCS_LDB: required for MK_LLDB 42 43SRCS_MIN+= APINotes/APINotesManager.cpp 44SRCS_MIN+= APINotes/APINotesReader.cpp 45SRCS_MIN+= APINotes/APINotesWriter.cpp 46SRCS_MIN+= APINotes/APINotesYAMLCompiler.cpp 47SRCS_FUL+= ARCMigrate/ARCMT.cpp 48SRCS_FUL+= ARCMigrate/ARCMTActions.cpp 49SRCS_FUL+= ARCMigrate/FileRemapper.cpp 50SRCS_FUL+= ARCMigrate/ObjCMT.cpp 51SRCS_FUL+= ARCMigrate/PlistReporter.cpp 52SRCS_FUL+= ARCMigrate/TransAPIUses.cpp 53SRCS_FUL+= ARCMigrate/TransARCAssign.cpp 54SRCS_FUL+= ARCMigrate/TransAutoreleasePool.cpp 55SRCS_FUL+= ARCMigrate/TransBlockObjCVariable.cpp 56SRCS_FUL+= ARCMigrate/TransEmptyStatementsAndDealloc.cpp 57SRCS_FUL+= ARCMigrate/TransGCAttrs.cpp 58SRCS_FUL+= ARCMigrate/TransGCCalls.cpp 59SRCS_FUL+= ARCMigrate/TransProperties.cpp 60SRCS_FUL+= ARCMigrate/TransProtectedScope.cpp 61SRCS_FUL+= ARCMigrate/TransRetainReleaseDealloc.cpp 62SRCS_FUL+= ARCMigrate/TransUnbridgedCasts.cpp 63SRCS_FUL+= ARCMigrate/TransUnusedInitDelegate.cpp 64SRCS_FUL+= ARCMigrate/TransZeroOutPropsInDealloc.cpp 65SRCS_FUL+= ARCMigrate/TransformActions.cpp 66SRCS_FUL+= ARCMigrate/Transforms.cpp 67SRCS_MIN+= AST/APValue.cpp 68SRCS_MIN+= AST/ASTConcept.cpp 69SRCS_MIN+= AST/ASTConsumer.cpp 70SRCS_MIN+= AST/ASTContext.cpp 71SRCS_MIN+= AST/ASTDiagnostic.cpp 72SRCS_MIN+= AST/ASTDumper.cpp 73SRCS_MIN+= AST/ASTImporter.cpp 74SRCS_MIN+= AST/ASTImporterLookupTable.cpp 75SRCS_MIN+= AST/ASTStructuralEquivalence.cpp 76SRCS_MIN+= AST/ASTTypeTraits.cpp 77SRCS_MIN+= AST/AttrImpl.cpp 78SRCS_MIN+= AST/Availability.cpp 79SRCS_MIN+= AST/CXXInheritance.cpp 80SRCS_MIN+= AST/Comment.cpp 81SRCS_MIN+= AST/CommentBriefParser.cpp 82SRCS_MIN+= AST/CommentCommandTraits.cpp 83SRCS_MIN+= AST/CommentLexer.cpp 84SRCS_MIN+= AST/CommentParser.cpp 85SRCS_MIN+= AST/CommentSema.cpp 86SRCS_MIN+= AST/ComparisonCategories.cpp 87SRCS_MIN+= AST/ComputeDependence.cpp 88SRCS_MIN+= AST/DataCollection.cpp 89SRCS_MIN+= AST/Decl.cpp 90SRCS_MIN+= AST/DeclBase.cpp 91SRCS_MIN+= AST/DeclCXX.cpp 92SRCS_MIN+= AST/DeclFriend.cpp 93SRCS_MIN+= AST/DeclGroup.cpp 94SRCS_MIN+= AST/DeclObjC.cpp 95SRCS_MIN+= AST/DeclOpenMP.cpp 96SRCS_MIN+= AST/DeclPrinter.cpp 97SRCS_MIN+= AST/DeclTemplate.cpp 98SRCS_MIN+= AST/DeclarationName.cpp 99SRCS_MIN+= AST/Expr.cpp 100SRCS_MIN+= AST/ExprCXX.cpp 101SRCS_MIN+= AST/ExprClassification.cpp 102SRCS_MIN+= AST/ExprConcepts.cpp 103SRCS_MIN+= AST/ExprConstant.cpp 104SRCS_MIN+= AST/ExprObjC.cpp 105SRCS_LDB+= AST/ExternalASTMerger.cpp 106SRCS_MIN+= AST/ExternalASTSource.cpp 107SRCS_MIN+= AST/FormatString.cpp 108SRCS_MIN+= AST/InheritViz.cpp 109SRCS_MIN+= AST/Interp/ByteCodeEmitter.cpp 110SRCS_MIN+= AST/Interp/Compiler.cpp 111SRCS_MIN+= AST/Interp/Context.cpp 112SRCS_MIN+= AST/Interp/Descriptor.cpp 113SRCS_MIN+= AST/Interp/DynamicAllocator.cpp 114SRCS_MIN+= AST/Interp/EvalEmitter.cpp 115SRCS_MIN+= AST/Interp/EvaluationResult.cpp 116SRCS_MIN+= AST/Interp/Floating.cpp 117SRCS_MIN+= AST/Interp/Frame.cpp 118SRCS_MIN+= AST/Interp/Function.cpp 119SRCS_MIN+= AST/Interp/Interp.cpp 120SRCS_MIN+= AST/Interp/InterpBlock.cpp 121SRCS_MIN+= AST/Interp/InterpBuiltin.cpp 122SRCS_MIN+= AST/Interp/InterpFrame.cpp 123SRCS_MIN+= AST/Interp/InterpShared.cpp 124SRCS_MIN+= AST/Interp/InterpStack.cpp 125SRCS_MIN+= AST/Interp/InterpState.cpp 126SRCS_MIN+= AST/Interp/MemberPointer.cpp 127SRCS_MIN+= AST/Interp/Pointer.cpp 128SRCS_MIN+= AST/Interp/PrimType.cpp 129SRCS_MIN+= AST/Interp/Program.cpp 130SRCS_MIN+= AST/Interp/Record.cpp 131SRCS_MIN+= AST/Interp/Source.cpp 132SRCS_MIN+= AST/Interp/State.cpp 133SRCS_MIN+= AST/ItaniumCXXABI.cpp 134SRCS_MIN+= AST/ItaniumMangle.cpp 135SRCS_MIN+= AST/JSONNodeDumper.cpp 136SRCS_MIN+= AST/Mangle.cpp 137SRCS_MIN+= AST/MicrosoftCXXABI.cpp 138SRCS_MIN+= AST/MicrosoftMangle.cpp 139SRCS_MIN+= AST/NSAPI.cpp 140SRCS_MIN+= AST/NestedNameSpecifier.cpp 141SRCS_MIN+= AST/ODRDiagsEmitter.cpp 142SRCS_MIN+= AST/ODRHash.cpp 143SRCS_MIN+= AST/OSLog.cpp 144SRCS_MIN+= AST/OpenACCClause.cpp 145SRCS_MIN+= AST/OpenMPClause.cpp 146SRCS_MIN+= AST/ParentMap.cpp 147SRCS_MIN+= AST/ParentMapContext.cpp 148SRCS_MIN+= AST/PrintfFormatString.cpp 149SRCS_MIN+= AST/QualTypeNames.cpp 150SRCS_MIN+= AST/Randstruct.cpp 151SRCS_MIN+= AST/RawCommentList.cpp 152SRCS_MIN+= AST/RecordLayout.cpp 153SRCS_MIN+= AST/RecordLayoutBuilder.cpp 154SRCS_MIN+= AST/ScanfFormatString.cpp 155SRCS_MIN+= AST/SelectorLocationsKind.cpp 156SRCS_MIN+= AST/Stmt.cpp 157SRCS_MIN+= AST/StmtCXX.cpp 158SRCS_MIN+= AST/StmtIterator.cpp 159SRCS_MIN+= AST/StmtObjC.cpp 160SRCS_MIN+= AST/StmtOpenACC.cpp 161SRCS_MIN+= AST/StmtOpenMP.cpp 162SRCS_MIN+= AST/StmtPrinter.cpp 163SRCS_MIN+= AST/StmtProfile.cpp 164SRCS_MIN+= AST/StmtViz.cpp 165SRCS_MIN+= AST/TemplateBase.cpp 166SRCS_MIN+= AST/TemplateName.cpp 167SRCS_MIN+= AST/TextNodeDumper.cpp 168SRCS_MIN+= AST/Type.cpp 169SRCS_MIN+= AST/TypeLoc.cpp 170SRCS_MIN+= AST/TypePrinter.cpp 171SRCS_MIN+= AST/VTTBuilder.cpp 172SRCS_MIN+= AST/VTableBuilder.cpp 173SRCS_MIN+= ASTMatchers/ASTMatchFinder.cpp 174SRCS_MIN+= ASTMatchers/ASTMatchersInternal.cpp 175SRCS_MIN+= ASTMatchers/Dynamic/Diagnostics.cpp 176SRCS_MIN+= ASTMatchers/Dynamic/Marshallers.cpp 177SRCS_MIN+= ASTMatchers/Dynamic/Registry.cpp 178SRCS_MIN+= ASTMatchers/Dynamic/VariantValue.cpp 179SRCS_MIN+= Analysis/AnalysisDeclContext.cpp 180SRCS_MIN+= Analysis/BodyFarm.cpp 181SRCS_MIN+= Analysis/CFG.cpp 182SRCS_MIN+= Analysis/CFGReachabilityAnalysis.cpp 183SRCS_MIN+= Analysis/CFGStmtMap.cpp 184SRCS_FUL+= Analysis/CallGraph.cpp 185SRCS_MIN+= Analysis/CalledOnceCheck.cpp 186SRCS_MIN+= Analysis/CloneDetection.cpp 187SRCS_MIN+= Analysis/CocoaConventions.cpp 188SRCS_FUL+= Analysis/CodeInjector.cpp 189SRCS_MIN+= Analysis/ConstructionContext.cpp 190SRCS_MIN+= Analysis/Consumed.cpp 191SRCS_FUL+= Analysis/Dominators.cpp 192SRCS_MIN+= Analysis/ExprMutationAnalyzer.cpp 193SRCS_FUL+= Analysis/IssueHash.cpp 194SRCS_MIN+= Analysis/LiveVariables.cpp 195SRCS_FUL+= Analysis/MacroExpansionContext.cpp 196SRCS_MIN+= Analysis/ObjCNoReturn.cpp 197SRCS_FUL+= Analysis/PathDiagnostic.cpp 198SRCS_MIN+= Analysis/PostOrderCFGView.cpp 199SRCS_FUL+= Analysis/ProgramPoint.cpp 200SRCS_MIN+= Analysis/ReachableCode.cpp 201SRCS_FUL+= Analysis/RetainSummaryManager.cpp 202SRCS_MIN+= Analysis/ThreadSafety.cpp 203SRCS_MIN+= Analysis/ThreadSafetyCommon.cpp 204SRCS_MIN+= Analysis/ThreadSafetyTIL.cpp 205SRCS_MIN+= Analysis/UninitializedValues.cpp 206SRCS_MIN+= Analysis/UnsafeBufferUsage.cpp 207SRCS_MIN+= Basic/ASTSourceDescriptor.cpp 208SRCS_MIN+= Basic/Attributes.cpp 209SRCS_MIN+= Basic/Builtins.cpp 210SRCS_MIN+= Basic/CLWarnings.cpp 211SRCS_MIN+= Basic/CharInfo.cpp 212SRCS_MIN+= Basic/CodeGenOptions.cpp 213SRCS_MIN+= Basic/Cuda.cpp 214SRCS_MIN+= Basic/DarwinSDKInfo.cpp 215SRCS_MIN+= Basic/Diagnostic.cpp 216SRCS_MIN+= Basic/DiagnosticIDs.cpp 217SRCS_MIN+= Basic/DiagnosticOptions.cpp 218SRCS_MIN+= Basic/ExpressionTraits.cpp 219SRCS_MIN+= Basic/FileEntry.cpp 220SRCS_MIN+= Basic/FileManager.cpp 221SRCS_MIN+= Basic/FileSystemStatCache.cpp 222SRCS_MIN+= Basic/IdentifierTable.cpp 223SRCS_MIN+= Basic/LangOptions.cpp 224SRCS_MIN+= Basic/LangStandards.cpp 225SRCS_MIN+= Basic/MakeSupport.cpp 226SRCS_MIN+= Basic/Module.cpp 227SRCS_MIN+= Basic/NoSanitizeList.cpp 228SRCS_MIN+= Basic/ObjCRuntime.cpp 229SRCS_MIN+= Basic/OpenCLOptions.cpp 230SRCS_MIN+= Basic/OpenMPKinds.cpp 231SRCS_MIN+= Basic/OperatorPrecedence.cpp 232SRCS_MIN+= Basic/ParsedAttrInfo.cpp 233SRCS_MIN+= Basic/ProfileList.cpp 234SRCS_MIN+= Basic/SanitizerSpecialCaseList.cpp 235SRCS_MIN+= Basic/Sanitizers.cpp 236SRCS_MIN+= Basic/Sarif.cpp 237SRCS_MIN+= Basic/SourceLocation.cpp 238SRCS_MIN+= Basic/SourceManager.cpp 239SRCS_MIN+= Basic/SourceMgrAdapter.cpp 240SRCS_MIN+= Basic/Stack.cpp 241SRCS_MIN+= Basic/TargetID.cpp 242SRCS_MIN+= Basic/TargetInfo.cpp 243SRCS_MIN+= Basic/Targets.cpp 244SRCS_MIN+= Basic/Targets/AArch64.cpp 245SRCS_MIN+= Basic/Targets/AMDGPU.cpp 246SRCS_MIN+= Basic/Targets/ARC.cpp 247SRCS_MIN+= Basic/Targets/ARM.cpp 248SRCS_MIN+= Basic/Targets/AVR.cpp 249SRCS_MIN+= Basic/Targets/BPF.cpp 250SRCS_MIN+= Basic/Targets/CSKY.cpp 251SRCS_MIN+= Basic/Targets/DirectX.cpp 252SRCS_MIN+= Basic/Targets/Hexagon.cpp 253SRCS_MIN+= Basic/Targets/Lanai.cpp 254SRCS_MIN+= Basic/Targets/Le64.cpp 255SRCS_MIN+= Basic/Targets/LoongArch.cpp 256SRCS_MIN+= Basic/Targets/M68k.cpp 257SRCS_MIN+= Basic/Targets/MSP430.cpp 258SRCS_MIN+= Basic/Targets/Mips.cpp 259SRCS_MIN+= Basic/Targets/NVPTX.cpp 260SRCS_MIN+= Basic/Targets/OSTargets.cpp 261SRCS_MIN+= Basic/Targets/PNaCl.cpp 262SRCS_MIN+= Basic/Targets/PPC.cpp 263SRCS_MIN+= Basic/Targets/RISCV.cpp 264SRCS_MIN+= Basic/Targets/SPIR.cpp 265SRCS_MIN+= Basic/Targets/Sparc.cpp 266SRCS_MIN+= Basic/Targets/SystemZ.cpp 267SRCS_MIN+= Basic/Targets/TCE.cpp 268SRCS_MIN+= Basic/Targets/VE.cpp 269SRCS_MIN+= Basic/Targets/WebAssembly.cpp 270SRCS_MIN+= Basic/Targets/X86.cpp 271SRCS_MIN+= Basic/Targets/XCore.cpp 272SRCS_MIN+= Basic/TokenKinds.cpp 273SRCS_MIN+= Basic/TypeTraits.cpp 274SRCS_MIN+= Basic/Version.cpp 275SRCS_MIN+= Basic/Warnings.cpp 276SRCS_MIN+= Basic/XRayInstr.cpp 277SRCS_MIN+= Basic/XRayLists.cpp 278SRCS_MIN+= CodeGen/ABIInfo.cpp 279SRCS_MIN+= CodeGen/ABIInfoImpl.cpp 280SRCS_MIN+= CodeGen/BackendUtil.cpp 281SRCS_MIN+= CodeGen/CGAtomic.cpp 282SRCS_MIN+= CodeGen/CGBlocks.cpp 283SRCS_MIN+= CodeGen/CGBuiltin.cpp 284SRCS_MIN+= CodeGen/CGCUDANV.cpp 285SRCS_MIN+= CodeGen/CGCUDARuntime.cpp 286SRCS_MIN+= CodeGen/CGCXX.cpp 287SRCS_MIN+= CodeGen/CGCXXABI.cpp 288SRCS_MIN+= CodeGen/CGCall.cpp 289SRCS_MIN+= CodeGen/CGClass.cpp 290SRCS_MIN+= CodeGen/CGCleanup.cpp 291SRCS_MIN+= CodeGen/CGCoroutine.cpp 292SRCS_MIN+= CodeGen/CGDebugInfo.cpp 293SRCS_MIN+= CodeGen/CGDecl.cpp 294SRCS_MIN+= CodeGen/CGDeclCXX.cpp 295SRCS_MIN+= CodeGen/CGException.cpp 296SRCS_MIN+= CodeGen/CGExpr.cpp 297SRCS_MIN+= CodeGen/CGExprAgg.cpp 298SRCS_MIN+= CodeGen/CGExprCXX.cpp 299SRCS_MIN+= CodeGen/CGExprComplex.cpp 300SRCS_MIN+= CodeGen/CGExprConstant.cpp 301SRCS_MIN+= CodeGen/CGExprScalar.cpp 302SRCS_MIN+= CodeGen/CGGPUBuiltin.cpp 303SRCS_MIN+= CodeGen/CGHLSLRuntime.cpp 304SRCS_MIN+= CodeGen/CGLoopInfo.cpp 305SRCS_MIN+= CodeGen/CGNonTrivialStruct.cpp 306SRCS_MIN+= CodeGen/CGObjC.cpp 307SRCS_MIN+= CodeGen/CGObjCGNU.cpp 308SRCS_MIN+= CodeGen/CGObjCMac.cpp 309SRCS_MIN+= CodeGen/CGObjCRuntime.cpp 310SRCS_MIN+= CodeGen/CGOpenCLRuntime.cpp 311SRCS_MIN+= CodeGen/CGOpenMPRuntime.cpp 312SRCS_MIN+= CodeGen/CGOpenMPRuntimeGPU.cpp 313SRCS_MIN+= CodeGen/CGPointerAuth.cpp 314SRCS_MIN+= CodeGen/CGRecordLayoutBuilder.cpp 315SRCS_MIN+= CodeGen/CGStmt.cpp 316SRCS_MIN+= CodeGen/CGStmtOpenMP.cpp 317SRCS_MIN+= CodeGen/CGVTT.cpp 318SRCS_MIN+= CodeGen/CGVTables.cpp 319SRCS_MIN+= CodeGen/CodeGenAction.cpp 320SRCS_MIN+= CodeGen/CodeGenFunction.cpp 321SRCS_MIN+= CodeGen/CodeGenModule.cpp 322SRCS_MIN+= CodeGen/CodeGenPGO.cpp 323SRCS_MIN+= CodeGen/CodeGenTBAA.cpp 324SRCS_MIN+= CodeGen/CodeGenTypes.cpp 325SRCS_MIN+= CodeGen/ConstantInitBuilder.cpp 326SRCS_MIN+= CodeGen/CoverageMappingGen.cpp 327SRCS_MIN+= CodeGen/ItaniumCXXABI.cpp 328SRCS_MIN+= CodeGen/LinkInModulesPass.cpp 329SRCS_MIN+= CodeGen/MacroPPCallbacks.cpp 330SRCS_MIN+= CodeGen/MicrosoftCXXABI.cpp 331SRCS_MIN+= CodeGen/ModuleBuilder.cpp 332SRCS_MIN+= CodeGen/ObjectFilePCHContainerOperations.cpp 333SRCS_MIN+= CodeGen/PatternInit.cpp 334SRCS_MIN+= CodeGen/SanitizerMetadata.cpp 335SRCS_MIN+= CodeGen/SwiftCallingConv.cpp 336SRCS_MIN+= CodeGen/TargetInfo.cpp 337SRCS_MIN+= CodeGen/Targets/AArch64.cpp 338SRCS_MIN+= CodeGen/Targets/AMDGPU.cpp 339SRCS_MIN+= CodeGen/Targets/ARC.cpp 340SRCS_MIN+= CodeGen/Targets/ARM.cpp 341SRCS_MIN+= CodeGen/Targets/AVR.cpp 342SRCS_MIN+= CodeGen/Targets/BPF.cpp 343SRCS_MIN+= CodeGen/Targets/CSKY.cpp 344SRCS_MIN+= CodeGen/Targets/Hexagon.cpp 345SRCS_MIN+= CodeGen/Targets/Lanai.cpp 346SRCS_MIN+= CodeGen/Targets/LoongArch.cpp 347SRCS_MIN+= CodeGen/Targets/M68k.cpp 348SRCS_MIN+= CodeGen/Targets/MSP430.cpp 349SRCS_MIN+= CodeGen/Targets/Mips.cpp 350SRCS_MIN+= CodeGen/Targets/NVPTX.cpp 351SRCS_MIN+= CodeGen/Targets/PNaCl.cpp 352SRCS_MIN+= CodeGen/Targets/PPC.cpp 353SRCS_MIN+= CodeGen/Targets/RISCV.cpp 354SRCS_MIN+= CodeGen/Targets/SPIR.cpp 355SRCS_MIN+= CodeGen/Targets/Sparc.cpp 356SRCS_MIN+= CodeGen/Targets/SystemZ.cpp 357SRCS_MIN+= CodeGen/Targets/TCE.cpp 358SRCS_MIN+= CodeGen/Targets/VE.cpp 359SRCS_MIN+= CodeGen/Targets/WebAssembly.cpp 360SRCS_MIN+= CodeGen/Targets/X86.cpp 361SRCS_MIN+= CodeGen/Targets/XCore.cpp 362SRCS_MIN+= CodeGen/VarBypassDetector.cpp 363SRCS_FUL+= CrossTU/CrossTranslationUnit.cpp 364SRCS_MIN+= Driver/Action.cpp 365SRCS_MIN+= Driver/Compilation.cpp 366SRCS_MIN+= Driver/Distro.cpp 367SRCS_MIN+= Driver/Driver.cpp 368SRCS_MIN+= Driver/DriverOptions.cpp 369SRCS_MIN+= Driver/Job.cpp 370SRCS_MIN+= Driver/Multilib.cpp 371SRCS_MIN+= Driver/MultilibBuilder.cpp 372SRCS_MIN+= Driver/OptionUtils.cpp 373SRCS_MIN+= Driver/Phases.cpp 374SRCS_MIN+= Driver/SanitizerArgs.cpp 375SRCS_MIN+= Driver/Tool.cpp 376SRCS_MIN+= Driver/ToolChain.cpp 377SRCS_MIN+= Driver/ToolChains/AIX.cpp 378SRCS_MIN+= Driver/ToolChains/AMDGPU.cpp 379SRCS_MIN+= Driver/ToolChains/AMDGPUOpenMP.cpp 380SRCS_MIN+= Driver/ToolChains/AVR.cpp 381SRCS_MIN+= Driver/ToolChains/Arch/AArch64.cpp 382SRCS_MIN+= Driver/ToolChains/Arch/ARM.cpp 383SRCS_MIN+= Driver/ToolChains/Arch/CSKY.cpp 384SRCS_MIN+= Driver/ToolChains/Arch/LoongArch.cpp 385SRCS_MIN+= Driver/ToolChains/Arch/M68k.cpp 386SRCS_MIN+= Driver/ToolChains/Arch/Mips.cpp 387SRCS_MIN+= Driver/ToolChains/Arch/PPC.cpp 388SRCS_MIN+= Driver/ToolChains/Arch/RISCV.cpp 389SRCS_MIN+= Driver/ToolChains/Arch/Sparc.cpp 390SRCS_MIN+= Driver/ToolChains/Arch/SystemZ.cpp 391SRCS_MIN+= Driver/ToolChains/Arch/VE.cpp 392SRCS_MIN+= Driver/ToolChains/Arch/X86.cpp 393SRCS_MIN+= Driver/ToolChains/BareMetal.cpp 394SRCS_MIN+= Driver/ToolChains/CSKYToolChain.cpp 395SRCS_MIN+= Driver/ToolChains/Clang.cpp 396SRCS_MIN+= Driver/ToolChains/CommonArgs.cpp 397SRCS_MIN+= Driver/ToolChains/CrossWindows.cpp 398SRCS_MIN+= Driver/ToolChains/Cuda.cpp 399SRCS_MIN+= Driver/ToolChains/Darwin.cpp 400SRCS_MIN+= Driver/ToolChains/DragonFly.cpp 401SRCS_MIN+= Driver/ToolChains/Flang.cpp 402SRCS_MIN+= Driver/ToolChains/FreeBSD.cpp 403SRCS_MIN+= Driver/ToolChains/Fuchsia.cpp 404SRCS_MIN+= Driver/ToolChains/Gnu.cpp 405SRCS_MIN+= Driver/ToolChains/HIPAMD.cpp 406SRCS_MIN+= Driver/ToolChains/HIPSPV.cpp 407SRCS_MIN+= Driver/ToolChains/HIPUtility.cpp 408SRCS_MIN+= Driver/ToolChains/HLSL.cpp 409SRCS_MIN+= Driver/ToolChains/Haiku.cpp 410SRCS_MIN+= Driver/ToolChains/Hexagon.cpp 411SRCS_MIN+= Driver/ToolChains/Hurd.cpp 412SRCS_MIN+= Driver/ToolChains/InterfaceStubs.cpp 413SRCS_MIN+= Driver/ToolChains/Linux.cpp 414SRCS_MIN+= Driver/ToolChains/MSP430.cpp 415SRCS_MIN+= Driver/ToolChains/MSVC.cpp 416SRCS_MIN+= Driver/ToolChains/MinGW.cpp 417SRCS_MIN+= Driver/ToolChains/MipsLinux.cpp 418SRCS_MIN+= Driver/ToolChains/NaCl.cpp 419SRCS_MIN+= Driver/ToolChains/NetBSD.cpp 420SRCS_MIN+= Driver/ToolChains/OHOS.cpp 421SRCS_MIN+= Driver/ToolChains/OpenBSD.cpp 422SRCS_MIN+= Driver/ToolChains/PPCFreeBSD.cpp 423SRCS_MIN+= Driver/ToolChains/PPCLinux.cpp 424SRCS_MIN+= Driver/ToolChains/PS4CPU.cpp 425SRCS_MIN+= Driver/ToolChains/RISCVToolchain.cpp 426SRCS_MIN+= Driver/ToolChains/SPIRV.cpp 427SRCS_MIN+= Driver/ToolChains/Solaris.cpp 428SRCS_MIN+= Driver/ToolChains/TCE.cpp 429SRCS_MIN+= Driver/ToolChains/VEToolchain.cpp 430SRCS_MIN+= Driver/ToolChains/WebAssembly.cpp 431SRCS_MIN+= Driver/ToolChains/XCore.cpp 432SRCS_MIN+= Driver/ToolChains/ZOS.cpp 433SRCS_MIN+= Driver/Types.cpp 434SRCS_MIN+= Driver/XRayArgs.cpp 435SRCS_MIN+= Edit/Commit.cpp 436SRCS_MIN+= Edit/EditedSource.cpp 437SRCS_MIN+= Edit/RewriteObjCFoundationAPI.cpp 438SRCS_MIN+= ExtractAPI/API.cpp 439SRCS_MIN+= ExtractAPI/APIIgnoresList.cpp 440SRCS_MIN+= ExtractAPI/DeclarationFragments.cpp 441SRCS_MIN+= ExtractAPI/ExtractAPIConsumer.cpp 442SRCS_MIN+= ExtractAPI/Serialization/SymbolGraphSerializer.cpp 443SRCS_MIN+= ExtractAPI/TypedefUnderlyingTypeResolver.cpp 444SRCS_MIN+= Format/AffectedRangeManager.cpp 445SRCS_MIN+= Format/BreakableToken.cpp 446SRCS_MIN+= Format/ContinuationIndenter.cpp 447SRCS_MIN+= Format/DefinitionBlockSeparator.cpp 448SRCS_MIN+= Format/Format.cpp 449SRCS_MIN+= Format/FormatToken.cpp 450SRCS_MIN+= Format/FormatTokenLexer.cpp 451SRCS_MIN+= Format/IntegerLiteralSeparatorFixer.cpp 452SRCS_MIN+= Format/MacroCallReconstructor.cpp 453SRCS_MIN+= Format/MacroExpander.cpp 454SRCS_EXT+= Format/MatchFilePath.cpp 455SRCS_MIN+= Format/NamespaceEndCommentsFixer.cpp 456SRCS_MIN+= Format/ObjCPropertyAttributeOrderFixer.cpp 457SRCS_MIN+= Format/QualifierAlignmentFixer.cpp 458SRCS_MIN+= Format/SortJavaScriptImports.cpp 459SRCS_MIN+= Format/TokenAnalyzer.cpp 460SRCS_MIN+= Format/TokenAnnotator.cpp 461SRCS_MIN+= Format/UnwrappedLineFormatter.cpp 462SRCS_MIN+= Format/UnwrappedLineParser.cpp 463SRCS_MIN+= Format/UsingDeclarationsSorter.cpp 464SRCS_MIN+= Format/WhitespaceManager.cpp 465SRCS_MIN+= Frontend/ASTConsumers.cpp 466SRCS_MIN+= Frontend/ASTMerge.cpp 467SRCS_MIN+= Frontend/ASTUnit.cpp 468SRCS_MIN+= Frontend/ChainedDiagnosticConsumer.cpp 469SRCS_MIN+= Frontend/ChainedIncludesSource.cpp 470SRCS_MIN+= Frontend/CompilerInstance.cpp 471SRCS_MIN+= Frontend/CompilerInvocation.cpp 472SRCS_MIN+= Frontend/CreateInvocationFromCommandLine.cpp 473SRCS_MIN+= Frontend/DependencyFile.cpp 474SRCS_MIN+= Frontend/DependencyGraph.cpp 475SRCS_MIN+= Frontend/DiagnosticRenderer.cpp 476SRCS_MIN+= Frontend/FrontendAction.cpp 477SRCS_MIN+= Frontend/FrontendActions.cpp 478SRCS_MIN+= Frontend/FrontendOptions.cpp 479SRCS_MIN+= Frontend/HeaderIncludeGen.cpp 480SRCS_MIN+= Frontend/InitPreprocessor.cpp 481SRCS_MIN+= Frontend/InterfaceStubFunctionsConsumer.cpp 482SRCS_MIN+= Frontend/LayoutOverrideSource.cpp 483SRCS_MIN+= Frontend/LogDiagnosticPrinter.cpp 484SRCS_MIN+= Frontend/ModuleDependencyCollector.cpp 485SRCS_MIN+= Frontend/MultiplexConsumer.cpp 486SRCS_MIN+= Frontend/PrecompiledPreamble.cpp 487SRCS_MIN+= Frontend/PrintPreprocessedOutput.cpp 488SRCS_MIN+= Frontend/Rewrite/FixItRewriter.cpp 489SRCS_MIN+= Frontend/Rewrite/FrontendActions.cpp 490SRCS_MIN+= Frontend/Rewrite/HTMLPrint.cpp 491SRCS_MIN+= Frontend/Rewrite/InclusionRewriter.cpp 492SRCS_MIN+= Frontend/Rewrite/RewriteMacros.cpp 493SRCS_MIN+= Frontend/Rewrite/RewriteTest.cpp 494SRCS_MIN+= Frontend/SARIFDiagnostic.cpp 495SRCS_MIN+= Frontend/SARIFDiagnosticPrinter.cpp 496SRCS_MIN+= Frontend/SerializedDiagnosticPrinter.cpp 497SRCS_MIN+= Frontend/SerializedDiagnosticReader.cpp 498SRCS_MIN+= Frontend/TestModuleFileExtension.cpp 499SRCS_MIN+= Frontend/TextDiagnostic.cpp 500SRCS_MIN+= Frontend/TextDiagnosticBuffer.cpp 501SRCS_MIN+= Frontend/TextDiagnosticPrinter.cpp 502SRCS_MIN+= Frontend/VerifyDiagnosticConsumer.cpp 503SRCS_MIN+= FrontendTool/ExecuteCompilerInvocation.cpp 504SRCS_MIN+= Index/CommentToXML.cpp 505SRCS_MIN+= Index/IndexBody.cpp 506SRCS_MIN+= Index/IndexDecl.cpp 507SRCS_MIN+= Index/IndexSymbol.cpp 508SRCS_MIN+= Index/IndexTypeSourceInfo.cpp 509SRCS_MIN+= Index/IndexingAction.cpp 510SRCS_MIN+= Index/IndexingContext.cpp 511SRCS_MIN+= Index/USRGeneration.cpp 512SRCS_MIN+= InstallAPI/HeaderFile.cpp 513SRCS_MIN+= Lex/DependencyDirectivesScanner.cpp 514SRCS_MIN+= Lex/HeaderMap.cpp 515SRCS_MIN+= Lex/HeaderSearch.cpp 516SRCS_MIN+= Lex/InitHeaderSearch.cpp 517SRCS_MIN+= Lex/Lexer.cpp 518SRCS_MIN+= Lex/LiteralSupport.cpp 519SRCS_MIN+= Lex/MacroArgs.cpp 520SRCS_MIN+= Lex/MacroInfo.cpp 521SRCS_MIN+= Lex/ModuleMap.cpp 522SRCS_MIN+= Lex/PPCaching.cpp 523SRCS_MIN+= Lex/PPCallbacks.cpp 524SRCS_MIN+= Lex/PPConditionalDirectiveRecord.cpp 525SRCS_MIN+= Lex/PPDirectives.cpp 526SRCS_MIN+= Lex/PPExpressions.cpp 527SRCS_MIN+= Lex/PPLexerChange.cpp 528SRCS_MIN+= Lex/PPMacroExpansion.cpp 529SRCS_MIN+= Lex/Pragma.cpp 530SRCS_MIN+= Lex/PreprocessingRecord.cpp 531SRCS_MIN+= Lex/Preprocessor.cpp 532SRCS_MIN+= Lex/PreprocessorLexer.cpp 533SRCS_MIN+= Lex/ScratchBuffer.cpp 534SRCS_MIN+= Lex/TokenConcatenation.cpp 535SRCS_MIN+= Lex/TokenLexer.cpp 536SRCS_MIN+= Parse/ParseAST.cpp 537SRCS_MIN+= Parse/ParseCXXInlineMethods.cpp 538SRCS_MIN+= Parse/ParseDecl.cpp 539SRCS_MIN+= Parse/ParseDeclCXX.cpp 540SRCS_MIN+= Parse/ParseExpr.cpp 541SRCS_MIN+= Parse/ParseExprCXX.cpp 542SRCS_MIN+= Parse/ParseHLSL.cpp 543SRCS_MIN+= Parse/ParseInit.cpp 544SRCS_MIN+= Parse/ParseObjc.cpp 545SRCS_MIN+= Parse/ParseOpenACC.cpp 546SRCS_MIN+= Parse/ParseOpenMP.cpp 547SRCS_MIN+= Parse/ParsePragma.cpp 548SRCS_MIN+= Parse/ParseStmt.cpp 549SRCS_MIN+= Parse/ParseStmtAsm.cpp 550SRCS_MIN+= Parse/ParseTemplate.cpp 551SRCS_MIN+= Parse/ParseTentative.cpp 552SRCS_MIN+= Parse/Parser.cpp 553SRCS_MIN+= Rewrite/DeltaTree.cpp 554SRCS_MIN+= Rewrite/HTMLRewrite.cpp 555SRCS_MIN+= Rewrite/RewriteRope.cpp 556SRCS_MIN+= Rewrite/Rewriter.cpp 557SRCS_MIN+= Rewrite/TokenRewriter.cpp 558SRCS_MIN+= Sema/AnalysisBasedWarnings.cpp 559SRCS_MIN+= Sema/CheckExprLifetime.cpp 560SRCS_MIN+= Sema/CodeCompleteConsumer.cpp 561SRCS_MIN+= Sema/DeclSpec.cpp 562SRCS_MIN+= Sema/DelayedDiagnostic.cpp 563SRCS_MIN+= Sema/HLSLExternalSemaSource.cpp 564SRCS_MIN+= Sema/IdentifierResolver.cpp 565SRCS_MIN+= Sema/JumpDiagnostics.cpp 566SRCS_MIN+= Sema/MultiplexExternalSemaSource.cpp 567SRCS_MIN+= Sema/ParsedAttr.cpp 568SRCS_MIN+= Sema/Scope.cpp 569SRCS_MIN+= Sema/ScopeInfo.cpp 570SRCS_MIN+= Sema/Sema.cpp 571SRCS_MIN+= Sema/SemaAMDGPU.cpp 572SRCS_MIN+= Sema/SemaAPINotes.cpp 573SRCS_MIN+= Sema/SemaARM.cpp 574SRCS_MIN+= Sema/SemaAVR.cpp 575SRCS_MIN+= Sema/SemaAccess.cpp 576SRCS_MIN+= Sema/SemaAttr.cpp 577SRCS_MIN+= Sema/SemaAvailability.cpp 578SRCS_MIN+= Sema/SemaBPF.cpp 579SRCS_MIN+= Sema/SemaBase.cpp 580SRCS_MIN+= Sema/SemaBoundsSafety.cpp 581SRCS_MIN+= Sema/SemaCUDA.cpp 582SRCS_MIN+= Sema/SemaCXXScopeSpec.cpp 583SRCS_MIN+= Sema/SemaCast.cpp 584SRCS_MIN+= Sema/SemaChecking.cpp 585SRCS_MIN+= Sema/SemaCodeComplete.cpp 586SRCS_MIN+= Sema/SemaConcept.cpp 587SRCS_MIN+= Sema/SemaConsumer.cpp 588SRCS_MIN+= Sema/SemaCoroutine.cpp 589SRCS_MIN+= Sema/SemaDecl.cpp 590SRCS_MIN+= Sema/SemaDeclAttr.cpp 591SRCS_MIN+= Sema/SemaDeclCXX.cpp 592SRCS_MIN+= Sema/SemaDeclObjC.cpp 593SRCS_MIN+= Sema/SemaExceptionSpec.cpp 594SRCS_MIN+= Sema/SemaExpr.cpp 595SRCS_MIN+= Sema/SemaExprCXX.cpp 596SRCS_MIN+= Sema/SemaExprMember.cpp 597SRCS_MIN+= Sema/SemaExprObjC.cpp 598SRCS_MIN+= Sema/SemaFixItUtils.cpp 599SRCS_MIN+= Sema/SemaHLSL.cpp 600SRCS_MIN+= Sema/SemaHexagon.cpp 601SRCS_MIN+= Sema/SemaInit.cpp 602SRCS_MIN+= Sema/SemaLambda.cpp 603SRCS_MIN+= Sema/SemaLookup.cpp 604SRCS_MIN+= Sema/SemaLoongArch.cpp 605SRCS_MIN+= Sema/SemaM68k.cpp 606SRCS_MIN+= Sema/SemaMIPS.cpp 607SRCS_MIN+= Sema/SemaMSP430.cpp 608SRCS_MIN+= Sema/SemaModule.cpp 609SRCS_MIN+= Sema/SemaNVPTX.cpp 610SRCS_MIN+= Sema/SemaObjC.cpp 611SRCS_MIN+= Sema/SemaObjCProperty.cpp 612SRCS_MIN+= Sema/SemaOpenACC.cpp 613SRCS_MIN+= Sema/SemaOpenCL.cpp 614SRCS_MIN+= Sema/SemaOpenMP.cpp 615SRCS_MIN+= Sema/SemaOverload.cpp 616SRCS_MIN+= Sema/SemaPPC.cpp 617SRCS_MIN+= Sema/SemaPseudoObject.cpp 618SRCS_MIN+= Sema/SemaRISCV.cpp 619SRCS_MIN+= Sema/SemaSYCL.cpp 620SRCS_MIN+= Sema/SemaStmt.cpp 621SRCS_MIN+= Sema/SemaStmtAsm.cpp 622SRCS_MIN+= Sema/SemaStmtAttr.cpp 623SRCS_MIN+= Sema/SemaSwift.cpp 624SRCS_MIN+= Sema/SemaSystemZ.cpp 625SRCS_MIN+= Sema/SemaWasm.cpp 626SRCS_MIN+= Sema/SemaX86.cpp 627SRCS_MIN+= Sema/SemaTemplate.cpp 628SRCS_MIN+= Sema/SemaTemplateDeduction.cpp 629SRCS_MIN+= Sema/SemaTemplateDeductionGuide.cpp 630SRCS_MIN+= Sema/SemaTemplateInstantiate.cpp 631SRCS_MIN+= Sema/SemaTemplateInstantiateDecl.cpp 632SRCS_MIN+= Sema/SemaTemplateVariadic.cpp 633SRCS_MIN+= Sema/SemaType.cpp 634SRCS_MIN+= Sema/TypeLocBuilder.cpp 635SRCS_MIN+= Serialization/ASTCommon.cpp 636SRCS_MIN+= Serialization/ASTReader.cpp 637SRCS_MIN+= Serialization/ASTReaderDecl.cpp 638SRCS_MIN+= Serialization/ASTReaderStmt.cpp 639SRCS_MIN+= Serialization/ASTWriter.cpp 640SRCS_MIN+= Serialization/ASTWriterDecl.cpp 641SRCS_MIN+= Serialization/ASTWriterStmt.cpp 642SRCS_MIN+= Serialization/GeneratePCH.cpp 643SRCS_MIN+= Serialization/GlobalModuleIndex.cpp 644SRCS_MIN+= Serialization/InMemoryModuleCache.cpp 645SRCS_MIN+= Serialization/ModuleFile.cpp 646SRCS_MIN+= Serialization/ModuleFileExtension.cpp 647SRCS_MIN+= Serialization/ModuleManager.cpp 648SRCS_MIN+= Serialization/PCHContainerOperations.cpp 649SRCS_FUL+= StaticAnalyzer/Checkers/AnalysisOrderChecker.cpp 650SRCS_FUL+= StaticAnalyzer/Checkers/AnalyzerStatsChecker.cpp 651SRCS_FUL+= StaticAnalyzer/Checkers/ArrayBoundChecker.cpp 652SRCS_FUL+= StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp 653SRCS_FUL+= StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp 654SRCS_FUL+= StaticAnalyzer/Checkers/BitwiseShiftChecker.cpp 655SRCS_FUL+= StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp 656SRCS_FUL+= StaticAnalyzer/Checkers/BoolAssignmentChecker.cpp 657SRCS_FUL+= StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp 658SRCS_FUL+= StaticAnalyzer/Checkers/CStringChecker.cpp 659SRCS_FUL+= StaticAnalyzer/Checkers/CStringSyntaxChecker.cpp 660SRCS_FUL+= StaticAnalyzer/Checkers/CXXDeleteChecker.cpp 661SRCS_FUL+= StaticAnalyzer/Checkers/CXXSelfAssignmentChecker.cpp 662SRCS_FUL+= StaticAnalyzer/Checkers/CallAndMessageChecker.cpp 663SRCS_FUL+= StaticAnalyzer/Checkers/CastSizeChecker.cpp 664SRCS_FUL+= StaticAnalyzer/Checkers/CastToStructChecker.cpp 665SRCS_FUL+= StaticAnalyzer/Checkers/CastValueChecker.cpp 666SRCS_FUL+= StaticAnalyzer/Checkers/CheckObjCDealloc.cpp 667SRCS_FUL+= StaticAnalyzer/Checkers/CheckObjCInstMethSignature.cpp 668SRCS_FUL+= StaticAnalyzer/Checkers/CheckPlacementNew.cpp 669SRCS_FUL+= StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp 670SRCS_FUL+= StaticAnalyzer/Checkers/CheckerDocumentation.cpp 671SRCS_FUL+= StaticAnalyzer/Checkers/ChrootChecker.cpp 672SRCS_FUL+= StaticAnalyzer/Checkers/CloneChecker.cpp 673SRCS_FUL+= StaticAnalyzer/Checkers/ContainerModeling.cpp 674SRCS_FUL+= StaticAnalyzer/Checkers/ConversionChecker.cpp 675SRCS_FUL+= StaticAnalyzer/Checkers/DeadStoresChecker.cpp 676SRCS_FUL+= StaticAnalyzer/Checkers/DebugCheckers.cpp 677SRCS_FUL+= StaticAnalyzer/Checkers/DebugContainerModeling.cpp 678SRCS_FUL+= StaticAnalyzer/Checkers/DebugIteratorModeling.cpp 679SRCS_FUL+= StaticAnalyzer/Checkers/DereferenceChecker.cpp 680SRCS_FUL+= StaticAnalyzer/Checkers/DirectIvarAssignment.cpp 681SRCS_FUL+= StaticAnalyzer/Checkers/DivZeroChecker.cpp 682SRCS_FUL+= StaticAnalyzer/Checkers/DynamicTypeChecker.cpp 683SRCS_FUL+= StaticAnalyzer/Checkers/DynamicTypePropagation.cpp 684SRCS_FUL+= StaticAnalyzer/Checkers/EnumCastOutOfRangeChecker.cpp 685SRCS_FUL+= StaticAnalyzer/Checkers/ErrnoChecker.cpp 686SRCS_FUL+= StaticAnalyzer/Checkers/ErrnoModeling.cpp 687SRCS_FUL+= StaticAnalyzer/Checkers/ErrnoTesterChecker.cpp 688SRCS_FUL+= StaticAnalyzer/Checkers/ExprInspectionChecker.cpp 689SRCS_FUL+= StaticAnalyzer/Checkers/FixedAddressChecker.cpp 690SRCS_FUL+= StaticAnalyzer/Checkers/FuchsiaHandleChecker.cpp 691SRCS_FUL+= StaticAnalyzer/Checkers/GCDAntipatternChecker.cpp 692SRCS_FUL+= StaticAnalyzer/Checkers/GTestChecker.cpp 693SRCS_FUL+= StaticAnalyzer/Checkers/GenericTaintChecker.cpp 694SRCS_FUL+= StaticAnalyzer/Checkers/IdenticalExprChecker.cpp 695SRCS_FUL+= StaticAnalyzer/Checkers/InnerPointerChecker.cpp 696SRCS_FUL+= StaticAnalyzer/Checkers/InvalidatedIteratorChecker.cpp 697SRCS_FUL+= StaticAnalyzer/Checkers/Iterator.cpp 698SRCS_FUL+= StaticAnalyzer/Checkers/IteratorModeling.cpp 699SRCS_FUL+= StaticAnalyzer/Checkers/IteratorRangeChecker.cpp 700SRCS_FUL+= StaticAnalyzer/Checkers/IvarInvalidationChecker.cpp 701SRCS_FUL+= StaticAnalyzer/Checkers/LLVMConventionsChecker.cpp 702SRCS_FUL+= StaticAnalyzer/Checkers/LocalizationChecker.cpp 703SRCS_FUL+= StaticAnalyzer/Checkers/MIGChecker.cpp 704SRCS_FUL+= StaticAnalyzer/Checkers/MPI-Checker/MPIBugReporter.cpp 705SRCS_FUL+= StaticAnalyzer/Checkers/MPI-Checker/MPIChecker.cpp 706SRCS_FUL+= StaticAnalyzer/Checkers/MPI-Checker/MPIFunctionClassifier.cpp 707SRCS_FUL+= StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp 708SRCS_FUL+= StaticAnalyzer/Checkers/MacOSXAPIChecker.cpp 709SRCS_FUL+= StaticAnalyzer/Checkers/MallocChecker.cpp 710SRCS_FUL+= StaticAnalyzer/Checkers/MallocOverflowSecurityChecker.cpp 711SRCS_FUL+= StaticAnalyzer/Checkers/MallocSizeofChecker.cpp 712SRCS_FUL+= StaticAnalyzer/Checkers/MismatchedIteratorChecker.cpp 713SRCS_FUL+= StaticAnalyzer/Checkers/MmapWriteExecChecker.cpp 714SRCS_FUL+= StaticAnalyzer/Checkers/MoveChecker.cpp 715SRCS_FUL+= StaticAnalyzer/Checkers/NSAutoreleasePoolChecker.cpp 716SRCS_FUL+= StaticAnalyzer/Checkers/NSErrorChecker.cpp 717SRCS_FUL+= StaticAnalyzer/Checkers/NoOwnershipChangeVisitor.cpp 718SRCS_FUL+= StaticAnalyzer/Checkers/NoReturnFunctionChecker.cpp 719SRCS_FUL+= StaticAnalyzer/Checkers/NonNullParamChecker.cpp 720SRCS_FUL+= StaticAnalyzer/Checkers/NonnullGlobalConstantsChecker.cpp 721SRCS_FUL+= StaticAnalyzer/Checkers/NullabilityChecker.cpp 722SRCS_FUL+= StaticAnalyzer/Checkers/NumberObjectConversionChecker.cpp 723SRCS_FUL+= StaticAnalyzer/Checkers/OSObjectCStyleCast.cpp 724SRCS_FUL+= StaticAnalyzer/Checkers/ObjCAtSyncChecker.cpp 725SRCS_FUL+= StaticAnalyzer/Checkers/ObjCAutoreleaseWriteChecker.cpp 726SRCS_FUL+= StaticAnalyzer/Checkers/ObjCContainersASTChecker.cpp 727SRCS_FUL+= StaticAnalyzer/Checkers/ObjCContainersChecker.cpp 728SRCS_FUL+= StaticAnalyzer/Checkers/ObjCMissingSuperCallChecker.cpp 729SRCS_FUL+= StaticAnalyzer/Checkers/ObjCPropertyChecker.cpp 730SRCS_FUL+= StaticAnalyzer/Checkers/ObjCSelfInitChecker.cpp 731SRCS_FUL+= StaticAnalyzer/Checkers/ObjCSuperDeallocChecker.cpp 732SRCS_FUL+= StaticAnalyzer/Checkers/ObjCUnusedIVarsChecker.cpp 733SRCS_FUL+= StaticAnalyzer/Checkers/PaddingChecker.cpp 734SRCS_FUL+= StaticAnalyzer/Checkers/PointerArithChecker.cpp 735SRCS_FUL+= StaticAnalyzer/Checkers/PointerIterationChecker.cpp 736SRCS_FUL+= StaticAnalyzer/Checkers/PointerSortingChecker.cpp 737SRCS_FUL+= StaticAnalyzer/Checkers/PointerSubChecker.cpp 738SRCS_FUL+= StaticAnalyzer/Checkers/PthreadLockChecker.cpp 739SRCS_FUL+= StaticAnalyzer/Checkers/PutenvStackArrayChecker.cpp 740SRCS_FUL+= StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.cpp 741SRCS_FUL+= StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp 742SRCS_FUL+= StaticAnalyzer/Checkers/ReturnPointerRangeChecker.cpp 743SRCS_FUL+= StaticAnalyzer/Checkers/ReturnUndefChecker.cpp 744SRCS_FUL+= StaticAnalyzer/Checkers/ReturnValueChecker.cpp 745SRCS_FUL+= StaticAnalyzer/Checkers/RunLoopAutoreleaseLeakChecker.cpp 746SRCS_FUL+= StaticAnalyzer/Checkers/STLAlgorithmModeling.cpp 747SRCS_FUL+= StaticAnalyzer/Checkers/SetgidSetuidOrderChecker.cpp 748SRCS_FUL+= StaticAnalyzer/Checkers/SimpleStreamChecker.cpp 749SRCS_FUL+= StaticAnalyzer/Checkers/SmartPtrChecker.cpp 750SRCS_FUL+= StaticAnalyzer/Checkers/SmartPtrModeling.cpp 751SRCS_FUL+= StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp 752SRCS_FUL+= StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp 753SRCS_FUL+= StaticAnalyzer/Checkers/StdVariantChecker.cpp 754SRCS_FUL+= StaticAnalyzer/Checkers/StreamChecker.cpp 755SRCS_FUL+= StaticAnalyzer/Checkers/StringChecker.cpp 756SRCS_FUL+= StaticAnalyzer/Checkers/Taint.cpp 757SRCS_FUL+= StaticAnalyzer/Checkers/TaintTesterChecker.cpp 758SRCS_FUL+= StaticAnalyzer/Checkers/TestAfterDivZeroChecker.cpp 759SRCS_FUL+= StaticAnalyzer/Checkers/TraversalChecker.cpp 760SRCS_FUL+= StaticAnalyzer/Checkers/TrustNonnullChecker.cpp 761SRCS_FUL+= StaticAnalyzer/Checkers/TrustReturnsNonnullChecker.cpp 762SRCS_FUL+= StaticAnalyzer/Checkers/UndefBranchChecker.cpp 763SRCS_FUL+= StaticAnalyzer/Checkers/UndefCapturedBlockVarChecker.cpp 764SRCS_FUL+= StaticAnalyzer/Checkers/UndefResultChecker.cpp 765SRCS_FUL+= StaticAnalyzer/Checkers/UndefinedArraySubscriptChecker.cpp 766SRCS_FUL+= StaticAnalyzer/Checkers/UndefinedAssignmentChecker.cpp 767SRCS_FUL+= StaticAnalyzer/Checkers/UndefinedNewArraySizeChecker.cpp 768SRCS_FUL+= StaticAnalyzer/Checkers/UninitializedObject/UninitializedObjectChecker.cpp 769SRCS_FUL+= StaticAnalyzer/Checkers/UninitializedObject/UninitializedPointee.cpp 770SRCS_FUL+= StaticAnalyzer/Checkers/UnixAPIChecker.cpp 771SRCS_FUL+= StaticAnalyzer/Checkers/UnreachableCodeChecker.cpp 772SRCS_FUL+= StaticAnalyzer/Checkers/VLASizeChecker.cpp 773SRCS_FUL+= StaticAnalyzer/Checkers/ValistChecker.cpp 774SRCS_FUL+= StaticAnalyzer/Checkers/VforkChecker.cpp 775SRCS_FUL+= StaticAnalyzer/Checkers/VirtualCallChecker.cpp 776SRCS_FUL+= StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp 777SRCS_FUL+= StaticAnalyzer/Checkers/WebKit/NoUncountedMembersChecker.cpp 778SRCS_FUL+= StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp 779SRCS_FUL+= StaticAnalyzer/Checkers/WebKit/RefCntblBaseVirtualDtorChecker.cpp 780SRCS_FUL+= StaticAnalyzer/Checkers/WebKit/UncountedCallArgsChecker.cpp 781SRCS_FUL+= StaticAnalyzer/Checkers/WebKit/UncountedLambdaCapturesChecker.cpp 782SRCS_FUL+= StaticAnalyzer/Checkers/WebKit/UncountedLocalVarsChecker.cpp 783SRCS_FUL+= StaticAnalyzer/Checkers/cert/InvalidPtrChecker.cpp 784SRCS_FUL+= StaticAnalyzer/Core/APSIntType.cpp 785SRCS_FUL+= StaticAnalyzer/Core/AnalysisManager.cpp 786SRCS_FUL+= StaticAnalyzer/Core/AnalyzerOptions.cpp 787SRCS_FUL+= StaticAnalyzer/Core/BasicValueFactory.cpp 788SRCS_FUL+= StaticAnalyzer/Core/BlockCounter.cpp 789SRCS_FUL+= StaticAnalyzer/Core/BugReporter.cpp 790SRCS_FUL+= StaticAnalyzer/Core/BugReporterVisitors.cpp 791SRCS_FUL+= StaticAnalyzer/Core/BugSuppression.cpp 792SRCS_FUL+= StaticAnalyzer/Core/CallDescription.cpp 793SRCS_FUL+= StaticAnalyzer/Core/CallEvent.cpp 794SRCS_FUL+= StaticAnalyzer/Core/Checker.cpp 795SRCS_FUL+= StaticAnalyzer/Core/CheckerContext.cpp 796SRCS_FUL+= StaticAnalyzer/Core/CheckerHelpers.cpp 797SRCS_FUL+= StaticAnalyzer/Core/CheckerManager.cpp 798SRCS_FUL+= StaticAnalyzer/Core/CheckerRegistryData.cpp 799SRCS_FUL+= StaticAnalyzer/Core/CommonBugCategories.cpp 800SRCS_FUL+= StaticAnalyzer/Core/ConstraintManager.cpp 801SRCS_FUL+= StaticAnalyzer/Core/CoreEngine.cpp 802SRCS_FUL+= StaticAnalyzer/Core/DynamicExtent.cpp 803SRCS_FUL+= StaticAnalyzer/Core/DynamicType.cpp 804SRCS_FUL+= StaticAnalyzer/Core/Environment.cpp 805SRCS_FUL+= StaticAnalyzer/Core/ExplodedGraph.cpp 806SRCS_FUL+= StaticAnalyzer/Core/ExprEngine.cpp 807SRCS_FUL+= StaticAnalyzer/Core/ExprEngineC.cpp 808SRCS_FUL+= StaticAnalyzer/Core/ExprEngineCXX.cpp 809SRCS_FUL+= StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp 810SRCS_FUL+= StaticAnalyzer/Core/ExprEngineObjC.cpp 811SRCS_FUL+= StaticAnalyzer/Core/FunctionSummary.cpp 812SRCS_FUL+= StaticAnalyzer/Core/HTMLDiagnostics.cpp 813SRCS_FUL+= StaticAnalyzer/Core/LoopUnrolling.cpp 814SRCS_FUL+= StaticAnalyzer/Core/LoopWidening.cpp 815SRCS_FUL+= StaticAnalyzer/Core/MemRegion.cpp 816SRCS_FUL+= StaticAnalyzer/Core/PlistDiagnostics.cpp 817SRCS_FUL+= StaticAnalyzer/Core/ProgramState.cpp 818SRCS_FUL+= StaticAnalyzer/Core/RangeConstraintManager.cpp 819SRCS_FUL+= StaticAnalyzer/Core/RangedConstraintManager.cpp 820SRCS_FUL+= StaticAnalyzer/Core/RegionStore.cpp 821SRCS_FUL+= StaticAnalyzer/Core/SMTConstraintManager.cpp 822SRCS_FUL+= StaticAnalyzer/Core/SValBuilder.cpp 823SRCS_FUL+= StaticAnalyzer/Core/SVals.cpp 824SRCS_FUL+= StaticAnalyzer/Core/SarifDiagnostics.cpp 825SRCS_FUL+= StaticAnalyzer/Core/SimpleConstraintManager.cpp 826SRCS_FUL+= StaticAnalyzer/Core/SimpleSValBuilder.cpp 827SRCS_FUL+= StaticAnalyzer/Core/Store.cpp 828SRCS_FUL+= StaticAnalyzer/Core/SymbolManager.cpp 829SRCS_FUL+= StaticAnalyzer/Core/TextDiagnostics.cpp 830SRCS_FUL+= StaticAnalyzer/Core/WorkList.cpp 831SRCS_FUL+= StaticAnalyzer/Core/Z3CrosscheckVisitor.cpp 832SRCS_FUL+= StaticAnalyzer/Frontend/AnalysisConsumer.cpp 833SRCS_FUL+= StaticAnalyzer/Frontend/AnalyzerHelpFlags.cpp 834SRCS_FUL+= StaticAnalyzer/Frontend/CheckerRegistry.cpp 835SRCS_FUL+= StaticAnalyzer/Frontend/CreateCheckerManager.cpp 836SRCS_FUL+= StaticAnalyzer/Frontend/FrontendActions.cpp 837SRCS_FUL+= StaticAnalyzer/Frontend/ModelConsumer.cpp 838SRCS_FUL+= StaticAnalyzer/Frontend/ModelInjector.cpp 839SRCS_MIN+= Support/RISCVVIntrinsicUtils.cpp 840SRCS_MIN+= Tooling/ArgumentsAdjusters.cpp 841SRCS_MIN+= Tooling/CommonOptionsParser.cpp 842SRCS_MIN+= Tooling/CompilationDatabase.cpp 843SRCS_MIN+= Tooling/Core/Replacement.cpp 844SRCS_MIN+= Tooling/ExpandResponseFilesCompilationDatabase.cpp 845SRCS_MIN+= Tooling/FileMatchTrie.cpp 846SRCS_MIN+= Tooling/GuessTargetAndModeCompilationDatabase.cpp 847SRCS_MIN+= Tooling/Inclusions/HeaderIncludes.cpp 848SRCS_MIN+= Tooling/Inclusions/IncludeStyle.cpp 849SRCS_MIN+= Tooling/InterpolatingCompilationDatabase.cpp 850SRCS_MIN+= Tooling/JSONCompilationDatabase.cpp 851SRCS_MIN+= Tooling/Refactoring.cpp 852SRCS_MIN+= Tooling/RefactoringCallbacks.cpp 853SRCS_MIN+= Tooling/Tooling.cpp 854 855SRCS_ALL+= ${SRCS_MIN} 856.if ${MK_CLANG_EXTRAS} != "no" || ${MK_CLANG_FORMAT} != "no" 857SRCS_ALL+= ${SRCS_EXT} 858.endif 859.if ${MK_CLANG_FULL} != "no" 860SRCS_ALL+= ${SRCS_FUL} 861.endif 862.if ${MK_LLDB} != "no" 863SRCS_ALL+= ${SRCS_LDB} 864.endif 865SRCS+= ${SRCS_ALL:O} 866 867LIBDEPS+= llvm 868 869.if defined(TOOLS_PREFIX) 870LIBPRIV= 871LIBEXT= a 872.else 873LIBPRIV= private 874LIBEXT= so 875.endif 876 877.for lib in ${LIBDEPS} 878DPADD+= ${OBJTOP}/lib/clang/lib${lib}/lib${LIBPRIV}${lib}.${LIBEXT} 879LDADD+= ${OBJTOP}/lib/clang/lib${lib}/lib${LIBPRIV}${lib}.${LIBEXT} 880.endfor 881 882clang/AST/AbstractBasicReader.inc: \ 883 ${CLANG_SRCS}/include/clang/AST/PropertiesBase.td 884 ${CLANG_TBLGEN} -gen-clang-basic-reader \ 885 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 886 ${CLANG_SRCS}/include/clang/AST/PropertiesBase.td 887TGHDRS+= clang/AST/AbstractBasicReader.inc 888 889clang/AST/AbstractBasicWriter.inc: \ 890 ${CLANG_SRCS}/include/clang/AST/PropertiesBase.td 891 ${CLANG_TBLGEN} -gen-clang-basic-writer \ 892 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 893 ${CLANG_SRCS}/include/clang/AST/PropertiesBase.td 894TGHDRS+= clang/AST/AbstractBasicWriter.inc 895 896clang/AST/AbstractTypeReader.inc: \ 897 ${CLANG_SRCS}/include/clang/AST/TypeProperties.td 898 ${CLANG_TBLGEN} -gen-clang-type-reader \ 899 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 900 ${CLANG_SRCS}/include/clang/AST/TypeProperties.td 901TGHDRS+= clang/AST/AbstractTypeReader.inc 902 903clang/AST/AbstractTypeWriter.inc: \ 904 ${CLANG_SRCS}/include/clang/AST/TypeProperties.td 905 ${CLANG_TBLGEN} -gen-clang-type-writer \ 906 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 907 ${CLANG_SRCS}/include/clang/AST/TypeProperties.td 908TGHDRS+= clang/AST/AbstractTypeWriter.inc 909 910clang/AST/AttrImpl.inc: ${CLANG_SRCS}/include/clang/Basic/Attr.td 911 ${CLANG_TBLGEN} -gen-clang-attr-impl \ 912 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 913 ${CLANG_SRCS}/include/clang/Basic/Attr.td 914TGHDRS+= clang/AST/AttrImpl.inc 915 916clang/AST/AttrNodeTraverse.inc: ${CLANG_SRCS}/include/clang/Basic/Attr.td 917 ${CLANG_TBLGEN} -gen-clang-attr-node-traverse \ 918 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 919 ${CLANG_SRCS}/include/clang/Basic/Attr.td 920TGHDRS+= clang/AST/AttrNodeTraverse.inc 921 922clang/AST/AttrTextNodeDump.inc: ${CLANG_SRCS}/include/clang/Basic/Attr.td 923 ${CLANG_TBLGEN} -gen-clang-attr-text-node-dump \ 924 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 925 ${CLANG_SRCS}/include/clang/Basic/Attr.td 926TGHDRS+= clang/AST/AttrTextNodeDump.inc 927 928clang/AST/AttrVisitor.inc: ${CLANG_SRCS}/include/clang/Basic/Attr.td 929 ${CLANG_TBLGEN} -gen-clang-attr-ast-visitor \ 930 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 931 ${CLANG_SRCS}/include/clang/Basic/Attr.td 932TGHDRS+= clang/AST/AttrVisitor.inc 933 934clang/AST/Attrs.inc: ${CLANG_SRCS}/include/clang/Basic/Attr.td 935 ${CLANG_TBLGEN} -gen-clang-attr-classes \ 936 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 937 ${CLANG_SRCS}/include/clang/Basic/Attr.td 938TGHDRS+= clang/AST/Attrs.inc 939 940clang/AST/CommentCommandInfo.inc: \ 941 ${CLANG_SRCS}/include/clang/AST/CommentCommands.td 942 ${CLANG_TBLGEN} -gen-clang-comment-command-info \ 943 -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 944 ${CLANG_SRCS}/include/clang/AST/CommentCommands.td 945TGHDRS+= clang/AST/CommentCommandInfo.inc 946 947clang/AST/CommentCommandList.inc: \ 948 ${CLANG_SRCS}/include/clang/AST/CommentCommands.td 949 ${CLANG_TBLGEN} -gen-clang-comment-command-list \ 950 -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 951 ${CLANG_SRCS}/include/clang/AST/CommentCommands.td 952TGHDRS+= clang/AST/CommentCommandList.inc 953 954clang/AST/CommentHTMLNamedCharacterReferences.inc: \ 955 ${CLANG_SRCS}/include/clang/AST/CommentHTMLNamedCharacterReferences.td 956 ${CLANG_TBLGEN} -gen-clang-comment-html-named-character-references \ 957 -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 958 ${CLANG_SRCS}/include/clang/AST/CommentHTMLNamedCharacterReferences.td 959TGHDRS+= clang/AST/CommentHTMLNamedCharacterReferences.inc 960 961clang/AST/CommentHTMLTags.inc: \ 962 ${CLANG_SRCS}/include/clang/AST/CommentHTMLTags.td 963 ${CLANG_TBLGEN} -gen-clang-comment-html-tags \ 964 -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 965 ${CLANG_SRCS}/include/clang/AST/CommentHTMLTags.td 966TGHDRS+= clang/AST/CommentHTMLTags.inc 967 968clang/AST/CommentHTMLTagsProperties.inc: \ 969 ${CLANG_SRCS}/include/clang/AST/CommentHTMLTags.td 970 ${CLANG_TBLGEN} -gen-clang-comment-html-tags-properties \ 971 -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 972 ${CLANG_SRCS}/include/clang/AST/CommentHTMLTags.td 973TGHDRS+= clang/AST/CommentHTMLTagsProperties.inc 974 975clang/AST/CommentNodes.inc: ${CLANG_SRCS}/include/clang/Basic/CommentNodes.td 976 ${CLANG_TBLGEN} -gen-clang-comment-nodes \ 977 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 978 ${CLANG_SRCS}/include/clang/Basic/CommentNodes.td 979TGHDRS+= clang/AST/CommentNodes.inc 980 981clang/AST/DeclNodes.inc: ${CLANG_SRCS}/include/clang/Basic/DeclNodes.td 982 ${CLANG_TBLGEN} -gen-clang-decl-nodes \ 983 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 984 ${CLANG_SRCS}/include/clang/Basic/DeclNodes.td 985TGHDRS+= clang/AST/DeclNodes.inc 986 987clang/AST/StmtDataCollectors.inc: \ 988 ${CLANG_SRCS}/include/clang/AST/StmtDataCollectors.td 989 ${CLANG_TBLGEN} -gen-clang-data-collectors \ 990 -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 991 ${CLANG_SRCS}/include/clang/AST/StmtDataCollectors.td 992TGHDRS+= clang/AST/StmtDataCollectors.inc 993 994clang/AST/StmtNodes.inc: ${CLANG_SRCS}/include/clang/Basic/StmtNodes.td 995 ${CLANG_TBLGEN} -gen-clang-stmt-nodes \ 996 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 997 ${CLANG_SRCS}/include/clang/Basic/StmtNodes.td 998TGHDRS+= clang/AST/StmtNodes.inc 999 1000clang/AST/TypeNodes.inc: ${CLANG_SRCS}/include/clang/Basic/TypeNodes.td 1001 ${CLANG_TBLGEN} -gen-clang-type-nodes \ 1002 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1003 ${CLANG_SRCS}/include/clang/Basic/TypeNodes.td 1004TGHDRS+= clang/AST/TypeNodes.inc 1005 1006clang/Basic/AttrHasAttributeImpl.inc: ${CLANG_SRCS}/include/clang/Basic/Attr.td 1007 ${CLANG_TBLGEN} -gen-clang-attr-has-attribute-impl \ 1008 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1009 ${CLANG_SRCS}/include/clang/Basic/Attr.td 1010TGHDRS+= clang/Basic/AttrHasAttributeImpl.inc 1011 1012clang/Basic/AttrList.inc: ${CLANG_SRCS}/include/clang/Basic/Attr.td 1013 ${CLANG_TBLGEN} -gen-clang-attr-list \ 1014 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1015 ${CLANG_SRCS}/include/clang/Basic/Attr.td 1016TGHDRS+= clang/Basic/AttrList.inc 1017 1018clang/Basic/AttrSubMatchRulesList.inc: ${CLANG_SRCS}/include/clang/Basic/Attr.td 1019 ${CLANG_TBLGEN} -gen-clang-attr-subject-match-rule-list \ 1020 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1021 ${CLANG_SRCS}/include/clang/Basic/Attr.td 1022TGHDRS+= clang/Basic/AttrSubMatchRulesList.inc 1023 1024clang/Basic/Builtins.inc: ${CLANG_SRCS}/include/clang/Basic/Builtins.td 1025 ${CLANG_TBLGEN} -gen-clang-builtins \ 1026 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1027 ${CLANG_SRCS}/include/clang/Basic/Builtins.td 1028TGHDRS+= clang/Basic/Builtins.inc 1029 1030clang/Basic/BuiltinsBPF.inc: ${CLANG_SRCS}/include/clang/Basic/Builtins.td 1031 ${CLANG_TBLGEN} -gen-clang-builtins \ 1032 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1033 ${CLANG_SRCS}/include/clang/Basic/BuiltinsBPF.td 1034TGHDRS+= clang/Basic/BuiltinsBPF.inc 1035 1036clang/Basic/BuiltinsRISCV.inc: ${CLANG_SRCS}/include/clang/Basic/Builtins.td 1037 ${CLANG_TBLGEN} -gen-clang-builtins \ 1038 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1039 ${CLANG_SRCS}/include/clang/Basic/BuiltinsRISCV.td 1040TGHDRS+= clang/Basic/BuiltinsRISCV.inc 1041 1042clang/Basic/RegularKeywordAttrInfo.inc: ${CLANG_SRCS}/include/clang/Basic/Attr.td 1043 ${CLANG_TBLGEN} -gen-clang-regular-keyword-attr-info \ 1044 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1045 ${CLANG_SRCS}/include/clang/Basic/Attr.td 1046TGHDRS+= clang/Basic/RegularKeywordAttrInfo.inc 1047 1048.for hdr in \ 1049 AST Analysis Comment Common CrossTU Driver Frontend InstallAPI Lex \ 1050 Parse Refactoring Sema Serialization 1051clang/Basic/Diagnostic${hdr}Kinds.inc: \ 1052 ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td 1053 ${CLANG_TBLGEN} -gen-clang-diags-defs -clang-component=${hdr} \ 1054 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1055 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td 1056TGHDRS+= clang/Basic/Diagnostic${hdr}Kinds.inc 1057.endfor 1058 1059clang/Basic/DiagnosticGroups.inc: \ 1060 ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td 1061 ${CLANG_TBLGEN} -gen-clang-diag-groups \ 1062 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1063 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td 1064TGHDRS+= clang/Basic/DiagnosticGroups.inc 1065 1066clang/Basic/DiagnosticIndexName.inc: \ 1067 ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td 1068 ${CLANG_TBLGEN} -gen-clang-diags-index-name \ 1069 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1070 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td 1071TGHDRS+= clang/Basic/DiagnosticIndexName.inc 1072 1073clang/Basic/arm_cde_builtin_aliases.inc: \ 1074 ${CLANG_SRCS}/include/clang/Basic/arm_cde.td 1075 ${CLANG_TBLGEN} -gen-arm-cde-builtin-aliases \ 1076 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1077 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_cde.td 1078TGHDRS+= clang/Basic/arm_cde_builtin_aliases.inc 1079 1080clang/Basic/arm_cde_builtin_cg.inc: ${CLANG_SRCS}/include/clang/Basic/arm_cde.td 1081 ${CLANG_TBLGEN} -gen-arm-cde-builtin-codegen \ 1082 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1083 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_cde.td 1084TGHDRS+= clang/Basic/arm_cde_builtin_cg.inc 1085 1086clang/Basic/arm_cde_builtin_sema.inc: \ 1087 ${CLANG_SRCS}/include/clang/Basic/arm_cde.td 1088 ${CLANG_TBLGEN} -gen-arm-cde-builtin-sema \ 1089 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1090 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_cde.td 1091TGHDRS+= clang/Basic/arm_cde_builtin_sema.inc 1092 1093clang/Basic/arm_cde_builtins.inc: ${CLANG_SRCS}/include/clang/Basic/arm_cde.td 1094 ${CLANG_TBLGEN} -gen-arm-cde-builtin-def \ 1095 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1096 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_cde.td 1097TGHDRS+= clang/Basic/arm_cde_builtins.inc 1098 1099clang/Basic/arm_fp16.inc: ${CLANG_SRCS}/include/clang/Basic/arm_fp16.td 1100 ${CLANG_TBLGEN} -gen-arm-neon-sema \ 1101 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1102 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_fp16.td 1103TGHDRS+= clang/Basic/arm_fp16.inc 1104 1105clang/Basic/arm_mve_builtin_aliases.inc: \ 1106 ${CLANG_SRCS}/include/clang/Basic/arm_mve.td 1107 ${CLANG_TBLGEN} -gen-arm-mve-builtin-aliases \ 1108 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1109 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_mve.td 1110TGHDRS+= clang/Basic/arm_mve_builtin_aliases.inc 1111 1112clang/Basic/arm_mve_builtin_cg.inc: ${CLANG_SRCS}/include/clang/Basic/arm_mve.td 1113 ${CLANG_TBLGEN} -gen-arm-mve-builtin-codegen \ 1114 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1115 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_mve.td 1116TGHDRS+= clang/Basic/arm_mve_builtin_cg.inc 1117 1118clang/Basic/arm_mve_builtin_sema.inc: \ 1119 ${CLANG_SRCS}/include/clang/Basic/arm_mve.td 1120 ${CLANG_TBLGEN} -gen-arm-mve-builtin-sema \ 1121 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1122 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_mve.td 1123TGHDRS+= clang/Basic/arm_mve_builtin_sema.inc 1124 1125clang/Basic/arm_mve_builtins.inc: ${CLANG_SRCS}/include/clang/Basic/arm_mve.td 1126 ${CLANG_TBLGEN} -gen-arm-mve-builtin-def \ 1127 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1128 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_mve.td 1129TGHDRS+= clang/Basic/arm_mve_builtins.inc 1130 1131clang/Basic/arm_neon.inc: ${CLANG_SRCS}/include/clang/Basic/arm_neon.td 1132 ${CLANG_TBLGEN} -gen-arm-neon-sema \ 1133 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1134 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_neon.td 1135TGHDRS+= clang/Basic/arm_neon.inc 1136 1137clang/Basic/arm_sme_builtin_cg.inc: \ 1138 ${CLANG_SRCS}/include/clang/Basic/arm_sme.td 1139 ${CLANG_TBLGEN} -gen-arm-sme-builtin-codegen \ 1140 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1141 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_sme.td 1142TGHDRS+= clang/Basic/arm_sme_builtin_cg.inc 1143 1144clang/Basic/arm_sme_builtins.inc: \ 1145 ${CLANG_SRCS}/include/clang/Basic/arm_sme.td 1146 ${CLANG_TBLGEN} -gen-arm-sme-builtins \ 1147 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1148 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_sme.td 1149TGHDRS+= clang/Basic/arm_sme_builtins.inc 1150 1151clang/Basic/arm_sme_builtins_za_state.inc: \ 1152 ${CLANG_SRCS}/include/clang/Basic/arm_sme.td 1153 ${CLANG_TBLGEN} -gen-arm-sme-builtin-za-state \ 1154 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1155 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_sme.td 1156TGHDRS+= clang/Basic/arm_sme_builtins_za_state.inc 1157 1158clang/Basic/arm_sme_sema_rangechecks.inc: \ 1159 ${CLANG_SRCS}/include/clang/Basic/arm_sme.td 1160 ${CLANG_TBLGEN} -gen-arm-sme-sema-rangechecks \ 1161 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1162 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_sme.td 1163TGHDRS+= clang/Basic/arm_sme_sema_rangechecks.inc 1164 1165clang/Basic/arm_sme_streaming_attrs.inc: \ 1166 ${CLANG_SRCS}/include/clang/Basic/arm_sme.td 1167 ${CLANG_TBLGEN} -gen-arm-sme-streaming-attrs \ 1168 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1169 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_sme.td 1170TGHDRS+= clang/Basic/arm_sme_streaming_attrs.inc 1171 1172clang/Basic/arm_sve_builtin_cg.inc: ${CLANG_SRCS}/include/clang/Basic/arm_sve.td 1173 ${CLANG_TBLGEN} -gen-arm-sve-builtin-codegen \ 1174 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1175 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_sve.td 1176TGHDRS+= clang/Basic/arm_sve_builtin_cg.inc 1177 1178clang/Basic/arm_sve_builtins.inc: ${CLANG_SRCS}/include/clang/Basic/arm_sve.td 1179 ${CLANG_TBLGEN} -gen-arm-sve-builtins \ 1180 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1181 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_sve.td 1182TGHDRS+= clang/Basic/arm_sve_builtins.inc 1183 1184clang/Basic/arm_sve_sema_rangechecks.inc: \ 1185 ${CLANG_SRCS}/include/clang/Basic/arm_sve.td 1186 ${CLANG_TBLGEN} -gen-arm-sve-sema-rangechecks \ 1187 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1188 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_sve.td 1189TGHDRS+= clang/Basic/arm_sve_sema_rangechecks.inc 1190 1191clang/Basic/arm_sve_streaming_attrs.inc: \ 1192 ${CLANG_SRCS}/include/clang/Basic/arm_sve.td 1193 ${CLANG_TBLGEN} -gen-arm-sve-streaming-attrs \ 1194 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1195 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_sve.td 1196TGHDRS+= clang/Basic/arm_sve_streaming_attrs.inc 1197 1198clang/Basic/arm_sve_typeflags.inc: \ 1199 ${CLANG_SRCS}/include/clang/Basic/arm_sve.td 1200 ${CLANG_TBLGEN} -gen-arm-sve-typeflags \ 1201 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1202 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/arm_sve.td 1203TGHDRS+= clang/Basic/arm_sve_typeflags.inc 1204 1205clang/Basic/riscv_sifive_vector_builtin_cg.inc: \ 1206 ${CLANG_SRCS}/include/clang/Basic/riscv_sifive_vector.td 1207 ${CLANG_TBLGEN} -gen-riscv-sifive-vector-builtin-codegen \ 1208 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1209 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/riscv_sifive_vector.td 1210TGHDRS+= clang/Basic/riscv_sifive_vector_builtin_cg.inc 1211 1212clang/Basic/riscv_sifive_vector_builtin_sema.inc: \ 1213 ${CLANG_SRCS}/include/clang/Basic/riscv_sifive_vector.td 1214 ${CLANG_TBLGEN} -gen-riscv-sifive-vector-builtin-sema \ 1215 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1216 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/riscv_sifive_vector.td 1217TGHDRS+= clang/Basic/riscv_sifive_vector_builtin_sema.inc 1218 1219clang/Basic/riscv_sifive_vector_builtins.inc: \ 1220 ${CLANG_SRCS}/include/clang/Basic/riscv_sifive_vector.td 1221 ${CLANG_TBLGEN} -gen-riscv-sifive-vector-builtins \ 1222 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1223 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/riscv_sifive_vector.td 1224TGHDRS+= clang/Basic/riscv_sifive_vector_builtins.inc 1225 1226clang/Basic/riscv_vector_builtin_cg.inc: \ 1227 ${CLANG_SRCS}/include/clang/Basic/riscv_vector.td 1228 ${CLANG_TBLGEN} -gen-riscv-vector-builtin-codegen \ 1229 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1230 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/riscv_vector.td 1231TGHDRS+= clang/Basic/riscv_vector_builtin_cg.inc 1232 1233clang/Basic/riscv_vector_builtin_sema.inc: \ 1234 ${CLANG_SRCS}/include/clang/Basic/riscv_vector.td 1235 ${CLANG_TBLGEN} -gen-riscv-vector-builtin-sema \ 1236 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1237 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/riscv_vector.td 1238TGHDRS+= clang/Basic/riscv_vector_builtin_sema.inc 1239 1240clang/Basic/riscv_vector_builtins.inc: \ 1241 ${CLANG_SRCS}/include/clang/Basic/riscv_vector.td 1242 ${CLANG_TBLGEN} -gen-riscv-vector-builtins \ 1243 -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/$/.d/} \ 1244 -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/riscv_vector.td 1245TGHDRS+= clang/Basic/riscv_vector_builtins.inc 1246 1247clang/Driver/Options.inc: ${CLANG_SRCS}/include/clang/Driver/Options.td 1248 ${LLVM_TBLGEN} -gen-opt-parser-defs \ 1249 -I ${LLVM_SRCS}/include -I ${CLANG_SRCS}/include/clang/Driver \ 1250 -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1251 ${CLANG_SRCS}/include/clang/Driver/Options.td 1252TGHDRS+= clang/Driver/Options.inc 1253 1254clang/Parse/AttrParserStringSwitches.inc: \ 1255 ${CLANG_SRCS}/include/clang/Basic/Attr.td 1256 ${CLANG_TBLGEN} -gen-clang-attr-parser-string-switches \ 1257 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1258 ${CLANG_SRCS}/include/clang/Basic/Attr.td 1259TGHDRS+= clang/Parse/AttrParserStringSwitches.inc 1260 1261clang/Parse/AttrSubMatchRulesParserStringSwitches.inc: \ 1262 ${CLANG_SRCS}/include/clang/Basic/Attr.td 1263 ${CLANG_TBLGEN} -gen-clang-attr-subject-match-rules-parser-string-switches \ 1264 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1265 ${CLANG_SRCS}/include/clang/Basic/Attr.td 1266TGHDRS+= clang/Parse/AttrSubMatchRulesParserStringSwitches.inc 1267 1268clang/Sema/AttrParsedAttrImpl.inc: ${CLANG_SRCS}/include/clang/Basic/Attr.td 1269 ${CLANG_TBLGEN} -gen-clang-attr-parsed-attr-impl \ 1270 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1271 ${CLANG_SRCS}/include/clang/Basic/Attr.td 1272TGHDRS+= clang/Sema/AttrParsedAttrImpl.inc 1273 1274clang/Sema/AttrParsedAttrKinds.inc: ${CLANG_SRCS}/include/clang/Basic/Attr.td 1275 ${CLANG_TBLGEN} -gen-clang-attr-parsed-attr-kinds \ 1276 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1277 ${CLANG_SRCS}/include/clang/Basic/Attr.td 1278TGHDRS+= clang/Sema/AttrParsedAttrKinds.inc 1279 1280clang/Sema/AttrParsedAttrList.inc: ${CLANG_SRCS}/include/clang/Basic/Attr.td 1281 ${CLANG_TBLGEN} -gen-clang-attr-parsed-attr-list \ 1282 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1283 ${CLANG_SRCS}/include/clang/Basic/Attr.td 1284TGHDRS+= clang/Sema/AttrParsedAttrList.inc 1285 1286clang/Sema/AttrSpellingListIndex.inc: ${CLANG_SRCS}/include/clang/Basic/Attr.td 1287 ${CLANG_TBLGEN} -gen-clang-attr-spelling-index \ 1288 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1289 ${CLANG_SRCS}/include/clang/Basic/Attr.td 1290TGHDRS+= clang/Sema/AttrSpellingListIndex.inc 1291 1292clang/Sema/AttrTemplateInstantiate.inc: \ 1293 ${CLANG_SRCS}/include/clang/Basic/Attr.td 1294 ${CLANG_TBLGEN} -gen-clang-attr-template-instantiate \ 1295 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1296 ${CLANG_SRCS}/include/clang/Basic/Attr.td 1297TGHDRS+= clang/Sema/AttrTemplateInstantiate.inc 1298 1299clang/Serialization/AttrPCHRead.inc: ${CLANG_SRCS}/include/clang/Basic/Attr.td 1300 ${CLANG_TBLGEN} -gen-clang-attr-pch-read \ 1301 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1302 ${CLANG_SRCS}/include/clang/Basic/Attr.td 1303TGHDRS+= clang/Serialization/AttrPCHRead.inc 1304 1305clang/Serialization/AttrPCHWrite.inc: ${CLANG_SRCS}/include/clang/Basic/Attr.td 1306 ${CLANG_TBLGEN} -gen-clang-attr-pch-write \ 1307 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1308 ${CLANG_SRCS}/include/clang/Basic/Attr.td 1309TGHDRS+= clang/Serialization/AttrPCHWrite.inc 1310 1311clang/StaticAnalyzer/Checkers/Checkers.inc: \ 1312 ${CLANG_SRCS}/include/clang/StaticAnalyzer/Checkers/Checkers.td 1313 ${CLANG_TBLGEN} -gen-clang-sa-checkers \ 1314 -I ${CLANG_SRCS}/include/clang/StaticAnalyzer/Checkers \ 1315 -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1316 ${CLANG_SRCS}/include/clang/StaticAnalyzer/Checkers/Checkers.td 1317TGHDRS+= clang/StaticAnalyzer/Checkers/Checkers.inc 1318 1319Opcodes.inc: ${CLANG_SRCS}/lib/AST/Interp/Opcodes.td 1320 ${CLANG_TBLGEN} -gen-clang-opcodes \ 1321 -I ${CLANG_SRCS}/include -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1322 ${CLANG_SRCS}/lib/AST/Interp/Opcodes.td 1323TGHDRS+= Opcodes.inc 1324 1325OpenCLBuiltins.inc: ${CLANG_SRCS}/lib/Sema/OpenCLBuiltins.td 1326 ${CLANG_TBLGEN} -gen-clang-opencl-builtins \ 1327 -d ${.TARGET:C/$/.d/} -o ${.TARGET} \ 1328 ${CLANG_SRCS}/lib/Sema/OpenCLBuiltins.td 1329TGHDRS+= OpenCLBuiltins.inc 1330 1331DEPENDFILES+= ${TGHDRS:C/$/.d/} 1332DPSRCS+= ${TGHDRS} 1333CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} 1334 1335.include "../clang.build.mk" 1336 1337.include <bsd.lib.mk> 1338