clang.build.mk revision 294056
1208963Srdivacky# $FreeBSD: stable/10/lib/clang/clang.build.mk 294056 2016-01-15 00:05:58Z marius $ 2208963Srdivacky 3239614SdimCLANG_SRCS= ${LLVM_SRCS}/tools/clang 4208963Srdivacky 5239614SdimCFLAGS+= -I${LLVM_SRCS}/include -I${CLANG_SRCS}/include \ 6239614Sdim -I${LLVM_SRCS}/${SRCDIR} ${INCDIR:C/^/-I${LLVM_SRCS}\//} -I. \ 7239614Sdim -I${LLVM_SRCS}/../../lib/clang/include \ 8239614Sdim -DLLVM_ON_UNIX -DLLVM_ON_FREEBSD \ 9256297Sdim -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -DNDEBUG 10208963Srdivacky 11246259Sdim.if !defined(EARLY_BUILD) && defined(MK_CLANG_FULL) && ${MK_CLANG_FULL} != "no" 12246259SdimCFLAGS+= -DCLANG_ENABLE_ARCMT \ 13246259Sdim -DCLANG_ENABLE_REWRITER \ 14246259Sdim -DCLANG_ENABLE_STATIC_ANALYZER 15246259Sdim.endif # !EARLY_BUILD && MK_CLANG_FULL 16246259Sdim 17229169Snwhitehorn# LLVM is not strict aliasing safe as of 12/31/2011 18239614SdimCFLAGS+= -fno-strict-aliasing 19209153Sed 20208963SrdivackyTARGET_ARCH?= ${MACHINE_ARCH} 21239462SdimBUILD_ARCH?= ${MACHINE_ARCH} 22246705Sandrew 23246705Sandrew.if (${TARGET_ARCH} == "arm" || ${TARGET_ARCH} == "armv6") && \ 24246705Sandrew ${MK_ARM_EABI} != "no" 25246705SandrewTARGET_ABI= gnueabi 26246705Sandrew.else 27246705SandrewTARGET_ABI= unknown 28246705Sandrew.endif 29246705Sandrew 30294056SmariusTARGET_TRIPLE?= ${TARGET_ARCH:C/amd64/x86_64/}-${TARGET_ABI}-freebsd10.3 31294056SmariusBUILD_TRIPLE?= ${BUILD_ARCH:C/amd64/x86_64/}-unknown-freebsd10.3 32239462SdimCFLAGS+= -DLLVM_DEFAULT_TARGET_TRIPLE=\"${TARGET_TRIPLE}\" \ 33251662Sdim -DLLVM_HOST_TRIPLE=\"${BUILD_TRIPLE}\" \ 34243830Sdim -DDEFAULT_SYSROOT=\"${TOOLS_PREFIX}\" 35243830SdimCXXFLAGS+= -fno-exceptions -fno-rtti 36208963Srdivacky 37208963Srdivacky.PATH: ${LLVM_SRCS}/${SRCDIR} 38208963Srdivacky 39239614SdimTBLGEN?= tblgen 40239614SdimCLANG_TBLGEN?= clang-tblgen 41208963Srdivacky 42266309SdimIntrinsics.inc.h: ${LLVM_SRCS}/include/llvm/IR/Intrinsics.td 43266309Sdim ${TBLGEN} -gen-intrinsic \ 44266309Sdim -I ${LLVM_SRCS}/include -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 45249423Sdim ${LLVM_SRCS}/include/llvm/IR/Intrinsics.td 46208963Srdivacky.for arch in \ 47263763Sdim ARM/ARM Mips/Mips PowerPC/PPC Sparc/Sparc X86/X86 48208963Srdivacky. for hdr in \ 49208963Srdivacky AsmMatcher/-gen-asm-matcher \ 50208963Srdivacky AsmWriter1/-gen-asm-writer,-asmwriternum=1 \ 51208963Srdivacky AsmWriter/-gen-asm-writer \ 52208963Srdivacky CallingConv/-gen-callingconv \ 53208963Srdivacky CodeEmitter/-gen-emitter \ 54208963Srdivacky DAGISel/-gen-dag-isel \ 55212904Sdim DisassemblerTables/-gen-disassembler \ 56208963Srdivacky FastISel/-gen-fast-isel \ 57224145Sdim InstrInfo/-gen-instr-info \ 58218893Sdim MCCodeEmitter/-gen-emitter,-mc-emitter \ 59224145Sdim MCPseudoLowering/-gen-pseudo-lowering \ 60224145Sdim RegisterInfo/-gen-register-info \ 61224145Sdim SubtargetInfo/-gen-subtarget 62208963Srdivacky${arch:T}Gen${hdr:H:C/$/.inc.h/}: ${LLVM_SRCS}/lib/Target/${arch:H}/${arch:T}.td 63266309Sdim ${TBLGEN} ${hdr:T:C/,/ /g} \ 64266309Sdim -I ${LLVM_SRCS}/include -I ${LLVM_SRCS}/lib/Target/${arch:H} \ 65266309Sdim -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 66224145Sdim ${LLVM_SRCS}/lib/Target/${arch:H}/${arch:T}.td 67208963Srdivacky. endfor 68208963Srdivacky.endfor 69208963Srdivacky 70210299SedAttrs.inc.h: ${CLANG_SRCS}/include/clang/Basic/Attr.td 71266309Sdim ${CLANG_TBLGEN} -gen-clang-attr-classes \ 72266309Sdim -I ${CLANG_SRCS}/include -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 73267470Sdim ${CLANG_SRCS}/include/clang/Basic/Attr.td 74210299Sed 75249423SdimAttrDump.inc.h: ${CLANG_SRCS}/include/clang/Basic/Attr.td 76266309Sdim ${CLANG_TBLGEN} -gen-clang-attr-dump \ 77266309Sdim -I ${CLANG_SRCS}/include -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 78267470Sdim ${CLANG_SRCS}/include/clang/Basic/Attr.td 79249423Sdim 80263508SdimAttrIdentifierArg.inc.h: ${CLANG_SRCS}/include/clang/Basic/Attr.td 81266309Sdim ${CLANG_TBLGEN} -gen-clang-attr-identifier-arg-list \ 82266309Sdim -I ${CLANG_SRCS}/include -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 83267470Sdim ${CLANG_SRCS}/include/clang/Basic/Attr.td 84251662Sdim 85212904SdimAttrImpl.inc.h: ${CLANG_SRCS}/include/clang/Basic/Attr.td 86266309Sdim ${CLANG_TBLGEN} -gen-clang-attr-impl \ 87266309Sdim -I ${CLANG_SRCS}/include -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 88267470Sdim ${CLANG_SRCS}/include/clang/Basic/Attr.td 89263508Sdim 90226633SdimAttrLateParsed.inc.h: ${CLANG_SRCS}/include/clang/Basic/Attr.td 91266309Sdim ${CLANG_TBLGEN} -gen-clang-attr-late-parsed-list \ 92266309Sdim -I ${CLANG_SRCS}/include -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 93267470Sdim ${CLANG_SRCS}/include/clang/Basic/Attr.td 94226633Sdim 95210299SedAttrList.inc.h: ${CLANG_SRCS}/include/clang/Basic/Attr.td 96266309Sdim ${CLANG_TBLGEN} -gen-clang-attr-list \ 97266309Sdim -I ${CLANG_SRCS}/include -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 98267470Sdim ${CLANG_SRCS}/include/clang/Basic/Attr.td 99210299Sed 100263508SdimAttrParsedAttrImpl.inc.h: ${CLANG_SRCS}/include/clang/Basic/Attr.td 101266309Sdim ${CLANG_TBLGEN} -gen-clang-attr-parsed-attr-impl \ 102266309Sdim -I ${CLANG_SRCS}/include -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 103267470Sdim ${CLANG_SRCS}/include/clang/Basic/Attr.td 104263508Sdim 105234353SdimAttrParsedAttrKinds.inc.h: ${CLANG_SRCS}/include/clang/Basic/Attr.td 106266309Sdim ${CLANG_TBLGEN} -gen-clang-attr-parsed-attr-kinds \ 107266309Sdim -I ${CLANG_SRCS}/include -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 108267470Sdim ${CLANG_SRCS}/include/clang/Basic/Attr.td 109234353Sdim 110234353SdimAttrParsedAttrList.inc.h: ${CLANG_SRCS}/include/clang/Basic/Attr.td 111266309Sdim ${CLANG_TBLGEN} -gen-clang-attr-parsed-attr-list \ 112266309Sdim -I ${CLANG_SRCS}/include -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 113267470Sdim ${CLANG_SRCS}/include/clang/Basic/Attr.td 114234353Sdim 115212904SdimAttrPCHRead.inc.h: ${CLANG_SRCS}/include/clang/Basic/Attr.td 116266309Sdim ${CLANG_TBLGEN} -gen-clang-attr-pch-read \ 117266309Sdim -I ${CLANG_SRCS}/include -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 118267470Sdim ${CLANG_SRCS}/include/clang/Basic/Attr.td 119212904Sdim 120212904SdimAttrPCHWrite.inc.h: ${CLANG_SRCS}/include/clang/Basic/Attr.td 121266309Sdim ${CLANG_TBLGEN} -gen-clang-attr-pch-write \ 122266309Sdim -I ${CLANG_SRCS}/include -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 123267470Sdim ${CLANG_SRCS}/include/clang/Basic/Attr.td 124212904Sdim 125218893SdimAttrSpellings.inc.h: ${CLANG_SRCS}/include/clang/Basic/Attr.td 126266309Sdim ${CLANG_TBLGEN} -gen-clang-attr-spelling-list \ 127266309Sdim -I ${CLANG_SRCS}/include -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 128267470Sdim ${CLANG_SRCS}/include/clang/Basic/Attr.td 129218893Sdim 130249423SdimAttrSpellingListIndex.inc.h: ${CLANG_SRCS}/include/clang/Basic/Attr.td 131266309Sdim ${CLANG_TBLGEN} -gen-clang-attr-spelling-index \ 132266309Sdim -I ${CLANG_SRCS}/include -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 133267470Sdim ${CLANG_SRCS}/include/clang/Basic/Attr.td 134249423Sdim 135234353SdimAttrTemplateInstantiate.inc.h: ${CLANG_SRCS}/include/clang/Basic/Attr.td 136266309Sdim ${CLANG_TBLGEN} -gen-clang-attr-template-instantiate \ 137266309Sdim -I ${CLANG_SRCS}/include -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 138267470Sdim ${CLANG_SRCS}/include/clang/Basic/Attr.td 139234353Sdim 140263508SdimAttrTypeArg.inc.h: ${CLANG_SRCS}/include/clang/Basic/Attr.td 141266309Sdim ${CLANG_TBLGEN} -gen-clang-attr-type-arg-list \ 142266309Sdim -I ${CLANG_SRCS}/include -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 143267470Sdim ${CLANG_SRCS}/include/clang/Basic/Attr.td 144263508Sdim 145243830SdimCommentCommandInfo.inc.h: ${CLANG_SRCS}/include/clang/AST/CommentCommands.td 146266309Sdim ${CLANG_TBLGEN} -gen-clang-comment-command-info \ 147267470Sdim -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 148267470Sdim ${CLANG_SRCS}/include/clang/AST/CommentCommands.td 149243830Sdim 150249423SdimCommentCommandList.inc.h: ${CLANG_SRCS}/include/clang/AST/CommentCommands.td 151266309Sdim ${CLANG_TBLGEN} -gen-clang-comment-command-list \ 152267470Sdim -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 153267470Sdim ${CLANG_SRCS}/include/clang/AST/CommentCommands.td 154249423Sdim 155249423SdimCommentHTMLNamedCharacterReferences.inc.h: \ 156249423Sdim ${CLANG_SRCS}/include/clang/AST/CommentHTMLNamedCharacterReferences.td 157266309Sdim ${CLANG_TBLGEN} -gen-clang-comment-html-named-character-references \ 158267470Sdim -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 159267470Sdim ${CLANG_SRCS}/include/clang/AST/CommentHTMLNamedCharacterReferences.td 160249423Sdim 161243830SdimCommentHTMLTags.inc.h: ${CLANG_SRCS}/include/clang/AST/CommentHTMLTags.td 162266309Sdim ${CLANG_TBLGEN} -gen-clang-comment-html-tags \ 163267470Sdim -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 164267470Sdim ${CLANG_SRCS}/include/clang/AST/CommentHTMLTags.td 165243830Sdim 166249423SdimCommentHTMLTagsProperties.inc.h: \ 167249423Sdim ${CLANG_SRCS}/include/clang/AST/CommentHTMLTags.td 168266309Sdim ${CLANG_TBLGEN} -gen-clang-comment-html-tags-properties \ 169267470Sdim -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 170267470Sdim ${CLANG_SRCS}/include/clang/AST/CommentHTMLTags.td 171243830Sdim 172239462SdimCommentNodes.inc.h: ${CLANG_SRCS}/include/clang/Basic/CommentNodes.td 173266309Sdim ${CLANG_TBLGEN} -gen-clang-comment-nodes \ 174267470Sdim -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 175267470Sdim ${CLANG_SRCS}/include/clang/Basic/CommentNodes.td 176239462Sdim 177210299SedDeclNodes.inc.h: ${CLANG_SRCS}/include/clang/Basic/DeclNodes.td 178266309Sdim ${CLANG_TBLGEN} -gen-clang-decl-nodes \ 179267470Sdim -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 180267470Sdim ${CLANG_SRCS}/include/clang/Basic/DeclNodes.td 181210299Sed 182210299SedStmtNodes.inc.h: ${CLANG_SRCS}/include/clang/Basic/StmtNodes.td 183266309Sdim ${CLANG_TBLGEN} -gen-clang-stmt-nodes \ 184267470Sdim -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 185267470Sdim ${CLANG_SRCS}/include/clang/Basic/StmtNodes.td 186210299Sed 187263508Sdimarm_neon.h: ${CLANG_SRCS}/include/clang/Basic/arm_neon.td 188266309Sdim ${CLANG_TBLGEN} -gen-arm-neon \ 189267470Sdim -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 190267470Sdim ${CLANG_SRCS}/include/clang/Basic/arm_neon.td 191263508Sdim 192210299Sedarm_neon.inc.h: ${CLANG_SRCS}/include/clang/Basic/arm_neon.td 193266309Sdim ${CLANG_TBLGEN} -gen-arm-neon-sema \ 194267470Sdim -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 195267470Sdim ${CLANG_SRCS}/include/clang/Basic/arm_neon.td 196210299Sed 197208963SrdivackyDiagnosticGroups.inc.h: ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td 198266309Sdim ${CLANG_TBLGEN} -gen-clang-diag-groups \ 199266309Sdim -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/\.h$/.d/} \ 200267470Sdim -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td 201221345Sdim 202221345SdimDiagnosticIndexName.inc.h: ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td 203266309Sdim ${CLANG_TBLGEN} -gen-clang-diags-index-name \ 204266309Sdim -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/\.h$/.d/} \ 205267470Sdim -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td 206221345Sdim 207239462Sdim.for hdr in AST Analysis Comment Common Driver Frontend Lex Parse Sema Serialization 208208963SrdivackyDiagnostic${hdr}Kinds.inc.h: ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td 209266309Sdim ${CLANG_TBLGEN} -gen-clang-diags-defs -clang-component=${hdr} \ 210266309Sdim -I ${CLANG_SRCS}/include/clang/Basic -d ${.TARGET:C/\.h$/.d/} \ 211267470Sdim -o ${.TARGET} ${CLANG_SRCS}/include/clang/Basic/Diagnostic.td 212208963Srdivacky.endfor 213221345Sdim 214210299SedOptions.inc.h: ${CLANG_SRCS}/include/clang/Driver/Options.td 215266309Sdim ${TBLGEN} -gen-opt-parser-defs \ 216266309Sdim -I ${LLVM_SRCS}/include -I ${CLANG_SRCS}/include/clang/Driver \ 217267470Sdim -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 218267470Sdim ${CLANG_SRCS}/include/clang/Driver/Options.td 219210299Sed 220210299SedCC1AsOptions.inc.h: ${CLANG_SRCS}/include/clang/Driver/CC1AsOptions.td 221266309Sdim ${TBLGEN} -gen-opt-parser-defs \ 222266309Sdim -I ${LLVM_SRCS}/include -I ${CLANG_SRCS}/include/clang/Driver \ 223267470Sdim -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 224267470Sdim ${CLANG_SRCS}/include/clang/Driver/CC1AsOptions.td 225208963Srdivacky 226267470SdimCheckers.inc.h: ${CLANG_SRCS}/lib/StaticAnalyzer/Checkers/Checkers.td 227266309Sdim ${CLANG_TBLGEN} -gen-clang-sa-checkers \ 228266309Sdim -I ${CLANG_SRCS}/include -d ${.TARGET:C/\.h$/.d/} -o ${.TARGET} \ 229224145Sdim ${CLANG_SRCS}/lib/StaticAnalyzer/Checkers/Checkers.td 230218893Sdim 231266309Sdim.for dep in ${TGHDRS:C/$/.inc.d/} 232266309Sdim. sinclude "${dep}" 233266309Sdim.endfor 234266309Sdim 235208963SrdivackySRCS+= ${TGHDRS:C/$/.inc.h/} 236266309SdimCLEANFILES+= ${TGHDRS:C/$/.inc.h/} ${TGHDRS:C/$/.inc.d/} 237