blob: eeef51f8c477f75aef72a532a166d1d66af526ad [file] [log] [blame]
set(WTF_PUBLIC_HEADERS
ASCIICType.h
Algorithms.h
Assertions.h
Atomics.h
AutodrainedPool.h
AutomaticThread.h
BackwardsGraph.h
Bag.h
BagToHashMap.h
BitVector.h
Bitmap.h
BlockObjCExceptions.h
BlockPtr.h
BlockStack.h
BloomFilter.h
Box.h
Brigand.h
BubbleSort.h
BumpPointerAllocator.h
ByteOrder.h
CPUTime.h
CagedPtr.h
CagedUniquePtr.h
CallbackAggregator.h
CheckedArithmetic.h
CheckedBoolean.h
ClockType.h
CommaPrinter.h
CompilationThread.h
Compiler.h
CompletionHandler.h
ConcurrentBuffer.h
ConcurrentPtrHashSet.h
ConcurrentVector.h
Condition.h
CountingLock.h
CrossThreadCopier.h
CrossThreadQueue.h
CrossThreadTask.h
CrossThreadTaskHandler.h
CryptographicUtilities.h
CryptographicallyRandomNumber.h
DataLog.h
DateMath.h
DebugUtilities.h
DecimalNumber.h
DeferrableRefCounted.h
DeprecatedOptional.h
Deque.h
DisallowCType.h
DispatchPtr.h
Dominators.h
DoublyLinkedList.h
DumbPtrTraits.h
DumbValueTraits.h
EnumTraits.h
Expected.h
ExportMacros.h
FastBitVector.h
FastMalloc.h
FastTLS.h
FeatureDefines.h
FilePrintStream.h
FlipBytes.h
ForbidHeapAllocation.h
Forward.h
Function.h
FunctionDispatcher.h
FunctionTraits.h
GetPtr.h
Gigacage.h
GlobalVersion.h
GraphNodeWorklist.h
GregorianDateTime.h
HashCountedSet.h
HashFunctions.h
HashIterators.h
HashMap.h
HashMethod.h
HashSet.h
HashTable.h
HashTraits.h
Hasher.h
HexNumber.h
Identified.h
Indenter.h
IndexKeyType.h
IndexMap.h
IndexSet.h
IndexSparseSet.h
IndexedContainerIterator.h
InlineASM.h
Insertion.h
InstanceCounted.h
IsoMalloc.h
IsoMallocInlines.h
IteratorAdaptors.h
IteratorRange.h
JSONValues.h
JSValueMalloc.h
KeyValuePair.h
LEBDecoder.h
Language.h
ListDump.h
ListHashSet.h
Liveness.h
Lock.h
LockAlgorithm.h
LockAlgorithmInlines.h
LockedPrintStream.h
Locker.h
LocklessBag.h
Logger.h
LoggerHelper.h
LoggingAccumulator.h
LoggingHashID.h
LoggingHashMap.h
LoggingHashSet.h
LoggingHashTraits.h
MD5.h
MachSendRight.h
MainThread.h
MallocPtr.h
MathExtras.h
MediaTime.h
MemoryFootprint.h
MemoryPressureHandler.h
MessageQueue.h
MetaAllocator.h
MetaAllocatorHandle.h
MonotonicTime.h
NakedPtr.h
NaturalLoops.h
NeverDestroyed.h
NoLock.h
NoTailCalls.h
Noncopyable.h
NotFound.h
NumberOfCores.h
OSAllocator.h
OSObjectPtr.h
OSRandomSource.h
ObjcRuntimeExtras.h
ObjectIdentifier.h
OptionSet.h
Optional.h
OrderMaker.h
PackedIntVector.h
PageAllocation.h
PageBlock.h
PageReservation.h
ParallelHelperPool.h
ParallelJobs.h
ParallelJobsGeneric.h
ParallelJobsLibdispatch.h
ParallelJobsOpenMP.h
ParallelVectorIterator.h
ParkingLot.h
Platform.h
PlatformRegisters.h
PointerComparison.h
PointerPreparations.h
Poisoned.h
PoisonedUniquePtr.h
PrintStream.h
PriorityQueue.h
ProcessID.h
ProcessPrivilege.h
PtrTag.h
RAMSize.h
RandomDevice.h
RandomNumber.h
RandomNumberSeed.h
Range.h
RangeSet.h
RawPointer.h
ReadWriteLock.h
RecursableLambda.h
RecursiveLockAdapter.h
RedBlackTree.h
Ref.h
RefCounted.h
RefCountedArray.h
RefCountedLeakCounter.h
RefCounter.h
RefPtr.h
RetainPtr.h
RunLoop.h
RunLoopTimer.h
SHA1.h
SaturatedArithmetic.h
SchedulePair.h
Scope.h
ScopedLambda.h
Seconds.h
SegmentedVector.h
SentinelLinkedList.h
SetForScope.h
SharedTask.h
SimpleStats.h
SingleRootGraph.h
SinglyLinkedList.h
SinglyLinkedListWithTail.h
SixCharacterHash.h
SmallPtrSet.h
SoftLinking.h
Spectrum.h
StackBounds.h
StackShot.h
StackShotProfiler.h
StackStats.h
StackTrace.h
StdLibExtras.h
StdList.h
StdMap.h
StdSet.h
StdUnorderedMap.h
StdUnorderedSet.h
Stopwatch.h
StreamBuffer.h
StringExtras.h
StringHashDumpContext.h
StringPrintStream.h
SynchronizedFixedQueue.h
SystemFree.h
SystemTracing.h
ThreadGroup.h
ThreadMessage.h
ThreadSafeRefCounted.h
ThreadSpecific.h
Threading.h
ThreadingPrimitives.h
TimeWithDynamicClockType.h
TimingScope.h
TinyLRUCache.h
TinyPtrSet.h
TriState.h
TypeCasts.h
UUID.h
Unexpected.h
UniStdExtras.h
UnionFind.h
UniqueArray.h
UniqueRef.h
UnsafePointer.h
VMTags.h
ValueCheck.h
Variant.h
Vector.h
VectorTraits.h
WallTime.h
WeakPtr.h
WeakRandom.h
WindowsExtras.h
WordLock.h
WorkQueue.h
dtoa.h
dtoa/bignum-dtoa.h
dtoa/bignum.h
dtoa/cached-powers.h
dtoa/diy-fp.h
dtoa/double-conversion.h
dtoa/double.h
dtoa/fast-dtoa.h
dtoa/fixed-dtoa.h
dtoa/strtod.h
dtoa/utils.h
persistence/PersistentCoder.h
persistence/PersistentCoders.h
persistence/PersistentDecoder.h
persistence/PersistentEncoder.h
text/ASCIIFastPath.h
text/AtomicString.h
text/AtomicStringHash.h
text/AtomicStringImpl.h
text/AtomicStringTable.h
text/Base64.h
text/CString.h
text/ConversionMode.h
text/IntegerToStringConversion.h
text/LChar.h
text/LineBreakIteratorPoolICU.h
text/LineEnding.h
text/NullTextBreakIterator.h
text/OrdinalNumber.h
text/StringBuffer.h
text/StringBuilder.h
text/StringCommon.h
text/StringConcatenate.h
text/StringConcatenateNumbers.h
text/StringHash.h
text/StringHasher.h
text/StringImpl.h
text/StringMalloc.h
text/StringOperators.h
text/StringVector.h
text/StringView.h
text/SymbolImpl.h
text/SymbolRegistry.h
text/TextBreakIterator.h
text/TextBreakIteratorInternalICU.h
text/TextPosition.h
text/TextStream.h
text/UniquedStringImpl.h
text/ValueToString.h
text/WTFString.h
text/icu/TextBreakIteratorICU.h
text/icu/UTextProvider.h
text/icu/UTextProviderLatin1.h
text/icu/UTextProviderUTF16.h
threads/BinarySemaphore.h
threads/Signals.h
unicode/CharacterNames.h
unicode/Collator.h
unicode/UTF8.h
)
set(WTF_SOURCES
Assertions.cpp
AutomaticThread.cpp
BitVector.cpp
CPUTime.cpp
ClockType.cpp
CompilationThread.cpp
ConcurrentPtrHashSet.cpp
CountingLock.cpp
CrossThreadCopier.cpp
CrossThreadTaskHandler.cpp
CryptographicUtilities.cpp
CryptographicallyRandomNumber.cpp
CurrentTime.cpp
DataLog.cpp
DateMath.cpp
DecimalNumber.cpp
FastBitVector.cpp
FastMalloc.cpp
FilePrintStream.cpp
FunctionDispatcher.cpp
Gigacage.cpp
GlobalVersion.cpp
GregorianDateTime.cpp
HashTable.cpp
JSONValues.cpp
JSValueMalloc.cpp
Language.cpp
Lock.cpp
LockedPrintStream.cpp
MD5.cpp
MainThread.cpp
MediaTime.cpp
MemoryPressureHandler.cpp
MetaAllocator.cpp
MonotonicTime.cpp
NumberOfCores.cpp
OSRandomSource.cpp
PageBlock.cpp
ParallelHelperPool.cpp
ParallelJobsGeneric.cpp
ParkingLot.cpp
Poisoned.cpp
PrintStream.cpp
ProcessPrivilege.cpp
RAMSize.cpp
RandomDevice.cpp
RandomNumber.cpp
ReadWriteLock.cpp
RefCountedLeakCounter.cpp
RunLoop.cpp
SHA1.cpp
Seconds.cpp
SixCharacterHash.cpp
StackBounds.cpp
StackStats.cpp
StackTrace.cpp
StringPrintStream.cpp
ThreadGroup.cpp
ThreadMessage.cpp
Threading.cpp
TimeWithDynamicClockType.cpp
TimingScope.cpp
UUID.cpp
WTFAssertions.cpp
WallTime.cpp
WordLock.cpp
WorkQueue.cpp
dtoa.cpp
dtoa/bignum-dtoa.cc
dtoa/bignum.cc
dtoa/cached-powers.cc
dtoa/diy-fp.cc
dtoa/double-conversion.cc
dtoa/fast-dtoa.cc
dtoa/fixed-dtoa.cc
dtoa/strtod.cc
persistence/PersistentCoders.cpp
persistence/PersistentDecoder.cpp
persistence/PersistentEncoder.cpp
text/AtomicString.cpp
text/AtomicStringImpl.cpp
text/AtomicStringTable.cpp
text/Base64.cpp
text/CString.cpp
text/LineEnding.cpp
text/StringBuilder.cpp
text/StringBuilderJSON.cpp
text/StringImpl.cpp
text/StringMalloc.cpp
text/StringView.cpp
text/SymbolImpl.cpp
text/SymbolRegistry.cpp
text/TextBreakIterator.cpp
text/TextStream.cpp
text/WTFString.cpp
text/icu/UTextProvider.cpp
text/icu/UTextProviderLatin1.cpp
text/icu/UTextProviderUTF16.cpp
threads/BinarySemaphore.cpp
threads/Signals.cpp
unicode/UTF8.cpp
)
set(WTF_INCLUDE_DIRECTORIES
"${BMALLOC_DIR}"
"${CMAKE_BINARY_DIR}"
"${DERIVED_SOURCES_DIR}"
"${THIRDPARTY_DIR}"
)
set(WTF_PRIVATE_INCLUDE_DIRECTORIES
"${WTF_DIR}"
"${WTF_DIR}/wtf"
"${WTF_DIR}/wtf/dtoa"
"${WTF_DIR}/wtf/persistence"
"${WTF_DIR}/wtf/text"
"${WTF_DIR}/wtf/text/icu"
"${WTF_DIR}/wtf/threads"
"${WTF_DIR}/wtf/unicode"
)
set(WTF_LIBRARIES
${CMAKE_DL_LIBS}
)
if (CMAKE_SYSTEM_NAME MATCHES "Darwin")
list(APPEND WTF_PUBLIC_HEADERS
spi/darwin/CommonCryptoSPI.h
)
list(APPEND WTF_PRIVATE_INCLUDE_DIRECTORIES
"${WTF_DIR}/wtf/spi/darwin"
)
endif ()
if (NOT USE_SYSTEM_MALLOC)
list(APPEND WTF_LIBRARIES bmalloc)
endif ()
list(APPEND WTF_SOURCES
unicode/CollatorDefault.cpp
unicode/icu/CollatorICU.cpp
)
set(WTF_SYSTEM_INCLUDE_DIRECTORIES
${ICU_INCLUDE_DIRS}
)
list(APPEND WTF_LIBRARIES
${ICU_DATA_LIBRARIES}
${ICU_I18N_LIBRARIES}
${ICU_LIBRARIES}
)
if (WIN32)
list(APPEND WTF_SOURCES
OSAllocatorWin.cpp
ThreadSpecificWin.cpp
ThreadingWin.cpp
)
list(APPEND WTF_LIBRARIES
winmm
)
else ()
list(APPEND WTF_SOURCES
OSAllocatorPosix.cpp
ThreadingPthreads.cpp
)
endif ()
WEBKIT_FRAMEWORK_DECLARE(WTF)
WEBKIT_INCLUDE_CONFIG_FILES_IF_EXISTS()
WEBKIT_WRAP_SOURCELIST(${WTF_SOURCES})
WEBKIT_FRAMEWORK(WTF)
WEBKIT_MAKE_FORWARDING_HEADERS(WTF
DESTINATION ${FORWARDING_HEADERS_DIR}/wtf
FILES ${WTF_PUBLIC_HEADERS}
)
if (MSVC)
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /SUBSYSTEM:WINDOWS")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /SUBSYSTEM:WINDOWS")
add_custom_command(
TARGET WTF
PRE_BUILD
COMMAND ${PERL_EXECUTABLE} ${WEBKIT_LIBRARIES_DIR}/tools/scripts/auto-version.pl ${DERIVED_SOURCES_DIR}
VERBATIM)
add_custom_command(
TARGET WTF
POST_BUILD
COMMAND ${PERL_EXECUTABLE} ${WEBKIT_LIBRARIES_DIR}/tools/scripts/version-stamp.pl ${DERIVED_SOURCES_DIR} $<TARGET_FILE:WTF>
VERBATIM)
endif ()
file(MAKE_DIRECTORY ${FORWARDING_HEADERS_DIR}/wtf/Scripts)
file(COPY
../Scripts/generate-unified-source-bundles.rb
DESTINATION
${FORWARDING_HEADERS_DIR}/wtf/Scripts
)