189 lines
4.7 KiB
Plaintext
189 lines
4.7 KiB
Plaintext
static_library("Support") {
|
|
output_name = "LLVMSupport"
|
|
deps = [
|
|
"//llvm/include/llvm/Config:config",
|
|
"//llvm/lib/Demangle",
|
|
"//llvm/utils/gn/build/libs/pthread",
|
|
"//llvm/utils/gn/build/libs/terminfo",
|
|
"//llvm/utils/gn/build/libs/zlib",
|
|
]
|
|
|
|
# public_deps are used for depending on targets that generate headers
|
|
# which are included in public headers of this target. public_deps means
|
|
# that targets depending on Support will implicitly be built only after
|
|
# abi-breaking and llvm-config have been built.
|
|
public_deps = [
|
|
# abi-breaking.h is also include by public headers in ADT, but ADT has
|
|
# no target in the gn build. Since everything depends on Support, this
|
|
# public_dep does double duty of abi-breaking.h uses in public headers of
|
|
# both Support and ADT.
|
|
"//llvm/include/llvm/Config:abi-breaking",
|
|
"//llvm/include/llvm/Config:llvm-config",
|
|
|
|
# public_dep because public header TargetSelect.h includes these .def files.
|
|
"//llvm/include/llvm/Config:write_target_def_files",
|
|
|
|
# public_dep because random targets assume its output exists.
|
|
"//llvm/include/llvm/Support:write_extension_def",
|
|
]
|
|
include_dirs = [
|
|
"Unix",
|
|
"Windows",
|
|
]
|
|
sources = [
|
|
"AArch64TargetParser.cpp",
|
|
"ABIBreak.cpp",
|
|
"AMDGPUMetadata.cpp",
|
|
"APFixedPoint.cpp",
|
|
"APFloat.cpp",
|
|
"APInt.cpp",
|
|
"APSInt.cpp",
|
|
"ARMAttributeParser.cpp",
|
|
"ARMBuildAttrs.cpp",
|
|
"ARMTargetParser.cpp",
|
|
"ARMWinEH.cpp",
|
|
"Allocator.cpp",
|
|
"BinaryStreamError.cpp",
|
|
"BinaryStreamReader.cpp",
|
|
"BinaryStreamRef.cpp",
|
|
"BinaryStreamWriter.cpp",
|
|
"BlockFrequency.cpp",
|
|
"BranchProbability.cpp",
|
|
"BuryPointer.cpp",
|
|
"COM.cpp",
|
|
"CRC.cpp",
|
|
"CachePruning.cpp",
|
|
"Chrono.cpp",
|
|
"CodeGenCoverage.cpp",
|
|
"CommandLine.cpp",
|
|
"Compression.cpp",
|
|
"ConvertUTF.cpp",
|
|
"ConvertUTFWrapper.cpp",
|
|
"CrashRecoveryContext.cpp",
|
|
"DAGDeltaAlgorithm.cpp",
|
|
"DJB.cpp",
|
|
"DataExtractor.cpp",
|
|
"Debug.cpp",
|
|
"DebugCounter.cpp",
|
|
"DeltaAlgorithm.cpp",
|
|
"ELFAttributeParser.cpp",
|
|
"ELFAttributes.cpp",
|
|
"Error.cpp",
|
|
"ErrorHandling.cpp",
|
|
"ExtensibleRTTI.cpp",
|
|
"FileCollector.cpp",
|
|
"FileOutputBuffer.cpp",
|
|
"FileUtilities.cpp",
|
|
"FoldingSet.cpp",
|
|
"FormatVariadic.cpp",
|
|
"FormattedStream.cpp",
|
|
"GlobPattern.cpp",
|
|
"GraphWriter.cpp",
|
|
"Hashing.cpp",
|
|
"InitLLVM.cpp",
|
|
"InstructionCost.cpp",
|
|
"IntEqClasses.cpp",
|
|
"IntervalMap.cpp",
|
|
"ItaniumManglingCanonicalizer.cpp",
|
|
"JSON.cpp",
|
|
"KnownBits.cpp",
|
|
"LEB128.cpp",
|
|
"LineIterator.cpp",
|
|
"Locale.cpp",
|
|
"LockFileManager.cpp",
|
|
"LowLevelType.cpp",
|
|
"MD5.cpp",
|
|
"ManagedStatic.cpp",
|
|
"MathExtras.cpp",
|
|
"MemAlloc.cpp",
|
|
"MemoryBuffer.cpp",
|
|
"MemoryBufferRef.cpp",
|
|
"NativeFormatting.cpp",
|
|
"OptimizedStructLayout.cpp",
|
|
"Optional.cpp",
|
|
"Parallel.cpp",
|
|
"PluginLoader.cpp",
|
|
"PrettyStackTrace.cpp",
|
|
"RISCVAttributeParser.cpp",
|
|
"RISCVAttributes.cpp",
|
|
"RWMutex.cpp",
|
|
"RandomNumberGenerator.cpp",
|
|
"Regex.cpp",
|
|
"SHA1.cpp",
|
|
"ScaledNumber.cpp",
|
|
"ScopedPrinter.cpp",
|
|
"Signposts.cpp",
|
|
"SmallPtrSet.cpp",
|
|
"SmallVector.cpp",
|
|
"SourceMgr.cpp",
|
|
"SpecialCaseList.cpp",
|
|
"Statistic.cpp",
|
|
"StringExtras.cpp",
|
|
"StringMap.cpp",
|
|
"StringRef.cpp",
|
|
"StringSaver.cpp",
|
|
"SuffixTree.cpp",
|
|
"SymbolRemappingReader.cpp",
|
|
"SystemUtils.cpp",
|
|
"TarWriter.cpp",
|
|
"TargetParser.cpp",
|
|
"ThreadPool.cpp",
|
|
"TimeProfiler.cpp",
|
|
"Timer.cpp",
|
|
"ToolOutputFile.cpp",
|
|
"TrigramIndex.cpp",
|
|
"Triple.cpp",
|
|
"Twine.cpp",
|
|
"Unicode.cpp",
|
|
"UnicodeCaseFold.cpp",
|
|
"VersionTuple.cpp",
|
|
"WithColor.cpp",
|
|
"X86TargetParser.cpp",
|
|
"YAMLParser.cpp",
|
|
"YAMLTraits.cpp",
|
|
"Z3Solver.cpp",
|
|
"circular_raw_ostream.cpp",
|
|
"raw_os_ostream.cpp",
|
|
"raw_ostream.cpp",
|
|
"regcomp.c",
|
|
"regerror.c",
|
|
"regexec.c",
|
|
"regfree.c",
|
|
"regstrlcpy.c",
|
|
"xxhash.cpp",
|
|
|
|
# System
|
|
"Atomic.cpp",
|
|
"DynamicLibrary.cpp",
|
|
"Errno.cpp",
|
|
"Host.cpp",
|
|
"Memory.cpp",
|
|
"Path.cpp",
|
|
"Process.cpp",
|
|
"Program.cpp",
|
|
"Signals.cpp",
|
|
"TargetRegistry.cpp",
|
|
"ThreadLocal.cpp",
|
|
"Threading.cpp",
|
|
"Valgrind.cpp",
|
|
"VirtualFileSystem.cpp",
|
|
"Watchdog.cpp",
|
|
]
|
|
|
|
libs = []
|
|
|
|
# FIXME: llvm/Config/BUILD.gn currently always sets LLVM_WITH_Z3
|
|
# to false. If that changes we need to link to Z3 libs here.
|
|
|
|
if (current_os == "linux" || current_os == "android") {
|
|
libs += [ "dl" ]
|
|
} else if (current_os == "win") {
|
|
# Delay load shell32.dll if possible to speed up process startup.
|
|
libs += [ "delayimp.lib" ]
|
|
ldflags = [
|
|
"-delayload:ole32.dll",
|
|
"-delayload:shell32.dll",
|
|
]
|
|
}
|
|
}
|