| OLD | NEW |
| (Empty) |
| 1 # Copyright 2013 The Chromium Authors. All rights reserved. | |
| 2 # Use of this source code is governed by a BSD-style license that can be | |
| 3 # found in the LICENSE file. | |
| 4 | |
| 5 config("wtf-config") { | |
| 6 include_dirs = [ ".." ] | |
| 7 if (is_win) { | |
| 8 include_dirs += [ "os-win32" ] | |
| 9 defines = [ | |
| 10 "__STD_C", | |
| 11 "_CRT_SECURE_NO_DEPRECATE", | |
| 12 "_SCL_SECURE_NO_DEPRECATE", | |
| 13 "CRASH=__debugbreak", | |
| 14 ] | |
| 15 # # Chromium windows multi-dll build enables c++ exception and this | |
| 16 # # causes wtf generates 4291 warning due to operator new/delete | |
| 17 # # implementations. Disable the warning for chromium windows | |
| 18 # # multi-dll build. | |
| 19 # 'msvs_disabled_warnings': [4291], | |
| 20 # 'direct_dependent_settings': { | |
| 21 # 'msvs_disabled_warnings': [4291], | |
| 22 # }, | |
| 23 } | |
| 24 | |
| 25 if (is_linux) { # (gcc_version >= 46) { | |
| 26 # Disable warnings about c++0x compatibility, as some names (such as | |
| 27 # nullptr) conflict with upcoming c++0x types. | |
| 28 cflags_cc = [ "-Wno-c++0x-compat" ] | |
| 29 } | |
| 30 | |
| 31 # # Some warnings occur in WTF headers, so they must also be disabled | |
| 32 # # in targets that use WTF. | |
| 33 # 'msvs_disabled_warnings': [ | |
| 34 # # Don't complain about calling specific versions of templatized | |
| 35 # # functions (e.g. in RefPtrHashMap.h). | |
| 36 # 4344, | |
| 37 # # Don't complain about using "this" in an initializer list | |
| 38 # # (e.g. in StringImpl.h). | |
| 39 # 4355, | |
| 40 # # Disable c4267 warnings until we fix size_t to int truncations. | |
| 41 # 4267, | |
| 42 # ], | |
| 43 | |
| 44 } | |
| 45 | |
| 46 component("wtf") { | |
| 47 sources = [ | |
| 48 "ASCIICType.h", | |
| 49 "Alignment.h", | |
| 50 "ArrayBuffer.cpp", | |
| 51 "ArrayBuffer.h", | |
| 52 "ArrayBufferContents.cpp", | |
| 53 "ArrayBufferContents.h", | |
| 54 "ArrayBufferDeallocationObserver.h", | |
| 55 "ArrayBufferView.cpp", | |
| 56 "ArrayBufferView.h", | |
| 57 "Assertions.cpp", | |
| 58 "Assertions.h", | |
| 59 "Atomics.h", | |
| 60 "AutodrainedPool.h", | |
| 61 "BitArray.h", | |
| 62 "BitVector.cpp", | |
| 63 "BitVector.h", | |
| 64 "BloomFilter.h", | |
| 65 "ByteOrder.h", | |
| 66 "CPU.h", | |
| 67 "CheckedArithmetic.h", | |
| 68 "Compiler.h", | |
| 69 "Complex.h", | |
| 70 "CryptographicallyRandomNumber.cpp", | |
| 71 "CryptographicallyRandomNumber.h", | |
| 72 "CurrentTime.cpp", | |
| 73 "CurrentTime.h", | |
| 74 "DataLog.cpp", | |
| 75 "DataLog.h", | |
| 76 "DateMath.cpp", | |
| 77 "DateMath.h", | |
| 78 "DecimalNumber.cpp", | |
| 79 "DecimalNumber.h", | |
| 80 "Deque.h", | |
| 81 "DoublyLinkedList.h", | |
| 82 "DynamicAnnotations.cpp", | |
| 83 "DynamicAnnotations.h", | |
| 84 "FastAllocBase.h", | |
| 85 "FastMalloc.cpp", | |
| 86 "FastMalloc.h", | |
| 87 "FilePrintStream.cpp", | |
| 88 "FilePrintStream.h", | |
| 89 "Float32Array.h", | |
| 90 "Float64Array.h", | |
| 91 "Forward.h", | |
| 92 "Functional.h", | |
| 93 "GetPtr.h", | |
| 94 "GregorianDateTime.cpp", | |
| 95 "GregorianDateTime.h", | |
| 96 "HashCountedSet.h", | |
| 97 "HashFunctions.h", | |
| 98 "HashIterators.h", | |
| 99 "HashMap.h", | |
| 100 "HashSet.h", | |
| 101 "HashTable.cpp", | |
| 102 "HashTable.h", | |
| 103 "HashTableDeletedValueType.h", | |
| 104 "HashTraits.h", | |
| 105 "HexNumber.h", | |
| 106 "Int16Array.h", | |
| 107 "Int32Array.h", | |
| 108 "Int8Array.h", | |
| 109 "IntegralTypedArrayBase.h", | |
| 110 "LeakAnnotations.h", | |
| 111 "LinkedStack.h", | |
| 112 "ListHashSet.h", | |
| 113 "Locker.h", | |
| 114 "MainThread.cpp", | |
| 115 "MainThread.h", | |
| 116 "MallocZoneSupport.h", | |
| 117 "MathExtras.h", | |
| 118 "MessageQueue.h", | |
| 119 "NonCopyingSort.h", | |
| 120 "Noncopyable.h", | |
| 121 "NotFound.h", | |
| 122 "NullPtr.cpp", | |
| 123 "NullPtr.h", | |
| 124 "NumberOfCores.cpp", | |
| 125 "NumberOfCores.h", | |
| 126 "OwnPtr.h", | |
| 127 "OwnPtrCommon.h", | |
| 128 "PageAllocator.cpp", | |
| 129 "PageAllocator.h", | |
| 130 "ParallelJobs.h", | |
| 131 "ParallelJobsLibdispatch.h", | |
| 132 "PartitionAlloc.cpp", | |
| 133 "PartitionAlloc.h", | |
| 134 "PassOwnPtr.h", | |
| 135 "PassRefPtr.h", | |
| 136 "PassTraits.h", | |
| 137 "PrintStream.cpp", | |
| 138 "PrintStream.h", | |
| 139 "ProcessID.h", | |
| 140 "QuantizedAllocation.cpp", | |
| 141 "QuantizedAllocation.h", | |
| 142 "RefCounted.h", | |
| 143 "RefCountedLeakCounter.cpp", | |
| 144 "RefCountedLeakCounter.h", | |
| 145 "RefPtr.h", | |
| 146 "RefPtrHashMap.h", | |
| 147 "RetainPtr.h", | |
| 148 "SHA1.cpp", | |
| 149 "SHA1.h", | |
| 150 "SaturatedArithmetic.h", | |
| 151 "SizeLimits.cpp", | |
| 152 "SpinLock.h", | |
| 153 "StaticConstructors.h", | |
| 154 "StdLibExtras.h", | |
| 155 "StringExtras.h", | |
| 156 "StringHasher.h", | |
| 157 "TemporaryChange.h", | |
| 158 "ThreadFunctionInvocation.h", | |
| 159 "ThreadRestrictionVerifier.h", | |
| 160 "ThreadSafeRefCounted.h", | |
| 161 "ThreadSpecific.h", | |
| 162 "Threading.cpp", | |
| 163 "Threading.h", | |
| 164 "ThreadingPrimitives.h", | |
| 165 "TypeTraits.cpp", | |
| 166 "TypeTraits.h", | |
| 167 "TypedArrayBase.h", | |
| 168 "Uint16Array.h", | |
| 169 "Uint32Array.h", | |
| 170 "Uint8Array.h", | |
| 171 "UnusedParam.h", | |
| 172 "VMTags.h", | |
| 173 "Vector.h", | |
| 174 "VectorTraits.h", | |
| 175 "WTF.cpp", | |
| 176 "WTF.h", | |
| 177 "WTFExport.h", | |
| 178 "WTFThreadData.cpp", | |
| 179 "WTFThreadData.h", | |
| 180 "WeakPtr.h", | |
| 181 "dtoa.cpp", | |
| 182 "dtoa.h", | |
| 183 "dtoa/bignum-dtoa.cc", | |
| 184 "dtoa/bignum-dtoa.h", | |
| 185 "dtoa/bignum.cc", | |
| 186 "dtoa/bignum.h", | |
| 187 "dtoa/cached-powers.cc", | |
| 188 "dtoa/cached-powers.h", | |
| 189 "dtoa/diy-fp.cc", | |
| 190 "dtoa/diy-fp.h", | |
| 191 "dtoa/double-conversion.cc", | |
| 192 "dtoa/double-conversion.h", | |
| 193 "dtoa/double.h", | |
| 194 "dtoa/fast-dtoa.cc", | |
| 195 "dtoa/fast-dtoa.h", | |
| 196 "dtoa/fixed-dtoa.cc", | |
| 197 "dtoa/fixed-dtoa.h", | |
| 198 "dtoa/strtod.cc", | |
| 199 "dtoa/strtod.h", | |
| 200 "dtoa/utils.h", | |
| 201 "text/ASCIIFastPath.h", | |
| 202 "text/AtomicString.cpp", | |
| 203 "text/AtomicString.h", | |
| 204 "text/AtomicStringHash.h", | |
| 205 "text/Base64.cpp", | |
| 206 "text/Base64.h", | |
| 207 "text/CString.cpp", | |
| 208 "text/CString.h", | |
| 209 "text/IntegerToStringConversion.h", | |
| 210 "text/StringBuffer.h", | |
| 211 "text/StringBuilder.cpp", | |
| 212 "text/StringBuilder.h", | |
| 213 "text/StringConcatenate.h", | |
| 214 "text/StringHash.h", | |
| 215 "text/StringImpl.cpp", | |
| 216 "text/StringImpl.h", | |
| 217 "text/StringOperators.h", | |
| 218 "text/StringStatics.cpp", | |
| 219 "text/StringUTF8Adaptor.h", | |
| 220 "text/StringView.h", | |
| 221 "text/TextCodec.cpp", | |
| 222 "text/TextCodecASCIIFastPath.h", | |
| 223 "text/TextCodecICU.cpp", | |
| 224 "text/TextCodecLatin1.cpp", | |
| 225 "text/TextCodecUTF16.cpp", | |
| 226 "text/TextCodecUTF8.cpp", | |
| 227 "text/TextCodecUTF8.h", | |
| 228 "text/TextCodecUserDefined.cpp", | |
| 229 "text/TextEncoding.cpp", | |
| 230 "text/TextEncodingRegistry.cpp", | |
| 231 "text/TextPosition.cpp", | |
| 232 "text/TextPosition.h", | |
| 233 "text/WTFString.cpp", | |
| 234 "text/WTFString.h", | |
| 235 "unicode/CharacterNames.h", | |
| 236 "unicode/Collator.h", | |
| 237 "unicode/UTF8.cpp", | |
| 238 "unicode/UTF8.h", | |
| 239 "unicode/Unicode.h", | |
| 240 "unicode/icu/CollatorICU.cpp", | |
| 241 "unicode/icu/UnicodeIcu.h", | |
| 242 ] | |
| 243 | |
| 244 configs -= [ "//build/config/compiler:chromium_code" ] | |
| 245 configs += [ | |
| 246 "//build/config/compiler:no_chromium_code", | |
| 247 ":wtf-config" | |
| 248 ] | |
| 249 | |
| 250 defines = [ "WTF_IMPLEMENTATION=1" ] | |
| 251 deps = [ | |
| 252 "//third_party/icu", | |
| 253 ] | |
| 254 | |
| 255 # # Disable c4267 warnings until we fix size_t to int truncations. | |
| 256 # 'msvs_disabled_warnings': [4127, 4355, 4510, 4512, 4610, 4706, 4068, 4267], | |
| 257 | |
| 258 ldflags = [] | |
| 259 if (is_android) { | |
| 260 ldflags += [ "-llog" ] | |
| 261 } | |
| 262 | |
| 263 if (is_mac) { | |
| 264 # 'link_settings': { | |
| 265 # 'libraries': [ | |
| 266 # '$(SDKROOT)/System/Library/Frameworks/CoreFoundation.framework', | |
| 267 # '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', | |
| 268 # ] | |
| 269 # } | |
| 270 sources += [ | |
| 271 # mac is the only OS that uses WebKit's copy of TCMalloc. | |
| 272 "TCPackedCache.h", | |
| 273 "TCPageMap.h", | |
| 274 "TCSpinLock.h", | |
| 275 "TCSystemAlloc.cpp", | |
| 276 "TCSystemAlloc.h", | |
| 277 | |
| 278 "AutodrainedPoolMac.mm", | |
| 279 "text/AtomicStringCF.cpp", | |
| 280 "text/StringCF.cpp", | |
| 281 "text/StringImplCF.cpp", | |
| 282 "text/StringImplMac.mm", | |
| 283 "text/StringMac.mm", | |
| 284 ] | |
| 285 } | |
| 286 | |
| 287 if (is_win) { | |
| 288 sources += [ | |
| 289 "ThreadSpecificWin.cpp", | |
| 290 "ThreadingWin.cpp", | |
| 291 ] | |
| 292 # include_dirs -= [ | |
| 293 # "<(SHARED_INTERMEDIATE_DIR)/blink', | |
| 294 # ] | |
| 295 } else { | |
| 296 sources += [ | |
| 297 "ThreadIdentifierDataPthreads.cpp", | |
| 298 "ThreadIdentifierDataPthreads.h", | |
| 299 "ThreadingPthreads.cpp", | |
| 300 ] | |
| 301 } | |
| 302 } | |
| 303 | |
| 304 static_library("run_all_tests") { | |
| 305 sources = [ "testing/RunAllTests.cpp" ] | |
| 306 | |
| 307 configs -= [ "//build/config/compiler:chromium_code" ] | |
| 308 configs += [ | |
| 309 "//build/config/compiler:no_chromium_code", | |
| 310 ":wtf-config", | |
| 311 ] | |
| 312 | |
| 313 deps = [ | |
| 314 "//base/test:test_support", | |
| 315 "//testing/gmock", | |
| 316 "//testing/gtest", | |
| 317 ":wtf", | |
| 318 ] | |
| 319 | |
| 320 direct_dependent_configs = [ "//testing/gtest:gtest_config" ] | |
| 321 } | |
| 322 | |
| 323 executable("wtf_unittests") { | |
| 324 sources = [ | |
| 325 "CheckedArithmeticTest.cpp", | |
| 326 "FunctionalTest.cpp", | |
| 327 "HashMapTest.cpp", | |
| 328 "HashSetTest.cpp", | |
| 329 "ListHashSetTest.cpp", | |
| 330 "MathExtrasTest.cpp", | |
| 331 "PartitionAllocTest.cpp", | |
| 332 "SHA1Test.cpp", | |
| 333 "SaturatedArithmeticTest.cpp", | |
| 334 "StringExtrasTest.cpp", | |
| 335 "StringHasherTest.cpp", | |
| 336 "TemporaryChangeTest.cpp", | |
| 337 "VectorTest.cpp", | |
| 338 "testing/WTFTestHelpers.h", | |
| 339 "text/CStringTest.cpp", | |
| 340 "text/StringBuilderTest.cpp", | |
| 341 "text/StringImplTest.cpp", | |
| 342 "text/StringOperatorsTest.cpp", | |
| 343 "text/WTFStringTest.cpp", | |
| 344 ] | |
| 345 | |
| 346 configs -= [ "//build/config/compiler:chromium_code" ] | |
| 347 configs += [ | |
| 348 "//build/config/compiler:no_chromium_code", | |
| 349 "//third_party/icu:icu_config", | |
| 350 ":wtf-config", | |
| 351 ] | |
| 352 | |
| 353 deps = [ ":run_all_tests" ] | |
| 354 | |
| 355 # # Disable c4267 warnings until we fix size_t to int truncations. | |
| 356 # 'msvs_disabled_warnings': [4127, 4355, 4510, 4512, 4610, 4706, 4068, 4267], | |
| 357 | |
| 358 # if (is_linux && use_tcmalloc) { | |
| 359 # deps += [ | |
| 360 # "//base:base", | |
| 361 # "//base/allocator:allocator", | |
| 362 # ], | |
| 363 # } | |
| 364 } | |
| OLD | NEW |