[CMake] LLVMSupport: Give system_libs PRIVATE scope when LLVMSupport is built as...
[oota-llvm.git] / lib / Support / CMakeLists.txt
1 set(system_libs)
2 if( NOT MSVC )
3   if( MINGW )
4     set(system_libs ${system_libs} imagehlp psapi shell32)
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   CommandLine.cpp
41   Compression.cpp
42   ConvertUTF.c
43   ConvertUTFWrapper.cpp
44   CrashRecoveryContext.cpp
45   DataExtractor.cpp
46   DataStream.cpp
47   Debug.cpp
48   DeltaAlgorithm.cpp
49   DAGDeltaAlgorithm.cpp
50   Dwarf.cpp
51   ErrorHandling.cpp
52   FileUtilities.cpp
53   FileOutputBuffer.cpp
54   FoldingSet.cpp
55   FormattedStream.cpp
56   GraphWriter.cpp
57   Hashing.cpp
58   IntEqClasses.cpp
59   IntervalMap.cpp
60   IntrusiveRefCntPtr.cpp
61   IsInf.cpp
62   IsNAN.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   StreamableMemoryObject.cpp
84   StringExtras.cpp
85   StringMap.cpp
86   StringPool.cpp
87   StringRef.cpp
88   StringRefMemoryObject.cpp
89   SystemUtils.cpp
90   Timer.cpp
91   ToolOutputFile.cpp
92   Triple.cpp
93   Twine.cpp
94   Unicode.cpp
95   YAMLParser.cpp
96   YAMLTraits.cpp
97   raw_os_ostream.cpp
98   raw_ostream.cpp
99   regcomp.c
100   regerror.c
101   regexec.c
102   regfree.c
103   regstrlcpy.c
104
105 # System
106   Atomic.cpp
107   DynamicLibrary.cpp
108   Errno.cpp
109   Host.cpp
110   Memory.cpp
111   Mutex.cpp
112   Path.cpp
113   Process.cpp
114   Program.cpp
115   RWMutex.cpp
116   SearchForAddressOfSpecialSymbol.cpp
117   Signals.cpp
118   TargetRegistry.cpp
119   ThreadLocal.cpp
120   Threading.cpp
121   TimeValue.cpp
122   Valgrind.cpp
123   Watchdog.cpp
124
125   ADDITIONAL_HEADERS
126   Unix/Host.inc
127   Unix/Memory.inc
128   Unix/Mutex.inc
129   Unix/Path.inc
130   Unix/Process.inc
131   Unix/Program.inc
132   Unix/RWMutex.inc
133   Unix/Signals.inc
134   Unix/ThreadLocal.inc
135   Unix/TimeValue.inc
136   Unix/Watchdog.inc
137   Windows/DynamicLibrary.inc
138   Windows/Host.inc
139   Windows/Memory.inc
140   Windows/Mutex.inc
141   Windows/Path.inc
142   Windows/Process.inc
143   Windows/Program.inc
144   Windows/RWMutex.inc
145   Windows/Signals.inc
146   Windows/ThreadLocal.inc
147   Windows/TimeValue.inc
148   Windows/Watchdog.inc
149
150   LINK_LIBS ${system_libs}
151   )
152
153 set_property(TARGET LLVMSupport PROPERTY LLVM_SYSTEM_LIBS "${system_libs}")