55d5ffa75aff5df518c42f8f4441e587706d2c30
[WebKit-https.git] / Source / JavaScriptCore / wtf / CMakeLists.txt
1 SET(WTF_HEADERS
2     ASCIICType.h
3     AVLTree.h
4     Alignment.h
5     AlwaysInline.h
6     ArrayBuffer.cpp
7     ArrayBufferView.cpp
8     Assertions.h
9     Atomics.h
10     BitVector.h
11     Bitmap.h
12     BoundsCheckedPointer.h
13     BumpPointerAllocator.h
14     ByteArray.h
15     Compiler.h
16     Complex.h
17     CryptographicallyRandomNumber.h
18     CurrentTime.h
19     DateMath.h
20     DecimalNumber.h
21     Decoder.h
22     Deque.h
23     DisallowCType.h
24     DoublyLinkedList.h
25     DynamicAnnotations.h
26     Encoder.h
27     FastAllocBase.h
28     FastMalloc.h
29     FixedArray.h
30     Forward.h
31     GetPtr.h
32     HashCountedSet.h
33     HashFunctions.h
34     HashIterators.h
35     HashMap.h
36     HashSet.h
37     HashTable.h
38     HashTraits.h
39     HexNumber.h
40     ListHashSet.h
41     ListRefPtr.h
42     Locker.h
43     MD5.h
44     MainThread.h
45     MallocZoneSupport.h
46     MathExtras.h
47     MessageQueue.h
48     MetaAllocator.cpp
49     MetaAllocator.h
50     MetaAllocatorHandle.h
51     NonCopyingSort.h
52     ThreadRestrictionVerifier.h
53     Noncopyable.h
54     NotFound.h
55     NullPtr.h
56     OSAllocator.h
57     OSRandomSource.h
58     OwnArrayPtr.h
59     OwnPtr.h
60     OwnPtrCommon.h
61     PageAllocation.h
62     PageAllocationAligned.h
63     PageBlock.h
64     PageReservation.h
65     PassOwnArrayPtr.h
66     PassOwnPtr.h
67     PassRefPtr.h
68     PassTraits.h
69     ParallelJobs.h
70     ParallelJobsGeneric.h
71     ParallelJobsLibdispatch.h
72     ParallelJobsOpenMP.h
73     Platform.h
74     PossiblyNull.h
75     RandomNumber.h
76     RandomNumberSeed.h
77     RedBlackTree.h
78     RefCounted.h
79     RefCountedLeakCounter.h
80     RefPtr.h
81     RefPtrHashMap.h
82     RetainPtr.h
83     SegmentedVector.h
84     SHA1.h
85     StackBounds.h
86     StaticConstructors.h
87     StdLibExtras.h
88     StringExtras.h
89     StringHasher.h
90     TCPackedCache.h
91     TCPageMap.h
92     TCSpinLock.h
93     TCSystemAlloc.h
94     ThreadIdentifierDataPthreads.h
95     ThreadSafeRefCounted.h
96     ThreadSpecific.h
97     Threading.h
98     ThreadingPrimitives.h
99     TypeTraits.h
100     UnusedParam.h
101     VMTags.h
102     ValueCheck.h
103     Vector.h
104     VectorTraits.h
105     WTFThreadData.h
106     dtoa.h
107
108     dtoa/bignum-dtoa.h
109     dtoa/bignum.h
110     dtoa/cached-powers.h
111     dtoa/diy-fp.h
112     dtoa/double-conversion.h
113     dtoa/double.h
114     dtoa/fast-dtoa.h
115     dtoa/fixed-dtoa.h
116     dtoa/strtod.h
117     dtoa/utils.h
118
119     text/AtomicString.h
120     text/AtomicStringImpl.h
121     text/CString.h
122     text/StringBuffer.h
123     text/StringHash.h
124     text/StringImpl.h
125     text/WTFString.h
126
127     threads/BinarySemaphore.h
128
129     unicode/CharacterNames.h
130     unicode/Collator.h
131     unicode/UTF8.h
132     unicode/Unicode.h
133 )
134
135 SET(WTF_SOURCES
136     Assertions.cpp
137     BitVector.cpp
138     ByteArray.cpp
139     CryptographicallyRandomNumber.cpp
140     CurrentTime.cpp
141     DateMath.cpp
142     DecimalNumber.cpp
143     DynamicAnnotations.cpp
144     FastMalloc.cpp
145     HashTable.cpp
146     MainThread.cpp
147     MD5.cpp
148     OSRandomSource.cpp
149     PageAllocationAligned.cpp
150     PageBlock.cpp
151     ParallelJobsGeneric.cpp
152     RandomNumber.cpp
153     RefCountedLeakCounter.cpp
154     SHA1.cpp
155     StackBounds.cpp
156     StringExtras.cpp
157     Threading.cpp
158     TypeTraits.cpp
159     WTFThreadData.cpp
160     dtoa.cpp
161
162     dtoa/bignum-dtoa.cc
163     dtoa/bignum.cc
164     dtoa/cached-powers.cc
165     dtoa/diy-fp.cc
166     dtoa/double-conversion.cc
167     dtoa/fast-dtoa.cc
168     dtoa/fixed-dtoa.cc
169     dtoa/strtod.cc
170
171     text/AtomicString.cpp
172     text/CString.cpp
173     text/StringBuilder.cpp
174     text/StringImpl.cpp
175     text/StringStatics.cpp
176     text/WTFString.cpp
177
178     threads/BinarySemaphore.cpp
179
180     unicode/UTF8.cpp
181 )
182
183 SET(WTF_INCLUDE_DIRECTORIES
184     "${JAVASCRIPTCORE_DIR}"
185     "${JAVASCRIPTCORE_DIR}/wtf"
186     "${JAVASCRIPTCORE_DIR}/wtf/unicode"
187     "${JAVASCRIPTCORE_DIR}/wtf/dtoa"
188     "${JavaScriptCore_INCLUDE_DIRECTORIES}"
189 )
190
191 SET(WTF_LIBRARIES
192 )
193
194
195 IF (ENABLE_FAST_MALLOC)
196     LIST(APPEND WTF_SOURCES
197         TCSystemAlloc.cpp
198     )
199 ELSE ()
200     ADD_DEFINITIONS(-DUSE_SYSTEM_MALLOC=1)
201 ENDIF()
202
203
204 SET(WTF_PORT_FLAGS )
205 INCLUDE_IF_EXISTS(${JAVASCRIPTCORE_DIR}/wtf/Platform${PORT}.cmake)
206
207 LIST(APPEND WTF_INCLUDE_DIRECTORIES
208     "${CMAKE_BINARY_DIR}"
209     "${CMAKE_SOURCE_DIR}/Source/ThirdParty"
210 )
211
212 WEBKIT_WRAP_SOURCELIST(${WTF_SOURCES})
213 INCLUDE_DIRECTORIES(${WTF_INCLUDE_DIRECTORIES})
214 ADD_DEFINITIONS(-DBUILDING_WTF)
215 ADD_LIBRARY(${WTF_LIBRARY_NAME} ${WTF_LIBRARY_TYPE} ${WTF_HEADERS} ${WTF_SOURCES})
216 TARGET_LINK_LIBRARIES(${WTF_LIBRARY_NAME} ${WTF_LIBRARIES})
217
218 IF (WTF_LINK_FLAGS)
219     ADD_TARGET_PROPERTIES(${WTF_LIBRARY_NAME} LINK_FLAGS "${WTF_LINK_FLAGS}")
220 ENDIF ()
221
222 IF (SHARED_CORE)
223     SET_TARGET_PROPERTIES(${WTF_LIBRARY_NAME} PROPERTIES VERSION ${PROJECT_VERSION} SOVERSION ${PROJECT_VERSION_MAJOR})
224     INSTALL(TARGETS ${WTF_LIBRARY_NAME} DESTINATION lib)
225 ENDIF ()