diff --git a/lib/clang/liblldb/Makefile b/lib/clang/liblldb/Makefile index 5672464a9213..ef0bc3e1e785 100644 --- a/lib/clang/liblldb/Makefile +++ b/lib/clang/liblldb/Makefile @@ -1,732 +1,735 @@ # $FreeBSD$ .include "../lldb.pre.mk" LIB= lldb SRCDIR= lldb/source CFLAGS+= -I${LLDB_SRCS}/include CFLAGS+= -I${LLDB_SRCS}/source #CFLAGS+= -I${LLDB_SRCS}/source/Plugins/Process/FreeBSD #CFLAGS+= -I${LLDB_SRCS}/source/Plugins/Process/POSIX #CFLAGS+= -I${LLDB_SRCS}/source/Plugins/Process/Utility CFLAGS+= -I${OBJTOP}/lib/clang/libllvm CFLAGS+= -I${OBJTOP}/lib/clang/libclang CFLAGS+= -I${OBJTOP}/lib/clang/liblldb CFLAGS+= -I${SRCTOP}/contrib/lua/src CFLAGS+= -I${SRCTOP}/lib/liblua SRCS+= API/SBAddress.cpp SRCS+= API/SBAttachInfo.cpp SRCS+= API/SBBlock.cpp SRCS+= API/SBBreakpoint.cpp SRCS+= API/SBBreakpointLocation.cpp SRCS+= API/SBBreakpointName.cpp SRCS+= API/SBBreakpointOptionCommon.cpp SRCS+= API/SBBroadcaster.cpp SRCS+= API/SBCommandInterpreter.cpp SRCS+= API/SBCommandInterpreterRunOptions.cpp SRCS+= API/SBCommandReturnObject.cpp SRCS+= API/SBCommunication.cpp SRCS+= API/SBCompileUnit.cpp SRCS+= API/SBData.cpp SRCS+= API/SBDebugger.cpp SRCS+= API/SBDeclaration.cpp SRCS+= API/SBEnvironment.cpp SRCS+= API/SBError.cpp SRCS+= API/SBEvent.cpp SRCS+= API/SBExecutionContext.cpp SRCS+= API/SBExpressionOptions.cpp SRCS+= API/SBFile.cpp SRCS+= API/SBFileSpec.cpp SRCS+= API/SBFileSpecList.cpp SRCS+= API/SBFrame.cpp SRCS+= API/SBFunction.cpp SRCS+= API/SBHostOS.cpp SRCS+= API/SBInstruction.cpp SRCS+= API/SBInstructionList.cpp SRCS+= API/SBLanguageRuntime.cpp SRCS+= API/SBLaunchInfo.cpp SRCS+= API/SBLineEntry.cpp SRCS+= API/SBListener.cpp SRCS+= API/SBMemoryRegionInfo.cpp SRCS+= API/SBMemoryRegionInfoList.cpp SRCS+= API/SBModule.cpp SRCS+= API/SBModuleSpec.cpp SRCS+= API/SBPlatform.cpp SRCS+= API/SBProcess.cpp SRCS+= API/SBProcessInfo.cpp SRCS+= API/SBQueue.cpp SRCS+= API/SBQueueItem.cpp SRCS+= API/SBReproducer.cpp SRCS+= API/SBSection.cpp SRCS+= API/SBSourceManager.cpp SRCS+= API/SBStream.cpp SRCS+= API/SBStringList.cpp SRCS+= API/SBStructuredData.cpp SRCS+= API/SBSymbol.cpp SRCS+= API/SBSymbolContext.cpp SRCS+= API/SBSymbolContextList.cpp SRCS+= API/SBTarget.cpp SRCS+= API/SBThread.cpp SRCS+= API/SBThreadCollection.cpp SRCS+= API/SBThreadPlan.cpp SRCS+= API/SBTrace.cpp SRCS+= API/SBType.cpp SRCS+= API/SBTypeCategory.cpp SRCS+= API/SBTypeEnumMember.cpp SRCS+= API/SBTypeFilter.cpp SRCS+= API/SBTypeFormat.cpp SRCS+= API/SBTypeNameSpecifier.cpp SRCS+= API/SBTypeSummary.cpp SRCS+= API/SBTypeSynthetic.cpp SRCS+= API/SBUnixSignals.cpp SRCS+= API/SBValue.cpp SRCS+= API/SBValueList.cpp SRCS+= API/SBVariablesOptions.cpp SRCS+= API/SBWatchpoint.cpp SRCS+= API/SystemInitializerFull.cpp SRCS+= Breakpoint/Breakpoint.cpp SRCS+= Breakpoint/BreakpointID.cpp SRCS+= Breakpoint/BreakpointIDList.cpp SRCS+= Breakpoint/BreakpointList.cpp SRCS+= Breakpoint/BreakpointLocation.cpp SRCS+= Breakpoint/BreakpointLocationCollection.cpp SRCS+= Breakpoint/BreakpointLocationList.cpp SRCS+= Breakpoint/BreakpointName.cpp SRCS+= Breakpoint/BreakpointOptions.cpp SRCS+= Breakpoint/BreakpointResolver.cpp SRCS+= Breakpoint/BreakpointResolverAddress.cpp SRCS+= Breakpoint/BreakpointResolverFileLine.cpp SRCS+= Breakpoint/BreakpointResolverFileRegex.cpp SRCS+= Breakpoint/BreakpointResolverName.cpp SRCS+= Breakpoint/BreakpointResolverScripted.cpp SRCS+= Breakpoint/BreakpointSite.cpp SRCS+= Breakpoint/BreakpointSiteList.cpp SRCS+= Breakpoint/Stoppoint.cpp SRCS+= Breakpoint/StoppointCallbackContext.cpp SRCS+= Breakpoint/StoppointSite.cpp SRCS+= Breakpoint/Watchpoint.cpp SRCS+= Breakpoint/WatchpointList.cpp SRCS+= Breakpoint/WatchpointOptions.cpp SRCS+= Commands/CommandCompletions.cpp SRCS+= Commands/CommandObjectApropos.cpp SRCS+= Commands/CommandObjectBreakpoint.cpp SRCS+= Commands/CommandObjectBreakpointCommand.cpp SRCS+= Commands/CommandObjectCommands.cpp SRCS+= Commands/CommandObjectDisassemble.cpp SRCS+= Commands/CommandObjectExpression.cpp SRCS+= Commands/CommandObjectFrame.cpp SRCS+= Commands/CommandObjectGUI.cpp SRCS+= Commands/CommandObjectHelp.cpp SRCS+= Commands/CommandObjectLanguage.cpp SRCS+= Commands/CommandObjectLog.cpp SRCS+= Commands/CommandObjectMemory.cpp SRCS+= Commands/CommandObjectMemoryTag.cpp SRCS+= Commands/CommandObjectMultiword.cpp SRCS+= Commands/CommandObjectPlatform.cpp SRCS+= Commands/CommandObjectPlugin.cpp SRCS+= Commands/CommandObjectProcess.cpp SRCS+= Commands/CommandObjectQuit.cpp SRCS+= Commands/CommandObjectRegexCommand.cpp SRCS+= Commands/CommandObjectRegister.cpp SRCS+= Commands/CommandObjectReproducer.cpp SRCS+= Commands/CommandObjectScript.cpp SRCS+= Commands/CommandObjectSession.cpp SRCS+= Commands/CommandObjectSettings.cpp SRCS+= Commands/CommandObjectSource.cpp SRCS+= Commands/CommandObjectStats.cpp SRCS+= Commands/CommandObjectTarget.cpp SRCS+= Commands/CommandObjectThread.cpp SRCS+= Commands/CommandObjectThreadUtil.cpp SRCS+= Commands/CommandObjectTrace.cpp SRCS+= Commands/CommandObjectType.cpp SRCS+= Commands/CommandObjectVersion.cpp SRCS+= Commands/CommandObjectWatchpoint.cpp SRCS+= Commands/CommandObjectWatchpointCommand.cpp SRCS+= Commands/CommandOptionsProcessLaunch.cpp SRCS+= Core/Address.cpp SRCS+= Core/AddressRange.cpp SRCS+= Core/AddressResolver.cpp SRCS+= Core/AddressResolverFileLine.cpp SRCS+= Core/Communication.cpp SRCS+= Core/Debugger.cpp SRCS+= Core/Declaration.cpp SRCS+= Core/Disassembler.cpp SRCS+= Core/DumpDataExtractor.cpp SRCS+= Core/DumpRegisterValue.cpp SRCS+= Core/DynamicLoader.cpp SRCS+= Core/EmulateInstruction.cpp SRCS+= Core/FileLineResolver.cpp SRCS+= Core/FileSpecList.cpp SRCS+= Core/FormatEntity.cpp SRCS+= Core/Highlighter.cpp SRCS+= Core/IOHandler.cpp SRCS+= Core/IOHandlerCursesGUI.cpp SRCS+= Core/Mangled.cpp SRCS+= Core/Module.cpp SRCS+= Core/ModuleChild.cpp SRCS+= Core/ModuleList.cpp SRCS+= Core/Opcode.cpp SRCS+= Core/PluginManager.cpp SRCS+= Core/Progress.cpp SRCS+= Core/RichManglingContext.cpp SRCS+= Core/SearchFilter.cpp SRCS+= Core/Section.cpp SRCS+= Core/SourceLocationSpec.cpp SRCS+= Core/SourceManager.cpp SRCS+= Core/StreamAsynchronousIO.cpp SRCS+= Core/StreamFile.cpp SRCS+= Core/UserSettingsController.cpp SRCS+= Core/Value.cpp SRCS+= Core/ValueObject.cpp SRCS+= Core/ValueObjectCast.cpp SRCS+= Core/ValueObjectChild.cpp SRCS+= Core/ValueObjectConstResult.cpp SRCS+= Core/ValueObjectConstResultCast.cpp SRCS+= Core/ValueObjectConstResultChild.cpp SRCS+= Core/ValueObjectConstResultImpl.cpp SRCS+= Core/ValueObjectDynamicValue.cpp SRCS+= Core/ValueObjectList.cpp SRCS+= Core/ValueObjectMemory.cpp SRCS+= Core/ValueObjectRegister.cpp SRCS+= Core/ValueObjectSyntheticFilter.cpp SRCS+= Core/ValueObjectUpdater.cpp SRCS+= Core/ValueObjectVariable.cpp SRCS+= DataFormatters/CXXFunctionPointer.cpp SRCS+= DataFormatters/DataVisualization.cpp SRCS+= DataFormatters/DumpValueObjectOptions.cpp SRCS+= DataFormatters/FormatCache.cpp SRCS+= DataFormatters/FormatClasses.cpp SRCS+= DataFormatters/FormatManager.cpp SRCS+= DataFormatters/FormattersHelpers.cpp SRCS+= DataFormatters/LanguageCategory.cpp SRCS+= DataFormatters/StringPrinter.cpp SRCS+= DataFormatters/TypeCategory.cpp SRCS+= DataFormatters/TypeCategoryMap.cpp SRCS+= DataFormatters/TypeFormat.cpp SRCS+= DataFormatters/TypeSummary.cpp SRCS+= DataFormatters/TypeSynthetic.cpp SRCS+= DataFormatters/ValueObjectPrinter.cpp SRCS+= DataFormatters/VectorType.cpp SRCS+= Expression/DWARFExpression.cpp SRCS+= Expression/DiagnosticManager.cpp SRCS+= Expression/Expression.cpp SRCS+= Expression/ExpressionVariable.cpp SRCS+= Expression/FunctionCaller.cpp SRCS+= Expression/IRExecutionUnit.cpp SRCS+= Expression/IRInterpreter.cpp SRCS+= Expression/IRMemoryMap.cpp SRCS+= Expression/LLVMUserExpression.cpp SRCS+= Expression/Materializer.cpp SRCS+= Expression/REPL.cpp SRCS+= Expression/UserExpression.cpp SRCS+= Expression/UtilityFunction.cpp SRCS+= Host/common/Editline.cpp SRCS+= Host/common/File.cpp SRCS+= Host/common/FileAction.cpp SRCS+= Host/common/FileCache.cpp SRCS+= Host/common/FileSystem.cpp SRCS+= Host/common/Host.cpp SRCS+= Host/common/HostInfoBase.cpp SRCS+= Host/common/HostNativeThreadBase.cpp SRCS+= Host/common/HostProcess.cpp SRCS+= Host/common/HostThread.cpp SRCS+= Host/common/LZMA.cpp SRCS+= Host/common/LockFileBase.cpp SRCS+= Host/common/MainLoop.cpp SRCS+= Host/common/MonitoringProcessLauncher.cpp SRCS+= Host/common/NativeProcessProtocol.cpp SRCS+= Host/common/NativeRegisterContext.cpp SRCS+= Host/common/NativeThreadProtocol.cpp SRCS+= Host/common/NativeWatchpointList.cpp SRCS+= Host/common/OptionParser.cpp SRCS+= Host/common/PipeBase.cpp SRCS+= Host/common/ProcessLaunchInfo.cpp SRCS+= Host/common/ProcessRunLock.cpp SRCS+= Host/common/PseudoTerminal.cpp SRCS+= Host/common/Socket.cpp SRCS+= Host/common/SocketAddress.cpp SRCS+= Host/common/StringConvert.cpp SRCS+= Host/common/TCPSocket.cpp SRCS+= Host/common/Terminal.cpp SRCS+= Host/common/ThreadLauncher.cpp SRCS+= Host/common/UDPSocket.cpp SRCS+= Host/common/XML.cpp SRCS+= Host/freebsd/Host.cpp SRCS+= Host/freebsd/HostInfoFreeBSD.cpp SRCS+= Host/posix/ConnectionFileDescriptorPosix.cpp SRCS+= Host/posix/DomainSocket.cpp SRCS+= Host/posix/FileSystemPosix.cpp SRCS+= Host/posix/HostInfoPosix.cpp SRCS+= Host/posix/HostProcessPosix.cpp SRCS+= Host/posix/HostThreadPosix.cpp SRCS+= Host/posix/LockFilePosix.cpp SRCS+= Host/posix/PipePosix.cpp SRCS+= Host/posix/ProcessLauncherPosixFork.cpp SRCS+= Initialization/SystemInitializer.cpp SRCS+= Initialization/SystemInitializerCommon.cpp SRCS+= Initialization/SystemLifetimeManager.cpp SRCS+= Interpreter/CommandAlias.cpp SRCS+= Interpreter/CommandHistory.cpp SRCS+= Interpreter/CommandInterpreter.cpp SRCS+= Interpreter/CommandObject.cpp SRCS+= Interpreter/CommandOptionValidators.cpp SRCS+= Interpreter/CommandReturnObject.cpp SRCS+= Interpreter/OptionArgParser.cpp SRCS+= Interpreter/OptionGroupArchitecture.cpp SRCS+= Interpreter/OptionGroupBoolean.cpp SRCS+= Interpreter/OptionGroupFile.cpp SRCS+= Interpreter/OptionGroupFormat.cpp SRCS+= Interpreter/OptionGroupOutputFile.cpp SRCS+= Interpreter/OptionGroupPlatform.cpp SRCS+= Interpreter/OptionGroupPythonClassWithDict.cpp SRCS+= Interpreter/OptionGroupString.cpp SRCS+= Interpreter/OptionGroupUInt64.cpp SRCS+= Interpreter/OptionGroupUUID.cpp SRCS+= Interpreter/OptionGroupValueObjectDisplay.cpp SRCS+= Interpreter/OptionGroupVariable.cpp SRCS+= Interpreter/OptionGroupWatchpoint.cpp SRCS+= Interpreter/OptionValue.cpp SRCS+= Interpreter/OptionValueArch.cpp SRCS+= Interpreter/OptionValueArgs.cpp SRCS+= Interpreter/OptionValueArray.cpp SRCS+= Interpreter/OptionValueBoolean.cpp SRCS+= Interpreter/OptionValueChar.cpp SRCS+= Interpreter/OptionValueDictionary.cpp SRCS+= Interpreter/OptionValueEnumeration.cpp SRCS+= Interpreter/OptionValueFileColonLine.cpp SRCS+= Interpreter/OptionValueFileSpec.cpp SRCS+= Interpreter/OptionValueFileSpecList.cpp SRCS+= Interpreter/OptionValueFormat.cpp SRCS+= Interpreter/OptionValueFormatEntity.cpp SRCS+= Interpreter/OptionValueLanguage.cpp SRCS+= Interpreter/OptionValuePathMappings.cpp SRCS+= Interpreter/OptionValueProperties.cpp SRCS+= Interpreter/OptionValueRegex.cpp SRCS+= Interpreter/OptionValueSInt64.cpp SRCS+= Interpreter/OptionValueString.cpp SRCS+= Interpreter/OptionValueUInt64.cpp SRCS+= Interpreter/OptionValueUUID.cpp SRCS+= Interpreter/Options.cpp SRCS+= Interpreter/Property.cpp SRCS+= Interpreter/ScriptInterpreter.cpp SRCS+= LLDBWrapLua.cpp SRCS+= Plugins/ABI/AArch64/ABIAArch64.cpp SRCS+= Plugins/ABI/AArch64/ABISysV_arm64.cpp SRCS+= Plugins/ABI/ARM/ABIARM.cpp SRCS+= Plugins/ABI/ARM/ABISysV_arm.cpp SRCS+= Plugins/ABI/Mips/ABIMips.cpp SRCS+= Plugins/ABI/Mips/ABISysV_mips.cpp SRCS+= Plugins/ABI/Mips/ABISysV_mips64.cpp SRCS+= Plugins/ABI/PowerPC/ABIPowerPC.cpp SRCS+= Plugins/ABI/PowerPC/ABISysV_ppc.cpp SRCS+= Plugins/ABI/PowerPC/ABISysV_ppc64.cpp SRCS+= Plugins/ABI/X86/ABISysV_i386.cpp SRCS+= Plugins/ABI/X86/ABISysV_x86_64.cpp SRCS+= Plugins/ABI/X86/ABIX86.cpp SRCS+= Plugins/Architecture/AArch64/ArchitectureAArch64.cpp SRCS+= Plugins/Architecture/Arm/ArchitectureArm.cpp SRCS+= Plugins/Architecture/Mips/ArchitectureMips.cpp SRCS+= Plugins/Architecture/PPC64/ArchitecturePPC64.cpp SRCS+= Plugins/Disassembler/LLVMC/DisassemblerLLVMC.cpp SRCS+= Plugins/DynamicLoader/POSIX-DYLD/DYLDRendezvous.cpp SRCS+= Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp SRCS+= Plugins/DynamicLoader/Static/DynamicLoaderStatic.cpp SRCS+= Plugins/ExpressionParser/Clang/ASTResultSynthesizer.cpp SRCS+= Plugins/ExpressionParser/Clang/ASTStructExtractor.cpp SRCS+= Plugins/ExpressionParser/Clang/ASTUtils.cpp SRCS+= Plugins/ExpressionParser/Clang/ClangASTImporter.cpp SRCS+= Plugins/ExpressionParser/Clang/ClangASTMetadata.cpp SRCS+= Plugins/ExpressionParser/Clang/ClangASTSource.cpp SRCS+= Plugins/ExpressionParser/Clang/ClangDeclVendor.cpp SRCS+= Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp SRCS+= Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp SRCS+= Plugins/ExpressionParser/Clang/ClangExpressionSourceCode.cpp SRCS+= Plugins/ExpressionParser/Clang/ClangExpressionVariable.cpp SRCS+= Plugins/ExpressionParser/Clang/ClangExternalASTSourceCallbacks.cpp SRCS+= Plugins/ExpressionParser/Clang/ClangFunctionCaller.cpp SRCS+= Plugins/ExpressionParser/Clang/ClangHost.cpp SRCS+= Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp SRCS+= Plugins/ExpressionParser/Clang/ClangPersistentVariables.cpp SRCS+= Plugins/ExpressionParser/Clang/ClangUserExpression.cpp SRCS+= Plugins/ExpressionParser/Clang/ClangUtil.cpp SRCS+= Plugins/ExpressionParser/Clang/ClangUtilityFunction.cpp SRCS+= Plugins/ExpressionParser/Clang/CppModuleConfiguration.cpp SRCS+= Plugins/ExpressionParser/Clang/CxxModuleHandler.cpp SRCS+= Plugins/ExpressionParser/Clang/IRDynamicChecks.cpp SRCS+= Plugins/ExpressionParser/Clang/IRForTarget.cpp SRCS+= Plugins/ExpressionParser/Clang/NameSearchContext.cpp SRCS+= Plugins/Instruction/ARM/EmulateInstructionARM.cpp SRCS+= Plugins/Instruction/ARM/EmulationStateARM.cpp SRCS+= Plugins/Instruction/ARM64/EmulateInstructionARM64.cpp SRCS+= Plugins/Instruction/MIPS/EmulateInstructionMIPS.cpp SRCS+= Plugins/Instruction/MIPS64/EmulateInstructionMIPS64.cpp SRCS+= Plugins/Instruction/PPC64/EmulateInstructionPPC64.cpp SRCS+= Plugins/InstrumentationRuntime/ASan/InstrumentationRuntimeASan.cpp SRCS+= Plugins/InstrumentationRuntime/MainThreadChecker/InstrumentationRuntimeMainThreadChecker.cpp SRCS+= Plugins/InstrumentationRuntime/TSan/InstrumentationRuntimeTSan.cpp SRCS+= Plugins/InstrumentationRuntime/UBSan/InstrumentationRuntimeUBSan.cpp SRCS+= Plugins/JITLoader/GDB/JITLoaderGDB.cpp SRCS+= Plugins/Language/CPlusPlus/BlockPointer.cpp SRCS+= Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp SRCS+= Plugins/Language/CPlusPlus/CPlusPlusNameParser.cpp SRCS+= Plugins/Language/CPlusPlus/CxxStringTypes.cpp SRCS+= Plugins/Language/CPlusPlus/LibCxx.cpp SRCS+= Plugins/Language/CPlusPlus/LibCxxAtomic.cpp SRCS+= Plugins/Language/CPlusPlus/LibCxxBitset.cpp SRCS+= Plugins/Language/CPlusPlus/LibCxxInitializerList.cpp SRCS+= Plugins/Language/CPlusPlus/LibCxxList.cpp SRCS+= Plugins/Language/CPlusPlus/LibCxxMap.cpp SRCS+= Plugins/Language/CPlusPlus/LibCxxOptional.cpp SRCS+= Plugins/Language/CPlusPlus/LibCxxQueue.cpp SRCS+= Plugins/Language/CPlusPlus/LibCxxTuple.cpp SRCS+= Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp SRCS+= Plugins/Language/CPlusPlus/LibCxxVariant.cpp SRCS+= Plugins/Language/CPlusPlus/LibCxxVector.cpp SRCS+= Plugins/Language/CPlusPlus/LibStdcpp.cpp SRCS+= Plugins/Language/CPlusPlus/LibStdcppTuple.cpp SRCS+= Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp SRCS+= Plugins/Language/CPlusPlus/MSVCUndecoratedNameParser.cpp SRCS+= Plugins/Language/ClangCommon/ClangHighlighter.cpp SRCS+= Plugins/Language/ObjC/CF.cpp +SRCS+= Plugins/Language/ObjC/CFBasicHash.cpp SRCS+= Plugins/Language/ObjC/Cocoa.cpp +SRCS+= Plugins/Language/ObjC/CoreMedia.cpp SRCS+= Plugins/Language/ObjC/NSArray.cpp SRCS+= Plugins/Language/ObjC/NSDictionary.cpp SRCS+= Plugins/Language/ObjC/NSError.cpp SRCS+= Plugins/Language/ObjC/NSException.cpp SRCS+= Plugins/Language/ObjC/NSIndexPath.cpp SRCS+= Plugins/Language/ObjC/NSSet.cpp SRCS+= Plugins/Language/ObjC/NSString.cpp SRCS+= Plugins/Language/ObjC/ObjCLanguage.cpp SRCS+= Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp SRCS+= Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.cpp SRCS+= Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp SRCS+= Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTrampolineHandler.cpp SRCS+= Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleThreadPlanStepThroughObjCTrampoline.cpp SRCS+= Plugins/LanguageRuntime/ObjC/ObjCLanguageRuntime.cpp SRCS+= Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptExpressionOpts.cpp SRCS+= Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptRuntime.cpp +SRCS+= Plugins/LanguageRuntime/RenderScript/RenderScriptRuntime/RenderScriptx86ABIFixups.cpp SRCS+= Plugins/MemoryHistory/asan/MemoryHistoryASan.cpp SRCS+= Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp SRCS+= Plugins/ObjectFile/Breakpad/BreakpadRecords.cpp SRCS+= Plugins/ObjectFile/Breakpad/ObjectFileBreakpad.cpp SRCS+= Plugins/ObjectFile/ELF/ELFHeader.cpp SRCS+= Plugins/ObjectFile/ELF/ObjectFileELF.cpp SRCS+= Plugins/ObjectFile/JIT/ObjectFileJIT.cpp SRCS+= Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp SRCS+= Plugins/Platform/POSIX/PlatformPOSIX.cpp SRCS+= Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp SRCS+= Plugins/Process/FreeBSD/NativeProcessFreeBSD.cpp SRCS+= Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD.cpp SRCS+= Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_arm.cpp SRCS+= Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_arm64.cpp SRCS+= Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_mips64.cpp SRCS+= Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_powerpc.cpp SRCS+= Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_x86_64.cpp SRCS+= Plugins/Process/FreeBSD/NativeThreadFreeBSD.cpp SRCS+= Plugins/Process/POSIX/CrashReason.cpp SRCS+= Plugins/Process/POSIX/NativeProcessELF.cpp SRCS+= Plugins/Process/POSIX/ProcessMessage.cpp SRCS+= Plugins/Process/POSIX/ProcessPOSIXLog.cpp SRCS+= Plugins/Process/Utility/AuxVector.cpp SRCS+= Plugins/Process/Utility/DynamicRegisterInfo.cpp SRCS+= Plugins/Process/Utility/FreeBSDSignals.cpp SRCS+= Plugins/Process/Utility/GDBRemoteSignals.cpp SRCS+= Plugins/Process/Utility/HistoryThread.cpp SRCS+= Plugins/Process/Utility/HistoryUnwind.cpp SRCS+= Plugins/Process/Utility/InferiorCallPOSIX.cpp SRCS+= Plugins/Process/Utility/LinuxSignals.cpp SRCS+= Plugins/Process/Utility/MipsLinuxSignals.cpp SRCS+= Plugins/Process/Utility/MemoryTagManagerAArch64MTE.cpp SRCS+= Plugins/Process/Utility/NativeProcessSoftwareSingleStep.cpp SRCS+= Plugins/Process/Utility/NativeRegisterContextDBReg_arm64.cpp SRCS+= Plugins/Process/Utility/NativeRegisterContextDBReg_x86.cpp SRCS+= Plugins/Process/Utility/NativeRegisterContextRegisterInfo.cpp SRCS+= Plugins/Process/Utility/NetBSDSignals.cpp SRCS+= Plugins/Process/Utility/RegisterContextDarwin_i386.cpp SRCS+= Plugins/Process/Utility/RegisterContextDarwin_x86_64.cpp SRCS+= Plugins/Process/Utility/RegisterContextDummy.cpp SRCS+= Plugins/Process/Utility/RegisterContextFreeBSD_i386.cpp SRCS+= Plugins/Process/Utility/RegisterContextFreeBSD_mips64.cpp SRCS+= Plugins/Process/Utility/RegisterContextFreeBSD_powerpc.cpp SRCS+= Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.cpp SRCS+= Plugins/Process/Utility/RegisterContextHistory.cpp SRCS+= Plugins/Process/Utility/RegisterContextLinux_i386.cpp SRCS+= Plugins/Process/Utility/RegisterContextLinux_x86_64.cpp SRCS+= Plugins/Process/Utility/RegisterContextMemory.cpp SRCS+= Plugins/Process/Utility/RegisterContextNetBSD_i386.cpp SRCS+= Plugins/Process/Utility/RegisterContextNetBSD_x86_64.cpp SRCS+= Plugins/Process/Utility/RegisterContextOpenBSD_i386.cpp SRCS+= Plugins/Process/Utility/RegisterContextOpenBSD_x86_64.cpp SRCS+= Plugins/Process/Utility/RegisterContextPOSIX_arm.cpp SRCS+= Plugins/Process/Utility/RegisterContextPOSIX_arm64.cpp SRCS+= Plugins/Process/Utility/RegisterContextPOSIX_mips64.cpp SRCS+= Plugins/Process/Utility/RegisterContextPOSIX_powerpc.cpp SRCS+= Plugins/Process/Utility/RegisterContextPOSIX_ppc64le.cpp SRCS+= Plugins/Process/Utility/RegisterContextPOSIX_x86.cpp SRCS+= Plugins/Process/Utility/RegisterContextThreadMemory.cpp SRCS+= Plugins/Process/Utility/RegisterContext_x86.cpp SRCS+= Plugins/Process/Utility/RegisterInfoPOSIX_arm.cpp SRCS+= Plugins/Process/Utility/RegisterInfoPOSIX_arm64.cpp SRCS+= Plugins/Process/Utility/RegisterInfoPOSIX_ppc64le.cpp SRCS+= Plugins/Process/Utility/StopInfoMachException.cpp SRCS+= Plugins/Process/Utility/ThreadMemory.cpp SRCS+= Plugins/Process/elf-core/ProcessElfCore.cpp SRCS+= Plugins/Process/elf-core/RegisterContextPOSIXCore_arm.cpp SRCS+= Plugins/Process/elf-core/RegisterContextPOSIXCore_arm64.cpp SRCS+= Plugins/Process/elf-core/RegisterContextPOSIXCore_mips64.cpp SRCS+= Plugins/Process/elf-core/RegisterContextPOSIXCore_powerpc.cpp SRCS+= Plugins/Process/elf-core/RegisterContextPOSIXCore_ppc64le.cpp SRCS+= Plugins/Process/elf-core/RegisterContextPOSIXCore_x86_64.cpp SRCS+= Plugins/Process/elf-core/RegisterUtilities.cpp SRCS+= Plugins/Process/elf-core/ThreadElfCore.cpp SRCS+= Plugins/Process/gdb-remote/GDBRemoteClientBase.cpp SRCS+= Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp SRCS+= Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp SRCS+= Plugins/Process/gdb-remote/GDBRemoteCommunicationHistory.cpp SRCS+= Plugins/Process/gdb-remote/GDBRemoteCommunicationReplayServer.cpp SRCS+= Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.cpp SRCS+= Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp SRCS+= Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp SRCS+= Plugins/Process/gdb-remote/GDBRemoteCommunicationServerPlatform.cpp SRCS+= Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp SRCS+= Plugins/Process/gdb-remote/ProcessGDBRemote.cpp SRCS+= Plugins/Process/gdb-remote/ProcessGDBRemoteLog.cpp SRCS+= Plugins/Process/gdb-remote/ThreadGDBRemote.cpp SRCS+= Plugins/Process/scripted/ScriptedProcess.cpp SRCS+= Plugins/ScriptInterpreter/Lua/Lua.cpp SRCS+= Plugins/ScriptInterpreter/Lua/ScriptInterpreterLua.cpp SRCS+= Plugins/ScriptInterpreter/None/ScriptInterpreterNone.cpp SRCS+= Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp SRCS+= Plugins/SymbolFile/DWARF/AppleDWARFIndex.cpp SRCS+= Plugins/SymbolFile/DWARF/DIERef.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFAbbreviationDeclaration.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFAttribute.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFBaseDIE.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFCompileUnit.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFContext.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFDIE.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFDataExtractor.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFDebugAbbrev.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFDebugArangeSet.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFDebugAranges.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFDebugInfo.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFDebugMacro.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFDebugRanges.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFDeclContext.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFDefines.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFFormValue.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFIndex.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFTypeUnit.cpp SRCS+= Plugins/SymbolFile/DWARF/DWARFUnit.cpp SRCS+= Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp SRCS+= Plugins/SymbolFile/DWARF/HashedNameToDIE.cpp SRCS+= Plugins/SymbolFile/DWARF/LogChannelDWARF.cpp SRCS+= Plugins/SymbolFile/DWARF/ManualDWARFIndex.cpp SRCS+= Plugins/SymbolFile/DWARF/NameToDIE.cpp SRCS+= Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp SRCS+= Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp SRCS+= Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.cpp SRCS+= Plugins/SymbolFile/DWARF/UniqueDWARFASTType.cpp SRCS+= Plugins/SymbolFile/Symtab/SymbolFileSymtab.cpp SRCS+= Plugins/SymbolVendor/ELF/SymbolVendorELF.cpp SRCS+= Plugins/TypeSystem/Clang/TypeSystemClang.cpp SRCS+= Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.cpp SRCS+= Plugins/UnwindAssembly/x86/UnwindAssembly-x86.cpp SRCS+= Plugins/UnwindAssembly/x86/x86AssemblyInspectionEngine.cpp SRCS+= Symbol/ArmUnwindInfo.cpp SRCS+= Symbol/Block.cpp SRCS+= Symbol/CompactUnwindInfo.cpp SRCS+= Symbol/CompileUnit.cpp SRCS+= Symbol/CompilerDecl.cpp SRCS+= Symbol/CompilerDeclContext.cpp SRCS+= Symbol/CompilerType.cpp SRCS+= Symbol/DWARFCallFrameInfo.cpp SRCS+= Symbol/DebugMacros.cpp SRCS+= Symbol/DeclVendor.cpp SRCS+= Symbol/FuncUnwinders.cpp SRCS+= Symbol/Function.cpp SRCS+= Symbol/LineEntry.cpp SRCS+= Symbol/LineTable.cpp SRCS+= Symbol/LocateSymbolFile.cpp SRCS+= Symbol/ObjectFile.cpp SRCS+= Symbol/PostfixExpression.cpp SRCS+= Symbol/Symbol.cpp SRCS+= Symbol/SymbolContext.cpp SRCS+= Symbol/SymbolFile.cpp SRCS+= Symbol/SymbolVendor.cpp SRCS+= Symbol/Symtab.cpp SRCS+= Symbol/Type.cpp SRCS+= Symbol/TypeList.cpp SRCS+= Symbol/TypeMap.cpp SRCS+= Symbol/TypeSystem.cpp SRCS+= Symbol/UnwindPlan.cpp SRCS+= Symbol/UnwindTable.cpp SRCS+= Symbol/Variable.cpp SRCS+= Symbol/VariableList.cpp SRCS+= Target/ABI.cpp SRCS+= Target/AssertFrameRecognizer.cpp SRCS+= Target/ExecutionContext.cpp SRCS+= Target/InstrumentationRuntime.cpp SRCS+= Target/InstrumentationRuntimeStopInfo.cpp SRCS+= Target/JITLoader.cpp SRCS+= Target/JITLoaderList.cpp SRCS+= Target/Language.cpp SRCS+= Target/LanguageRuntime.cpp SRCS+= Target/Memory.cpp SRCS+= Target/MemoryHistory.cpp SRCS+= Target/MemoryRegionInfo.cpp SRCS+= Target/ModuleCache.cpp SRCS+= Target/OperatingSystem.cpp SRCS+= Target/PathMappingList.cpp SRCS+= Target/Platform.cpp SRCS+= Target/Process.cpp SRCS+= Target/ProcessTrace.cpp SRCS+= Target/Queue.cpp SRCS+= Target/QueueItem.cpp SRCS+= Target/QueueList.cpp SRCS+= Target/RegisterContext.cpp SRCS+= Target/RegisterContextUnwind.cpp SRCS+= Target/RegisterNumber.cpp SRCS+= Target/RemoteAwarePlatform.cpp SRCS+= Target/SectionLoadHistory.cpp SRCS+= Target/SectionLoadList.cpp SRCS+= Target/StackFrame.cpp SRCS+= Target/StackFrameList.cpp SRCS+= Target/StackFrameRecognizer.cpp SRCS+= Target/StackID.cpp SRCS+= Target/StopInfo.cpp SRCS+= Target/SystemRuntime.cpp SRCS+= Target/Target.cpp SRCS+= Target/TargetList.cpp SRCS+= Target/Thread.cpp SRCS+= Target/ThreadCollection.cpp SRCS+= Target/ThreadList.cpp SRCS+= Target/ThreadPlan.cpp SRCS+= Target/ThreadPlanBase.cpp SRCS+= Target/ThreadPlanCallFunction.cpp SRCS+= Target/ThreadPlanCallFunctionUsingABI.cpp SRCS+= Target/ThreadPlanCallUserExpression.cpp SRCS+= Target/ThreadPlanPython.cpp SRCS+= Target/ThreadPlanRunToAddress.cpp SRCS+= Target/ThreadPlanShouldStopHere.cpp SRCS+= Target/ThreadPlanStack.cpp SRCS+= Target/ThreadPlanStepInRange.cpp SRCS+= Target/ThreadPlanStepInstruction.cpp SRCS+= Target/ThreadPlanStepOut.cpp SRCS+= Target/ThreadPlanStepOverBreakpoint.cpp SRCS+= Target/ThreadPlanStepOverRange.cpp SRCS+= Target/ThreadPlanStepRange.cpp SRCS+= Target/ThreadPlanStepThrough.cpp SRCS+= Target/ThreadPlanStepUntil.cpp SRCS+= Target/ThreadPlanTracer.cpp SRCS+= Target/ThreadSpec.cpp SRCS+= Target/Trace.cpp SRCS+= Target/TraceCursor.cpp SRCS+= Target/TraceInstructionDumper.cpp SRCS+= Target/UnixSignals.cpp SRCS+= Target/UnwindAssembly.cpp SRCS+= Target/UnwindLLDB.cpp SRCS+= Utility/ArchSpec.cpp SRCS+= Utility/Args.cpp SRCS+= Utility/Baton.cpp SRCS+= Utility/Broadcaster.cpp SRCS+= Utility/CompletionRequest.cpp SRCS+= Utility/Connection.cpp SRCS+= Utility/ConstString.cpp SRCS+= Utility/DataBufferHeap.cpp SRCS+= Utility/DataBufferLLVM.cpp SRCS+= Utility/DataEncoder.cpp SRCS+= Utility/DataExtractor.cpp SRCS+= Utility/Environment.cpp SRCS+= Utility/Event.cpp SRCS+= Utility/FileSpec.cpp SRCS+= Utility/GDBRemote.cpp SRCS+= Utility/IOObject.cpp SRCS+= Utility/LLDBAssert.cpp SRCS+= Utility/Listener.cpp SRCS+= Utility/Log.cpp SRCS+= Utility/Logging.cpp SRCS+= Utility/NameMatches.cpp SRCS+= Utility/ProcessInfo.cpp SRCS+= Utility/RegisterValue.cpp SRCS+= Utility/RegularExpression.cpp SRCS+= Utility/Reproducer.cpp SRCS+= Utility/ReproducerInstrumentation.cpp SRCS+= Utility/ReproducerProvider.cpp SRCS+= Utility/Scalar.cpp SRCS+= Utility/SelectHelper.cpp SRCS+= Utility/State.cpp SRCS+= Utility/Status.cpp SRCS+= Utility/Stream.cpp SRCS+= Utility/StreamCallback.cpp SRCS+= Utility/StreamString.cpp SRCS+= Utility/StringExtractor.cpp SRCS+= Utility/StringExtractorGDBRemote.cpp SRCS+= Utility/StringLexer.cpp SRCS+= Utility/StringList.cpp SRCS+= Utility/StructuredData.cpp SRCS+= Utility/TildeExpressionResolver.cpp SRCS+= Utility/TraceGDBRemotePackets.cpp SRCS+= Utility/Timer.cpp SRCS+= Utility/UUID.cpp SRCS+= Utility/UnimplementedError.cpp SRCS+= Utility/UriParser.cpp SRCS+= Utility/UserID.cpp SRCS+= Utility/UserIDResolver.cpp SRCS+= Utility/VASprintf.cpp SRCS+= Utility/VMRange.cpp SRCS+= lldb.cpp LLDB_TBLGEN?= lldb-tblgen CommandOptions.inc: ${LLDB_SRCS}/source/Commands/Options.td ${LLDB_TBLGEN} -gen-lldb-option-defs \ -I ${LLDB_SRCS}/source/Commands -d ${.TARGET:C/$/.d/} \ -o ${.TARGET} ${LLDB_SRCS}/source/Commands/Options.td TGHDRS+= CommandOptions.inc .for path in \ Core/Core \ Interpreter/Interpreter \ Plugins/JITLoader/GDB/JITLoaderGDB \ Plugins/Process/gdb-remote/ProcessGDBRemote \ Plugins/SymbolFile/DWARF/SymbolFileDWARF \ Target/Target ${path:T}Properties.inc: ${LLDB_SRCS}/source/${path}Properties.td ${LLDB_TBLGEN} -gen-lldb-property-defs \ -I ${LLDB_SRCS}/source/${path:H} -d ${.TARGET:C/$/.d/} \ -o ${.TARGET} ${LLDB_SRCS}/source/${path}Properties.td TGHDRS+= ${path:T}Properties.inc ${path:T}PropertiesEnum.inc: ${LLDB_SRCS}/source/${path}Properties.td ${LLDB_TBLGEN} -gen-lldb-property-enum-defs \ -I ${LLDB_SRCS}/source/${path:H} -d ${.TARGET:C/$/.d/} \ -o ${.TARGET} ${LLDB_SRCS}/source/${path}Properties.td TGHDRS+= ${path:T}PropertiesEnum.inc .endfor DPSRCS+= ${TGHDRS} CLEANFILES+= ${TGHDRS} ${TGHDRS:C/$/.d/} .include "../clang.build.mk" INTERNALLIB= # Building lldb's bindings requires swig, but we do not want to include it in # the FreeBSD base system (as a build tool) because it has non-trivial # dependencies. As a workaround we commit the generated file. Requires the # swig package. # # After importing an updated llvm/lldb into FreeBSD run `make run-swig` in # this directory to generate generate LLDBWrapLua.cpp, and commit the result. .PHONY: run-swig run-swig: swig -I${LLDB_SRCS}/include \ -c++ -features autodoc -lua -w503 \ -o ${.CURDIR}/LLDBWrapLua.cpp ${LLDB_SRCS}/bindings/lua.swig .include diff --git a/share/mk/src.opts.mk b/share/mk/src.opts.mk index 5aa7a6a45632..d0c4770692d5 100644 --- a/share/mk/src.opts.mk +++ b/share/mk/src.opts.mk @@ -1,499 +1,499 @@ # $FreeBSD$ # # Option file for FreeBSD /usr/src builds, at least the userland and boot loader # portions of the tree. These options generally chose what parts of the tree to # include or omit and are FreeBSD source tree specific. # # Users define WITH_FOO and WITHOUT_FOO on the command line or in /etc/src.conf # and /etc/make.conf files. These translate in the build system to MK_FOO={yes,no} # with sensible (usually) defaults. # # Makefiles must include bsd.opts.mk after defining specific MK_FOO options that # are applicable for that Makefile (typically there are none, but sometimes there # are exceptions). Recursive makes usually add MK_FOO=no for options that they wish # to omit from that make. # # Makefiles must include bsd.mkopt.mk before they test the value of any MK_FOO # variable. # # Makefiles may also assume that this file is included by src.opts.mk should it # need variables defined there prior to the end of the Makefile where # bsd.{subdir,lib.bin}.mk is traditionally included. # # The old-style YES_FOO and NO_FOO are being phased out. No new instances of them # should be added. Old instances should be removed since they were just to # bridge the gap between FreeBSD 4 and FreeBSD 5. # # Makefiles should never test WITH_FOO or WITHOUT_FOO directly (although an # exception is made for _WITHOUT_SRCONF which turns off this mechanism # completely inside bsd.*.mk files). # .if !target(____) ____: .include # # Define MK_* variables (which are either "yes" or "no") for users # to set via WITH_*/WITHOUT_* in /etc/src.conf and override in the # make(1) environment. # These should be tested with `== "no"' or `!= "no"' in makefiles. # The NO_* variables should only be set by makefiles for variables # that haven't been converted over. # # These options are used by the src builds. Those listed in # __DEFAULT_YES_OPTIONS default to 'yes' and will build unless turned # off. __DEFAULT_NO_OPTIONS will default to 'no' and won't build # unless turned on. Any options listed in 'BROKEN_OPTIONS' will be # hard-wired to 'no'. "Broken" here means not working or # not-appropriate and/or not supported. It doesn't imply something is # wrong with the code. There's not a single good word for this, so # BROKEN was selected as the least imperfect one considered at the # time. Options are added to BROKEN_OPTIONS list on a per-arch basis. # At this time, there's no provision for mutually incompatible options. __DEFAULT_YES_OPTIONS = \ ACCT \ ACPI \ APM \ AT \ ATM \ AUDIT \ AUTHPF \ AUTOFS \ BHYVE \ BLACKLIST \ BLUETOOTH \ BOOT \ BOOTPARAMD \ BOOTPD \ BSD_CPIO \ BSDINSTALL \ BSNMP \ BZIP2 \ CALENDAR \ CAPSICUM \ CAROOT \ CASPER \ CCD \ CDDL \ CLANG \ CLANG_BOOTSTRAP \ CLANG_IS_CC \ CLEAN \ CPP \ CROSS_COMPILER \ CRYPT \ CUSE \ CXX \ CXGBETOOL \ DIALOG \ DICT \ DMAGENT \ DYNAMICROOT \ EE \ EFI \ ELFTOOLCHAIN_BOOTSTRAP \ EXAMPLES \ FDT \ FILE \ FINGER \ FLOPPY \ FORTH \ FP_LIBC \ FREEBSD_UPDATE \ FTP \ GAMES \ GH_BC \ GNU_DIFF \ GOOGLETEST \ GPIO \ HAST \ HTML \ HYPERV \ ICONV \ INET \ INET6 \ INETD \ IPFILTER \ IPFW \ ISCSI \ JAIL \ KDUMP \ KVM \ LDNS \ LDNS_UTILS \ LEGACY_CONSOLE \ LLD \ LLD_BOOTSTRAP \ LLD_IS_LD \ LLVM_ASSERTIONS \ LLVM_COV \ LLVM_CXXFILT \ LOADER_GELI \ LOADER_KBOOT \ LOADER_LUA \ LOADER_OFW \ LOADER_UBOOT \ LOCALES \ LOCATE \ LPR \ LS_COLORS \ MAIL \ MAILWRAPPER \ MAKE \ MLX5TOOL \ NDIS \ NETCAT \ NETGRAPH \ NLS_CATALOGS \ NS_CACHING \ NTP \ NVME \ OFED \ OPENSSL \ PAM \ PF \ PKGBOOTSTRAP \ PMC \ PORTSNAP \ PPP \ QUOTAS \ RADIUS_SUPPORT \ RBOOTD \ RESCUE \ ROUTED \ SENDMAIL \ SERVICESDB \ SETUID_LOGIN \ SHARED_TOOLCHAIN \ SHAREDOCS \ SOURCELESS \ SOURCELESS_HOST \ SOURCELESS_UCODE \ STATS \ SYSCONS \ SYSTEM_COMPILER \ SYSTEM_LINKER \ TALK \ TCP_WRAPPERS \ TCSH \ TELNET \ TEXTPROC \ TFTP \ UNBOUND \ USB \ UTMPX \ VI \ VT \ WIRELESS \ WPA_SUPPLICANT_EAPOL \ ZFS \ LOADER_ZFS \ ZONEINFO __DEFAULT_NO_OPTIONS = \ BEARSSL \ BHYVE_SNAPSHOT \ CLANG_EXTRAS \ CLANG_FORMAT \ DETECT_TZ_CHANGES \ DTRACE_TESTS \ EXPERIMENTAL \ HESIOD \ LOADER_FIREWIRE \ LOADER_VERBOSE \ LOADER_VERIEXEC_PASS_MANIFEST \ LLVM_BINUTILS \ MALLOC_PRODUCTION \ OFED_EXTRA \ OPENLDAP \ REPRODUCIBLE_BUILD \ RPCBIND_WARMSTART_SUPPORT \ SORT_THREADS \ ZONEINFO_LEAPSECONDS_SUPPORT \ # LEFT/RIGHT. Left options which default to "yes" unless their corresponding # RIGHT option is disabled. __DEFAULT_DEPENDENT_OPTIONS= \ CLANG_FULL/CLANG \ LLVM_TARGET_ALL/CLANG \ LOADER_VERIEXEC/BEARSSL \ LOADER_EFI_SECUREBOOT/LOADER_VERIEXEC \ LOADER_VERIEXEC_VECTX/LOADER_VERIEXEC \ VERIEXEC/BEARSSL \ # MK_*_SUPPORT options which default to "yes" unless their corresponding # MK_* variable is set to "no". # .for var in \ BLACKLIST \ BZIP2 \ INET \ INET6 \ KERBEROS \ KVM \ NETGRAPH \ PAM \ TESTS \ WIRELESS __DEFAULT_DEPENDENT_OPTIONS+= ${var}_SUPPORT/${var} .endfor # # Default behaviour of some options depends on the architecture. Unfortunately # this means that we have to test TARGET_ARCH (the buildworld case) as well # as MACHINE_ARCH (the non-buildworld case). Normally TARGET_ARCH is not # used at all in bsd.*.mk, but we have to make an exception here if we want # to allow defaults for some things like clang to vary by target architecture. # Additional, per-target behavior should be rarely added only after much # gnashing of teeth and grinding of gears. # .if defined(TARGET_ARCH) __T=${TARGET_ARCH} .else __T=${MACHINE_ARCH} .endif # All supported backends for LLVM_TARGET_XXX __LLVM_TARGETS= \ aarch64 \ arm \ powerpc \ riscv \ x86 __LLVM_TARGET_FILT= C/(amd64|i386)/x86/:C/powerpc.*/powerpc/:C/armv[67]/arm/:C/riscv.*/riscv/:C/mips.*/mips/ .for __llt in ${__LLVM_TARGETS} # Default enable the given TARGET's LLVM_TARGET support .if ${__T:${__LLVM_TARGET_FILT}} == ${__llt} __DEFAULT_YES_OPTIONS+= LLVM_TARGET_${__llt:${__LLVM_TARGET_FILT}:tu} # aarch64 needs arm for -m32 support. .elif ${__T} == "aarch64" && ${__llt:Marm*} != "" __DEFAULT_DEPENDENT_OPTIONS+= LLVM_TARGET_ARM/LLVM_TARGET_AARCH64 # Default the rest of the LLVM_TARGETs to the value of MK_LLVM_TARGET_ALL. .else __DEFAULT_DEPENDENT_OPTIONS+= LLVM_TARGET_${__llt:${__LLVM_TARGET_FILT}:tu}/LLVM_TARGET_ALL .endif .endfor __DEFAULT_NO_OPTIONS+=LLVM_TARGET_BPF LLVM_TARGET_MIPS .include -.if ${__T} == "aarch64" || ${__T} == "amd64" || ${__T} == "i386" +.if ${__T} == "aarch64" || ${__T} == "amd64" || ${__T} == "i386" || ${__T:Mpowerpc*} __DEFAULT_YES_OPTIONS+=LLDB .else __DEFAULT_NO_OPTIONS+=LLDB .endif # LIB32 is supported on amd64 and powerpc64 .if (${__T} == "amd64" || ${__T} == "powerpc64") __DEFAULT_YES_OPTIONS+=LIB32 .else BROKEN_OPTIONS+=LIB32 .endif # EFI doesn't exist on powerpc (well, officially) .if ${__T:Mpowerpc*} BROKEN_OPTIONS+=EFI .endif # OFW is only for powerpc, exclude others .if ${__T:Mpowerpc*} == "" BROKEN_OPTIONS+=LOADER_OFW .endif # KBOOT is only for powerpc64 (powerpc64le broken) .if ${__T} != "powerpc64" BROKEN_OPTIONS+=LOADER_KBOOT .endif # UBOOT is only for arm, and big-endian powerpc .if (${__T:Marm*} == "" && ${__T:Mpowerpc*} == "") || ${__T} == "powerpc64le" BROKEN_OPTIONS+=LOADER_UBOOT .endif # GELI and Lua in loader currently cause boot failures on powerpc. # Further debugging is required -- probably they are just broken on big # endian systems generically (they jump to null pointers or try to read # crazy high addresses, which is typical of endianness problems). .if ${__T:Mpowerpc*} BROKEN_OPTIONS+=LOADER_GELI LOADER_LUA .endif # Kernel TLS is enabled by default on amd64 and aarch64 .if ${__T} == "aarch64" || ${__T} == "amd64" __DEFAULT_YES_OPTIONS+=OPENSSL_KTLS .else __DEFAULT_NO_OPTIONS+=OPENSSL_KTLS .endif .if ${__T} != "aarch64" && ${__T} != "amd64" && ${__T} != "i386" && \ ${__T} != "powerpc64" BROKEN_OPTIONS+=CXGBETOOL BROKEN_OPTIONS+=MLX5TOOL .endif # HyperV is currently x86-only .if ${__T} != "amd64" && ${__T} != "i386" BROKEN_OPTIONS+=HYPERV .endif # NVME is only aarch64, x86 and powerpc64* .if ${__T} != "aarch64" && ${__T} != "amd64" && ${__T} != "i386" && \ ${__T:Mpowerpc64*} == "" BROKEN_OPTIONS+=NVME .endif .if ${__T} == "aarch64" || ${__T} == "amd64" || ${__T} == "i386" || \ ${__T:Mpowerpc64*} != "" || ${__T:Mriscv64*} != "" __DEFAULT_YES_OPTIONS+=OPENMP .else __DEFAULT_NO_OPTIONS+=OPENMP .endif .include # # Force some options off if their dependencies are off. # Order is somewhat important. # .if ${MK_CAPSICUM} == "no" MK_CASPER:= no .endif .if ${MK_SOURCELESS} == "no" MK_SOURCELESS_HOST:= no MK_SOURCELESS_UCODE:= no .endif .if ${MK_CDDL} == "no" MK_ZFS:= no MK_LOADER_ZFS:= no MK_CTF:= no .endif .if ${MK_CRYPT} == "no" MK_OPENSSL:= no MK_OPENSSH:= no MK_KERBEROS:= no MK_KERBEROS_SUPPORT:= no .endif .if ${MK_CXX} == "no" MK_CLANG:= no MK_GOOGLETEST:= no MK_OFED:= no MK_OPENMP:= no MK_PMC:= no MK_TESTS:= no .endif .if ${MK_DIALOG} == "no" MK_BSDINSTALL:= no .endif .if ${MK_MAIL} == "no" MK_MAILWRAPPER:= no MK_SENDMAIL:= no MK_DMAGENT:= no .endif .if ${MK_NETGRAPH} == "no" MK_ATM:= no MK_BLUETOOTH:= no .endif .if ${MK_NLS} == "no" MK_NLS_CATALOGS:= no .endif .if ${MK_OPENSSL} == "no" MK_DMAGENT:= no MK_OPENSSH:= no MK_OPENSSL_KTLS:= no MK_KERBEROS:= no MK_KERBEROS_SUPPORT:= no MK_LDNS:= no MK_PKGBOOTSTRAP:= no MK_ZFS:= no .endif .if ${MK_LDNS} == "no" MK_LDNS_UTILS:= no MK_UNBOUND:= no .endif .if ${MK_PF} == "no" MK_AUTHPF:= no .endif .if ${MK_OFED} == "no" MK_OFED_EXTRA:= no .endif .if ${MK_TESTS} == "no" MK_DTRACE_TESTS:= no .endif .if ${MK_TESTS_SUPPORT} == "no" MK_GOOGLETEST:= no .endif .if ${MK_ZONEINFO} == "no" MK_ZONEINFO_LEAPSECONDS_SUPPORT:= no .endif .if ${MK_CROSS_COMPILER} == "no" MK_CLANG_BOOTSTRAP:= no MK_ELFTOOLCHAIN_BOOTSTRAP:= no MK_LLD_BOOTSTRAP:= no .endif .if ${MK_TOOLCHAIN} == "no" MK_CLANG:= no MK_INCLUDES:= no MK_LLD:= no MK_LLDB:= no MK_LLVM_BINUTILS:= no .endif .if ${MK_CLANG} == "no" MK_CLANG_EXTRAS:= no MK_CLANG_FORMAT:= no MK_CLANG_FULL:= no MK_LLVM_COV:= no .endif .if ${MK_ASAN} == "yes" # In order to get sensible backtraces from ASAN we have to install # llvm-symbolizer as /usr/bin/addr2line instead of the elftoolchain version. MK_LLVM_BINUTILS:= yes .endif .if ${MK_LLVM_BINUTILS} == "yes" # MK_LLVM_CXXFILT is a subset of MK_LLVM_BINUTILS and should therefore be # enabled if MK_LLVM_BINUTILS is set. MK_LLVM_CXXFILT:= yes .endif .if ${MK_LOADER_VERIEXEC} == "no" MK_LOADER_VERIEXEC_PASS_MANIFEST := no .endif # # MK_* options whose default value depends on another option. # .for vv in \ GSSAPI/KERBEROS \ MAN_UTILS/MAN .if defined(WITH_${vv:H}) MK_${vv:H}:= yes .elif defined(WITHOUT_${vv:H}) MK_${vv:H}:= no .else MK_${vv:H}:= ${MK_${vv:T}} .endif .endfor # # Set defaults for the MK_*_SUPPORT variables. # .endif # !target(____)