Index: projects/clang390-import/lib/clang/libllvm/Makefile =================================================================== --- projects/clang390-import/lib/clang/libllvm/Makefile +++ projects/clang390-import/lib/clang/libllvm/Makefile @@ -468,12 +468,12 @@ SRCS_MIN+= IR/ValueTypes.cpp SRCS_MIN+= IR/Verifier.cpp SRCS_MIN+= IRReader/IRReader.cpp -SRCS_EXT+= LTO/LTO.cpp -SRCS_EXT+= LTO/LTOCodeGenerator.cpp -SRCS_EXT+= LTO/LTOModule.cpp -SRCS_EXT+= LTO/ThinLTOCodeGenerator.cpp -SRCS_EXT+= LTO/UpdateCompilerUsed.cpp -SRCS_EXT+= LibDriver/LibDriver.cpp +SRCS_EXL+= LTO/LTO.cpp +SRCS_EXL+= LTO/LTOCodeGenerator.cpp +SRCS_EXL+= LTO/LTOModule.cpp +SRCS_EXL+= LTO/ThinLTOCodeGenerator.cpp +SRCS_EXL+= LTO/UpdateCompilerUsed.cpp +SRCS_EXL+= LibDriver/LibDriver.cpp SRCS_MIN+= LineEditor/LineEditor.cpp SRCS_MIN+= Linker/IRMover.cpp SRCS_MIN+= Linker/LinkModules.cpp @@ -489,11 +489,11 @@ SRCS_MIN+= MC/MCCodeEmitter.cpp SRCS_MIN+= MC/MCCodeView.cpp SRCS_MIN+= MC/MCContext.cpp -SRCS_XDB+= MC/MCDisassembler/Disassembler.cpp -SRCS_XDB+= MC/MCDisassembler/MCDisassembler.cpp -SRCS_XDB+= MC/MCDisassembler/MCExternalSymbolizer.cpp +SRCS_XDL+= MC/MCDisassembler/Disassembler.cpp +SRCS_XDL+= MC/MCDisassembler/MCDisassembler.cpp +SRCS_XDL+= MC/MCDisassembler/MCExternalSymbolizer.cpp SRCS_MIN+= MC/MCDisassembler/MCRelocationInfo.cpp -SRCS_XDB+= MC/MCDisassembler/MCSymbolizer.cpp +SRCS_XDL+= MC/MCDisassembler/MCSymbolizer.cpp SRCS_MIN+= MC/MCDwarf.cpp SRCS_MIN+= MC/MCELFObjectTargetWriter.cpp SRCS_MIN+= MC/MCELFStreamer.cpp @@ -564,7 +564,7 @@ SRCS_MIN+= Option/ArgList.cpp SRCS_MIN+= Option/OptTable.cpp SRCS_MIN+= Option/Option.cpp -SRCS_EXT+= Passes/PassBuilder.cpp +SRCS_EXL+= Passes/PassBuilder.cpp SRCS_MIN+= ProfileData/Coverage/CoverageMapping.cpp SRCS_MIN+= ProfileData/Coverage/CoverageMappingReader.cpp SRCS_MIN+= ProfileData/Coverage/CoverageMappingWriter.cpp @@ -601,7 +601,7 @@ SRCS_MIN+= Support/Errno.cpp SRCS_MIN+= Support/Error.cpp SRCS_MIN+= Support/ErrorHandling.cpp -SRCS_EXT+= Support/FileOutputBuffer.cpp +SRCS_EXL+= Support/FileOutputBuffer.cpp SRCS_EXT+= Support/FileUtilities.cpp SRCS_MIN+= Support/FoldingSet.cpp SRCS_MIN+= Support/FormattedStream.cpp @@ -651,7 +651,7 @@ SRCS_MIN+= Support/TargetParser.cpp SRCS_MIN+= Support/TargetRegistry.cpp SRCS_MIN+= Support/ThreadLocal.cpp -SRCS_EXT+= Support/ThreadPool.cpp +SRCS_EXL+= Support/ThreadPool.cpp SRCS_MIN+= Support/Threading.cpp SRCS_MIN+= Support/TimeValue.cpp SRCS_MIN+= Support/Timer.cpp @@ -709,7 +709,7 @@ SRCS_MIN+= Target/AArch64/AArch64TargetObjectFile.cpp SRCS_MIN+= Target/AArch64/AArch64TargetTransformInfo.cpp SRCS_MIN+= Target/AArch64/AsmParser/AArch64AsmParser.cpp -SRCS_XDB+= Target/AArch64/Disassembler/AArch64Disassembler.cpp +SRCS_XDL+= Target/AArch64/Disassembler/AArch64Disassembler.cpp SRCS_MIN+= Target/AArch64/Disassembler/AArch64ExternalSymbolizer.cpp SRCS_MIN+= Target/AArch64/InstPrinter/AArch64InstPrinter.cpp SRCS_MIN+= Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp @@ -771,7 +771,7 @@ SRCS_MIN+= Target/ARM/Thumb2SizeReduction.cpp SRCS_MIN+= Target/ARM/ThumbRegisterInfo.cpp SRCS_MIN+= Target/Mips/AsmParser/MipsAsmParser.cpp -SRCS_XDB+= Target/Mips/Disassembler/MipsDisassembler.cpp +SRCS_XDL+= Target/Mips/Disassembler/MipsDisassembler.cpp SRCS_MIN+= Target/Mips/InstPrinter/MipsInstPrinter.cpp SRCS_MIN+= Target/Mips/MCTargetDesc/MipsABIFlagsSection.cpp SRCS_MIN+= Target/Mips/MCTargetDesc/MipsABIInfo.cpp @@ -860,7 +860,7 @@ SRCS_MIN+= Target/PowerPC/TargetInfo/PowerPCTargetInfo.cpp SRCS_MIN+= Target/Sparc/AsmParser/SparcAsmParser.cpp SRCS_MIN+= Target/Sparc/DelaySlotFiller.cpp -SRCS_XDB+= Target/Sparc/Disassembler/SparcDisassembler.cpp +SRCS_XDL+= Target/Sparc/Disassembler/SparcDisassembler.cpp SRCS_MIN+= Target/Sparc/InstPrinter/SparcInstPrinter.cpp SRCS_MIN+= Target/Sparc/LeonPasses.cpp SRCS_MIN+= Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp @@ -891,8 +891,8 @@ SRCS_MIN+= Target/TargetSubtargetInfo.cpp SRCS_MIN+= Target/X86/AsmParser/X86AsmInstrumentation.cpp SRCS_MIN+= Target/X86/AsmParser/X86AsmParser.cpp -SRCS_XDB+= Target/X86/Disassembler/X86Disassembler.cpp -SRCS_XDB+= Target/X86/Disassembler/X86DisassemblerDecoder.cpp +SRCS_XDL+= Target/X86/Disassembler/X86Disassembler.cpp +SRCS_XDL+= Target/X86/Disassembler/X86DisassemblerDecoder.cpp SRCS_MIN+= Target/X86/InstPrinter/X86ATTInstPrinter.cpp SRCS_MIN+= Target/X86/InstPrinter/X86InstComments.cpp SRCS_MIN+= Target/X86/InstPrinter/X86IntelInstPrinter.cpp @@ -1018,7 +1018,7 @@ SRCS_MIN+= Transforms/Scalar/LoopDeletion.cpp SRCS_MIN+= Transforms/Scalar/LoopDistribute.cpp SRCS_MIN+= Transforms/Scalar/LoopIdiomRecognize.cpp -SRCS_EXT+= Transforms/Scalar/LoopInstSimplify.cpp +SRCS_EXL+= Transforms/Scalar/LoopInstSimplify.cpp SRCS_MIN+= Transforms/Scalar/LoopInterchange.cpp SRCS_MIN+= Transforms/Scalar/LoopLoadElimination.cpp SRCS_MIN+= Transforms/Scalar/LoopRerollPass.cpp @@ -1108,9 +1108,15 @@ .if ${MK_CLANG_FULL} != "no" SRCS_ALL+= ${SRCS_FUL} .endif +.if ${MK_CLANG_EXTRAS} != "no" || ${MK_LLD} != "no" +SRCS_ALL+= ${SRCS_EXL} +.endif .if ${MK_CLANG_EXTRAS} != "no" || ${MK_LLDB} != "no" SRCS_ALL+= ${SRCS_XDB} .endif +.if ${MK_CLANG_EXTRAS} != "no" || ${MK_LLDB} != "no" || ${MK_LLD} != "no" +SRCS_ALL+= ${SRCS_XDL} +.endif SRCS+= ${SRCS_ALL:O} llvm/IR/Attributes.inc: ${LLVM_SRCS}/include/llvm/IR/Attributes.td Index: projects/clang390-import/share/mk/src.opts.mk =================================================================== --- projects/clang390-import/share/mk/src.opts.mk +++ projects/clang390-import/share/mk/src.opts.mk @@ -184,6 +184,7 @@ EISA \ HESIOD \ LIBSOFT \ + LLD \ NAND \ OFED \ OPENLDAP \ Index: projects/clang390-import/tools/build/options/WITHOUT_LLD =================================================================== --- projects/clang390-import/tools/build/options/WITHOUT_LLD +++ projects/clang390-import/tools/build/options/WITHOUT_LLD @@ -0,0 +1,2 @@ +.\" $FreeBSD$ +Set to not build LLVM's lld linker. Index: projects/clang390-import/tools/build/options/WITH_LLD =================================================================== --- projects/clang390-import/tools/build/options/WITH_LLD +++ projects/clang390-import/tools/build/options/WITH_LLD @@ -0,0 +1,2 @@ +.\" $FreeBSD$ +Set to build LLVM's lld linker. Index: projects/clang390-import/usr.bin/clang/Makefile =================================================================== --- projects/clang390-import/usr.bin/clang/Makefile +++ projects/clang390-import/usr.bin/clang/Makefile @@ -33,6 +33,9 @@ SUBDIR+= opt .endif +.if ${MK_LLD} != "no" +SUBDIR+= lld +.endif .if ${MK_LLDB} != "no" SUBDIR+= lldb .endif # MK_LLDB