1set(system_libs) 2if( MSVC OR MINGW ) 3 # libuuid required for FOLDERID_Profile usage in lib/Support/Windows/Path.inc. 4 set(system_libs ${system_libs} psapi shell32 ole32 uuid) 5elseif( CMAKE_HOST_UNIX ) 6 if( HAVE_LIBRT ) 7 set(system_libs ${system_libs} rt) 8 endif() 9 if( HAVE_LIBDL ) 10 set(system_libs ${system_libs} ${CMAKE_DL_LIBS}) 11 endif() 12 if(LLVM_ENABLE_TERMINFO) 13 if(HAVE_TERMINFO) 14 set(system_libs ${system_libs} ${TERMINFO_LIBS}) 15 endif() 16 endif() 17 if( LLVM_ENABLE_THREADS AND HAVE_LIBATOMIC ) 18 set(system_libs ${system_libs} atomic) 19 endif() 20 set(system_libs ${system_libs} ${PTHREAD_LIB}) 21 if ( LLVM_ENABLE_ZLIB AND HAVE_LIBZ ) 22 set(system_libs ${system_libs} z) 23 endif() 24 if( UNIX AND NOT (BEOS OR HAIKU) ) 25 set(system_libs ${system_libs} m) 26 endif() 27endif( MSVC OR MINGW ) 28 29add_llvm_library(LLVMSupport 30 APFloat.cpp 31 APInt.cpp 32 APSInt.cpp 33 ARMBuildAttrs.cpp 34 ARMWinEH.cpp 35 Allocator.cpp 36 BlockFrequency.cpp 37 BranchProbability.cpp 38 CachePruning.cpp 39 circular_raw_ostream.cpp 40 COM.cpp 41 CommandLine.cpp 42 Compression.cpp 43 ConvertUTF.c 44 ConvertUTFWrapper.cpp 45 CrashRecoveryContext.cpp 46 DataExtractor.cpp 47 DataStream.cpp 48 Debug.cpp 49 DeltaAlgorithm.cpp 50 DAGDeltaAlgorithm.cpp 51 Dwarf.cpp 52 Error.cpp 53 ErrorHandling.cpp 54 FileUtilities.cpp 55 FileOutputBuffer.cpp 56 FoldingSet.cpp 57 FormattedStream.cpp 58 GraphWriter.cpp 59 Hashing.cpp 60 IntEqClasses.cpp 61 IntervalMap.cpp 62 IntrusiveRefCntPtr.cpp 63 JamCRC.cpp 64 LEB128.cpp 65 LineIterator.cpp 66 Locale.cpp 67 LockFileManager.cpp 68 ManagedStatic.cpp 69 MathExtras.cpp 70 MemoryBuffer.cpp 71 MemoryObject.cpp 72 MD5.cpp 73 Options.cpp 74 PluginLoader.cpp 75 PrettyStackTrace.cpp 76 RandomNumberGenerator.cpp 77 Regex.cpp 78 ScaledNumber.cpp 79 ScopedPrinter.cpp 80 SHA1.cpp 81 SmallPtrSet.cpp 82 SmallVector.cpp 83 SourceMgr.cpp 84 SpecialCaseList.cpp 85 Statistic.cpp 86 StreamingMemoryObject.cpp 87 StringExtras.cpp 88 StringMap.cpp 89 StringPool.cpp 90 StringSaver.cpp 91 StringRef.cpp 92 SystemUtils.cpp 93 TargetParser.cpp 94 ThreadPool.cpp 95 Timer.cpp 96 ToolOutputFile.cpp 97 Triple.cpp 98 Twine.cpp 99 Unicode.cpp 100 YAMLParser.cpp 101 YAMLTraits.cpp 102 raw_os_ostream.cpp 103 raw_ostream.cpp 104 regcomp.c 105 regerror.c 106 regexec.c 107 regfree.c 108 regstrlcpy.c 109 110# System 111 Atomic.cpp 112 DynamicLibrary.cpp 113 Errno.cpp 114 Host.cpp 115 Memory.cpp 116 Mutex.cpp 117 Path.cpp 118 Process.cpp 119 Program.cpp 120 RWMutex.cpp 121 SearchForAddressOfSpecialSymbol.cpp 122 Signals.cpp 123 TargetRegistry.cpp 124 ThreadLocal.cpp 125 Threading.cpp 126 TimeValue.cpp 127 Valgrind.cpp 128 Watchdog.cpp 129 130 ADDITIONAL_HEADER_DIRS 131 Unix 132 Windows 133 ${LLVM_MAIN_INCLUDE_DIR}/llvm/Support 134 135 LINK_LIBS ${system_libs} 136 ) 137 138set_property(TARGET LLVMSupport PROPERTY LLVM_SYSTEM_LIBS "${system_libs}") 139