0db4055f71136697ef07840a334252772ff8da5f
[oota-llvm.git] / lib / Support / CMakeLists.txt
1 set(system_libs)
2 if( NOT MSVC )
3   if( MINGW )
4     set(system_libs ${system_libs} psapi shell32 ole32)
5   elseif( 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     if( LLVM_ENABLE_THREADS AND HAVE_LIBPTHREAD )
21       set(system_libs ${system_libs} pthread)
22     endif()
23     if ( LLVM_ENABLE_ZLIB AND HAVE_LIBZ )
24       set(system_libs ${system_libs} z)
25     endif()
26     set(system_libs ${system_libs} m)
27   endif( MINGW )
28 endif( NOT MSVC )
29
30 add_llvm_library(LLVMSupport
31   APFloat.cpp
32   APInt.cpp
33   APSInt.cpp
34   ARMBuildAttrs.cpp
35   ARMWinEH.cpp
36   Allocator.cpp
37   BlockFrequency.cpp
38   BranchProbability.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   ErrorHandling.cpp
53   FileUtilities.cpp
54   FileOutputBuffer.cpp
55   FoldingSet.cpp
56   FormattedStream.cpp
57   GraphWriter.cpp
58   Hashing.cpp
59   IntEqClasses.cpp
60   IntervalMap.cpp
61   IntrusiveRefCntPtr.cpp
62   JamCRC.cpp
63   LEB128.cpp
64   LineIterator.cpp
65   Locale.cpp
66   LockFileManager.cpp
67   ManagedStatic.cpp
68   MathExtras.cpp
69   MemoryBuffer.cpp
70   MemoryObject.cpp
71   MD5.cpp
72   Options.cpp
73   PluginLoader.cpp
74   PrettyStackTrace.cpp
75   RandomNumberGenerator.cpp
76   Regex.cpp
77   ScaledNumber.cpp
78   SmallPtrSet.cpp
79   SmallVector.cpp
80   SourceMgr.cpp
81   SpecialCaseList.cpp
82   Statistic.cpp
83   StreamingMemoryObject.cpp
84   StringExtras.cpp
85   StringMap.cpp
86   StringPool.cpp
87   StringSaver.cpp
88   StringRef.cpp
89   SystemUtils.cpp
90   TargetParser.cpp
91   TargetTuple.cpp
92   Timer.cpp
93   ToolOutputFile.cpp
94   Triple.cpp
95   Twine.cpp
96   Unicode.cpp
97   YAMLParser.cpp
98   YAMLTraits.cpp
99   raw_os_ostream.cpp
100   raw_ostream.cpp
101   regcomp.c
102   regerror.c
103   regexec.c
104   regfree.c
105   regstrlcpy.c
106
107 # System
108   Atomic.cpp
109   DynamicLibrary.cpp
110   Errno.cpp
111   Host.cpp
112   Memory.cpp
113   Mutex.cpp
114   Path.cpp
115   Process.cpp
116   Program.cpp
117   RWMutex.cpp
118   SearchForAddressOfSpecialSymbol.cpp
119   Signals.cpp
120   TargetRegistry.cpp
121   ThreadLocal.cpp
122   Threading.cpp
123   TimeValue.cpp
124   Valgrind.cpp
125   Watchdog.cpp
126
127   ADDITIONAL_HEADER_DIRS
128   Unix
129   Windows
130   ${LLVM_MAIN_INCLUDE_DIR}/llvm/Support
131
132   LINK_LIBS ${system_libs}
133   )
134
135 set_property(TARGET LLVMSupport PROPERTY LLVM_SYSTEM_LIBS "${system_libs}")