46cf7caed71f49a9378dffa6d4e36b37cb5dca44
[WebKit-https.git] / Source / WTF / WTF.pro
1 # -------------------------------------------------------------------
2 # Project file for WTF
3 #
4 # See 'Tools/qmake/README' for an overview of the build system
5 # -------------------------------------------------------------------
6 TEMPLATE = lib
7 TARGET = WTF
8
9 include(WTF.pri)
10
11 CONFIG += staticlib
12
13 VPATH += $$PWD/wtf
14
15 HEADERS += \
16     Alignment.h \
17     AlwaysInline.h \
18     ArrayBuffer.h \
19     ArrayBufferView.h \
20     ASCIICType.h \
21     Assertions.h \
22     Atomics.h \
23     AVLTree.h \
24     Bitmap.h \
25     BitArray.h \
26     BitVector.h \
27     BloomFilter.h \
28     BoundsCheckedPointer.h \
29     BumpPointerAllocator.h \
30     CheckedArithmetic.h \
31     Compiler.h \
32     CryptographicallyRandomNumber.h \
33     CurrentTime.h \
34     DateMath.h \
35     DecimalNumber.h \
36     Decoder.h \
37     DataLog.h \ 
38     Deque.h \
39     DisallowCType.h \
40     dtoa.h \
41     dtoa/bignum-dtoa.h \
42     dtoa/bignum.h \
43     dtoa/cached-powers.h \
44     dtoa/diy-fp.h \
45     dtoa/double-conversion.h \
46     dtoa/double.h \
47     dtoa/fast-dtoa.h \
48     dtoa/fixed-dtoa.h \
49     dtoa/strtod.h \
50     dtoa/utils.h \
51     DynamicAnnotations.h \
52     Encoder.h \
53     FastAllocBase.h \
54     FastMalloc.h \
55     FixedArray.h \
56     Float32Array.h \
57     Float64Array.h \
58     Forward.h \
59     Functional.h \
60     GetPtr.h \
61     HashCountedSet.h \
62     HashFunctions.h \
63     HashIterators.h \
64     HashMap.h \
65     HashSet.h \
66     HashTable.h \
67     HashTraits.h \
68     HexNumber.h \
69     Int16Array.h \
70     Int32Array.h \
71     Int8Array.h \
72     ListHashSet.h \
73     ListRefPtr.h \
74     Locker.h \
75     MainThread.h \
76     MallocZoneSupport.h \
77     MathExtras.h \
78     MD5.h \
79     MessageQueue.h \
80     MetaAllocator.h \
81     MetaAllocatorHandle.h \
82     Noncopyable.h \
83     NonCopyingSort.h \
84     NotFound.h \
85     NullPtr.h \
86     NumberOfCores.h \
87     OSAllocator.h \
88     OSRandomSource.h \
89     OwnArrayPtr.h \
90     OwnPtr.h \
91     OwnPtrCommon.h \
92     PackedIntVector.h \
93     PageAllocation.h \
94     PageAllocationAligned.h \
95     PageBlock.h \
96     PageReservation.h \
97     ParallelJobs.h \
98     ParallelJobsGeneric.h \
99     ParallelJobsLibdispatch.h \
100     ParallelJobsOpenMP.h \
101     PassOwnArrayPtr.h \
102     PassOwnPtr.h \
103     PassRefPtr.h \
104     PassTraits.h \
105     Platform.h \
106     PossiblyNull.h \
107     qt/UtilsQt.h \
108     RandomNumber.h \
109     RandomNumberSeed.h \
110     RedBlackTree.h \
111     RefCounted.h \
112     RefCountedLeakCounter.h \
113     RefPtr.h \
114     RefPtrHashMap.h \
115     RetainPtr.h \
116     SHA1.h \
117     Spectrum.h \
118     StackBounds.h \
119     StaticConstructors.h \
120     StdLibExtras.h \
121     StringExtras.h \
122     StringHasher.h \
123     TCPackedCache.h \
124     TCSpinLock.h \
125     TCSystemAlloc.h \
126     text/ASCIIFastPath.h \
127     text/AtomicString.h \
128     text/AtomicStringHash.h \
129     text/AtomicStringImpl.h \
130     text/CString.h \
131     text/StringBuffer.h \
132     text/StringBuilder.h \
133     text/StringConcatenate.h \
134     text/StringHash.h \
135     text/StringImpl.h \
136     text/StringOperators.h \
137     text/TextPosition.h \
138     text/WTFString.h \
139     Threading.h \
140     ThreadingPrimitives.h \
141     ThreadRestrictionVerifier.h \
142     ThreadSafeRefCounted.h \
143     ThreadSpecific.h \
144     TypeTraits.h \
145     Uint16Array.h \
146     Uint32Array.h \
147     Uint8Array.h \
148     Uint8ClampedArray.h \
149     unicode/CharacterNames.h \
150     unicode/Collator.h \
151     unicode/icu/UnicodeIcu.h \
152     unicode/qt4/UnicodeQt4.h \
153     unicode/ScriptCodesFromICU.h \
154     unicode/Unicode.h \
155     unicode/UnicodeMacrosFromICU.h \
156     unicode/UTF8.h \
157     UnusedParam.h \
158     ValueCheck.h \
159     Vector.h \
160     VectorTraits.h \
161     VMTags.h \
162     WTFThreadData.h
163
164 unix: HEADERS += ThreadIdentifierDataPthreads.h
165
166 SOURCES += \
167     ArrayBuffer.cpp \
168     ArrayBufferView.cpp \
169     Assertions.cpp \
170     BitVector.cpp \
171     CryptographicallyRandomNumber.cpp \
172     CurrentTime.cpp \
173     DateMath.cpp \
174     DataLog.cpp \
175     DecimalNumber.cpp \
176     dtoa.cpp \
177     dtoa/bignum-dtoa.cc \
178     dtoa/bignum.cc \
179     dtoa/cached-powers.cc \
180     dtoa/diy-fp.cc \
181     dtoa/double-conversion.cc \
182     dtoa/fast-dtoa.cc \
183     dtoa/fixed-dtoa.cc \
184     dtoa/strtod.cc \
185     FastMalloc.cpp \
186     gobject/GOwnPtr.cpp \
187     gobject/GRefPtr.cpp \
188     HashTable.cpp \
189     MD5.cpp \
190     MainThread.cpp \
191     MetaAllocator.cpp \
192     NullPtr.cpp \
193     NumberOfCores.cpp \
194     OSRandomSource.cpp \
195     qt/MainThreadQt.cpp \
196     qt/StringQt.cpp \
197     PageAllocationAligned.cpp \
198     PageBlock.cpp \
199     ParallelJobsGeneric.cpp \
200     RandomNumber.cpp \
201     RefCountedLeakCounter.cpp \
202     SHA1.cpp \
203     StackBounds.cpp \
204     TCSystemAlloc.cpp \
205     Threading.cpp \
206     TypeTraits.cpp \
207     WTFThreadData.cpp \
208     text/AtomicString.cpp \
209     text/CString.cpp \
210     text/StringBuilder.cpp \
211     text/StringImpl.cpp \
212     text/StringStatics.cpp \
213     text/WTFString.cpp \
214     unicode/CollatorDefault.cpp \
215     unicode/icu/CollatorICU.cpp \
216     unicode/UTF8.cpp
217
218 unix: SOURCES += \
219     OSAllocatorPosix.cpp \
220     ThreadIdentifierDataPthreads.cpp \
221     ThreadingPthreads.cpp
222
223 win*|wince*: SOURCES += \
224     win/OwnPtrWin.cpp \
225     OSAllocatorWin.cpp \
226     ThreadSpecificWin.cpp \
227     ThreadingWin.cpp
228
229
230 QT += core
231 QT -= gui
232
233 *-g++*:QMAKE_CXXFLAGS_RELEASE -= -O2
234 *-g++*:QMAKE_CXXFLAGS_RELEASE += -O3
235
236 *sh4* {
237     QMAKE_CXXFLAGS += -mieee -w
238     QMAKE_CFLAGS   += -mieee -w
239 }
240
241 lessThan(QT_GCC_MAJOR_VERSION, 5) {
242     # GCC 4.5 and before
243     lessThan(QT_GCC_MINOR_VERSION, 6) {
244         # Disable C++0x mode in JSC for those who enabled it in their Qt's mkspec.
245         *-g++*:QMAKE_CXXFLAGS -= -std=c++0x -std=gnu++0x
246     }
247
248     # GCC 4.6 and after.
249     greaterThan(QT_GCC_MINOR_VERSION, 5) {
250         if (!contains(QMAKE_CXXFLAGS, -std=c++0x) && !contains(QMAKE_CXXFLAGS, -std=gnu++0x)) {
251             # We need to deactivate those warnings because some names conflicts with upcoming c++0x types (e.g.nullptr).
252             QMAKE_CFLAGS_WARN_ON += -Wno-c++0x-compat
253             QMAKE_CXXFLAGS_WARN_ON += -Wno-c++0x-compat
254             QMAKE_CFLAGS += -Wno-c++0x-compat
255             QMAKE_CXXFLAGS += -Wno-c++0x-compat
256         }
257     }
258 }
259