37b8263f61cbdc012382c6e545140ca95affd51a
[WebKit-https.git] / Source / WTF / wtf / CMakeLists.txt
1 set(WTF_HEADERS
2     ASCIICType.h
3     AVLTree.h
4     Alignment.h
5     Assertions.h
6     Atomics.h
7     BitArray.h
8     BitVector.h
9     Bitmap.h
10     BoundsCheckedPointer.h
11     BumpPointerAllocator.h
12     ByteOrder.h
13     Compiler.h
14     CryptographicallyRandomNumber.h
15     CurrentTime.h
16     DateMath.h
17     DataLog.h
18     DecimalNumber.h
19     Decoder.h
20     Deque.h
21     DisallowCType.h
22     DoublyLinkedList.h
23     DynamicAnnotations.h
24     Encoder.h
25     FastAllocBase.h
26     FastMalloc.h
27     FeatureDefines.h
28     FilePrintStream.h
29     FixedArray.h
30     Forward.h
31     FunctionDispatcher.h
32     Functional.h
33     GetPtr.h
34     GregorianDateTime.h
35     HashCountedSet.h
36     HashFunctions.h
37     HashIterators.h
38     HashMap.h
39     HashSet.h
40     HashTable.h
41     HashTraits.h
42     HexNumber.h
43     ListHashSet.h
44     Locker.h
45     MD5.h
46     MainThread.h
47     MathExtras.h
48     MediaTime.h
49     MessageQueue.h
50     MetaAllocator.h
51     MetaAllocatorHandle.h
52     NonCopyingSort.h
53     ThreadRestrictionVerifier.h
54     Noncopyable.h
55     NotFound.h
56     NullPtr.h
57     NumberOfCores.h
58     RAMSize.h
59     OSAllocator.h
60     OSRandomSource.h
61     OwnArrayPtr.h
62     OwnPtr.h
63     OwnPtrCommon.h
64     PageAllocation.h
65     PageAllocationAligned.h
66     PageBlock.h
67     PageReservation.h
68     PassOwnArrayPtr.h
69     PassOwnPtr.h
70     PassRefPtr.h
71     PassTraits.h
72     ParallelJobs.h
73     ParallelJobsGeneric.h
74     ParallelJobsLibdispatch.h
75     ParallelJobsOpenMP.h
76     Platform.h
77     PossiblyNull.h
78     PrintStream.h
79     ProcessID.h
80     RandomNumber.h
81     RandomNumberSeed.h
82     RawPointer.h
83     RedBlackTree.h
84     RefCounted.h
85     RefCountedLeakCounter.h
86     RefPtr.h
87     RefPtrHashMap.h
88     RetainPtr.h
89     SaturatedArithmetic.h
90     SegmentedVector.h
91     SHA1.h
92     StackBounds.h
93     StaticConstructors.h
94     StdLibExtras.h
95     StringExtras.h
96     StringHasher.h
97     StringPrintStream.h
98     TCPackedCache.h
99     TCPageMap.h
100     TCSpinLock.h
101     TCSystemAlloc.h
102     ThreadIdentifierDataPthreads.h
103     ThreadSafeRefCounted.h
104     ThreadSpecific.h
105     Threading.h
106     ThreadingPrimitives.h
107     TypeTraits.h
108     VMTags.h
109     ValueCheck.h
110     Vector.h
111     VectorTraits.h
112     WTFThreadData.h
113     WeakPtr.h
114     dtoa.h
115
116     dtoa/bignum-dtoa.h
117     dtoa/bignum.h
118     dtoa/cached-powers.h
119     dtoa/diy-fp.h
120     dtoa/double-conversion.h
121     dtoa/double.h
122     dtoa/fast-dtoa.h
123     dtoa/fixed-dtoa.h
124     dtoa/strtod.h
125     dtoa/utils.h
126
127     text/AtomicString.h
128     text/AtomicStringImpl.h
129     text/Base64.h
130     text/CString.h
131     text/IntegerToStringConversion.h
132     text/StringBuffer.h
133     text/StringHash.h
134     text/StringImpl.h
135     text/WTFString.h
136
137     threads/BinarySemaphore.h
138
139     unicode/CharacterNames.h
140     unicode/Collator.h
141     unicode/UTF8.h
142     unicode/Unicode.h
143 )
144
145 set(WTF_SOURCES
146     ArrayBuffer.cpp
147     ArrayBufferView.cpp
148     Assertions.cpp
149     Atomics.cpp
150     BitVector.cpp
151     CryptographicallyRandomNumber.cpp
152     CurrentTime.cpp
153     DateMath.cpp
154     DataLog.cpp
155     DecimalNumber.cpp
156     DynamicAnnotations.cpp
157     FastMalloc.cpp
158     FilePrintStream.cpp
159     FunctionDispatcher.cpp
160     GregorianDateTime.cpp
161     HashTable.cpp
162     MD5.cpp
163     MainThread.cpp
164     MediaTime.cpp
165     MetaAllocator.cpp
166     NullPtr.cpp
167     OSRandomSource.cpp
168     NumberOfCores.cpp
169     RAMSize.cpp
170     PageAllocationAligned.cpp
171     PageBlock.cpp
172     ParallelJobsGeneric.cpp
173     PrintStream.cpp
174     RandomNumber.cpp
175     RefCountedLeakCounter.cpp
176     SHA1.cpp
177     StackBounds.cpp
178     StringPrintStream.cpp
179     TCSystemAlloc.cpp
180     Threading.cpp
181     TypeTraits.cpp
182     WTFThreadData.cpp
183     dtoa.cpp
184
185     dtoa/bignum-dtoa.cc
186     dtoa/bignum.cc
187     dtoa/cached-powers.cc
188     dtoa/diy-fp.cc
189     dtoa/double-conversion.cc
190     dtoa/fast-dtoa.cc
191     dtoa/fixed-dtoa.cc
192     dtoa/strtod.cc
193
194     text/AtomicString.cpp
195     text/Base64.cpp
196     text/CString.cpp
197     text/StringBuilder.cpp
198     text/StringImpl.cpp
199     text/StringStatics.cpp
200     text/WTFString.cpp
201
202     threads/BinarySemaphore.cpp
203
204     unicode/UTF8.cpp
205 )
206
207 set(WTF_INCLUDE_DIRECTORIES
208     "${WTF_DIR}"
209     "${WTF_DIR}/wtf"
210     "${WTF_DIR}/wtf/dtoa"
211     "${WTF_DIR}/wtf/threads"
212     "${WTF_DIR}/wtf/unicode"
213     "${THIRDPARTY_DIR}"
214     "${CMAKE_BINARY_DIR}"
215 )
216
217 set(APPEND WTF_LIBRARIES
218     ${CMAKE_DL_LIBS}
219 )
220
221 if (WTF_USE_ICU_UNICODE)
222     list(APPEND WTF_HEADERS
223         unicode/icu/UnicodeIcu.h
224     )
225     list(APPEND WTF_SOURCES
226         unicode/icu/CollatorICU.cpp
227     )
228     list(APPEND WTF_INCLUDE_DIRECTORIES
229         ${ICU_INCLUDE_DIRS}
230     )
231     list(APPEND WTF_LIBRARIES
232         ${ICU_I18N_LIBRARIES}
233         ${ICU_LIBRARIES}
234     )
235 elseif (WTF_USE_WCHAR_UNICODE)
236     list(APPEND WTF_HEADERS
237         unicode/wchar/UnicodeWchar.h
238     )
239     list(APPEND WTF_SOURCES
240         unicode/CollatorDefault.cpp
241         unicode/wchar/UnicodeWchar.cpp
242     )
243 endif ()
244
245 if (WIN32)
246     list(APPEND WTF_SOURCES
247         OSAllocatorWin.cpp
248         ThreadSpecificWin.cpp
249         ThreadingWin.cpp
250
251         win/OwnPtrWin.cpp
252     )
253 else ()
254     list(APPEND WTF_HEADERS
255         ThreadIdentifierDataPthreads.h
256     )
257     list(APPEND WTF_SOURCES
258         OSAllocatorPosix.cpp
259         ThreadIdentifierDataPthreads.cpp
260         ThreadingPthreads.cpp
261     )
262 endif ()
263
264 WEBKIT_INCLUDE_CONFIG_FILES_IF_EXISTS()
265
266 WEBKIT_WRAP_SOURCELIST(${WTF_SOURCES})
267 include_directories(${WTF_INCLUDE_DIRECTORIES})
268 add_definitions(-DBUILDING_WTF)
269 add_library(${WTF_LIBRARY_NAME} STATIC ${WTF_HEADERS} ${WTF_SOURCES})
270 target_link_libraries(${WTF_LIBRARY_NAME} ${WTF_LIBRARIES})
271 set_target_properties(${WTF_LIBRARY_NAME} PROPERTIES FOLDER "JavaScriptCore")