| OLD | NEW |
| 1 # Copyright 2017 The Chromium Authors. All rights reserved. | 1 # Copyright 2017 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 # The below is a temporary setup during the WTF migration project: | 5 # The below is a temporary setup during the WTF migration project: |
| 6 # https://groups.google.com/a/chromium.org/d/msg/blink-dev/tLdAZCTlcAA/bYXVT8gYC
AAJ | 6 # https://groups.google.com/a/chromium.org/d/msg/blink-dev/tLdAZCTlcAA/bYXVT8gYC
AAJ |
| 7 # | 7 # |
| 8 # We are moving wtf/ files to platform/wtf/ incrementally, thus, conceptually, | 8 # We are moving wtf/ files to platform/wtf/ incrementally, thus, conceptually, |
| 9 # the "wtf" target in wtf/BUILD.gn is being split into two, in a way that | 9 # the "wtf" target in wtf/BUILD.gn is being split into two, in a way that |
| 10 # only wtf/ can refer the contents in platform/wtf/. | 10 # only wtf/ can refer the contents in platform/wtf/. |
| 11 # | 11 # |
| 12 # To achieve this, we introduce a new target "platform_wtf" here, and configure | 12 # To achieve this, we introduce a new target "platform_wtf" here, and configure |
| 13 # it so the source files are compiled in the same way as the original "wtf" | 13 # it so the source files are compiled in the same way as the original "wtf" |
| 14 # target. This gn file should only be used from wtf/BUILD.gn, and this | 14 # target. This gn file should only be used from wtf/BUILD.gn, and this |
| 15 # restriction is enforced by the visibility rule below (but it's okay to | 15 # restriction is enforced by the visibility rule below (but it's okay to |
| 16 # #include a header in this directory from core/ or modules/). | 16 # #include a header in this directory from core/ or modules/). |
| 17 # | 17 # |
| 18 # The following configurations are mostly copied from wtf/BUILD.gn, so we | 18 # The following configurations are mostly copied from wtf/BUILD.gn, so we |
| 19 # can build the source files in the same way. | 19 # can build the source files in the same way. |
| 20 # | 20 # |
| 21 # When we finish moving all the files, "platform_wtf" target will take over | 21 # When we finish moving all the files, "platform_wtf" target will take over |
| 22 # the role of "wtf". | 22 # the role of "wtf". |
| 23 # |
| 24 # TODO(yutak): Set up platform_wtf_unittests in the similar manner. |
| 23 | 25 |
| 24 assert(!is_ios) | 26 assert(!is_ios) |
| 25 | 27 |
| 26 import("//testing/test.gni") | |
| 27 import("//third_party/WebKit/Source/config.gni") | 28 import("//third_party/WebKit/Source/config.gni") |
| 28 | 29 |
| 29 visibility = [ | 30 visibility = [ "//third_party/WebKit/Source/wtf/*" ] |
| 30 ":*", | |
| 31 "//third_party/WebKit/Source/wtf/*", | |
| 32 ] | |
| 33 | 31 |
| 34 config("wtf_config") { | 32 config("wtf_config") { |
| 35 if (is_win) { | 33 if (is_win) { |
| 36 defines = [ | 34 defines = [ |
| 37 "__STD_C", | 35 "__STD_C", |
| 38 "_CRT_SECURE_NO_DEPRECATE", | 36 "_CRT_SECURE_NO_DEPRECATE", |
| 39 "_SCL_SECURE_NO_DEPRECATE", | 37 "_SCL_SECURE_NO_DEPRECATE", |
| 40 ] | 38 ] |
| 41 include_dirs = [ "os-win32" ] | 39 include_dirs = [ "os-win32" ] |
| 42 | 40 |
| 43 cflags = [ | 41 cflags = [ |
| 44 # Don't complain about calling specific versions of templatized | 42 # Don't complain about calling specific versions of templatized |
| 45 # functions (e.g. in RefPtrHashMap.h). | 43 # functions (e.g. in RefPtrHashMap.h). |
| 46 "/wd4344", | 44 "/wd4344", |
| 47 | 45 |
| 48 # dtoa, icu, etc. like doing assignment within conditional. | 46 # dtoa, icu, etc. like doing assignment within conditional. |
| 49 "/wd4706", | 47 "/wd4706", |
| 50 ] | 48 ] |
| 51 | 49 |
| 52 if (is_component_build) { | 50 if (is_component_build) { |
| 53 # Chromium windows multi-dll build enables C++ exceptions and this causes | 51 # Chromium windows multi-dll build enables C++ exceptions and this causes |
| 54 # wtf to generate 4291 warning due to operator new/delete | 52 # wtf to generate 4291 warning due to operator new/delete |
| 55 # implementations. Disable the warning for chromium windows multi-dll | 53 # implementations. Disable the warning for chromium windows multi-dll |
| 56 # build. | 54 # build. |
| 57 cflags += [ "/wd4291" ] | 55 cflags += [ "/wd4291" ] |
| 58 } | 56 } |
| 59 } | 57 } |
| 60 } | 58 } |
| 61 | 59 |
| 62 component("platform_wtf") { | 60 source_set("platform_wtf") { |
| 63 sources = [ | 61 sources = [ |
| 64 "ASCIICType.cpp", | 62 "ASCIICType.cpp", |
| 65 "ASCIICType.h", | 63 "ASCIICType.h", |
| 66 "AddressSanitizer.h", | 64 "AddressSanitizer.h", |
| 67 "Alignment.h", | 65 "Alignment.h", |
| 68 "Allocator.h", | 66 "Allocator.h", |
| 69 "Assertions.cpp", | 67 "Assertions.cpp", |
| 70 "Assertions.h", | 68 "Assertions.h", |
| 71 "Atomics.h", | 69 "Atomics.h", |
| 72 "AutoReset.h", | 70 "AutoReset.h", |
| 73 "BitVector.cpp", | 71 "BitVector.cpp", |
| 74 "BitVector.h", | 72 "BitVector.h", |
| 75 "BitwiseOperations.h", | 73 "BitwiseOperations.h", |
| 76 "BloomFilter.h", | |
| 77 "ByteOrder.h", | |
| 78 "ByteSwap.h", | 74 "ByteSwap.h", |
| 79 "CPU.h", | 75 "CPU.h", |
| 80 "CheckedNumeric.h", | 76 "CheckedNumeric.h", |
| 81 "Compiler.h", | 77 "Compiler.h", |
| 82 "ConditionalDestructor.h", | 78 "ConditionalDestructor.h", |
| 83 "ContainerAnnotations.h", | 79 "ContainerAnnotations.h", |
| 84 "CryptographicallyRandomNumber.cpp", | 80 "CryptographicallyRandomNumber.cpp", |
| 85 "CryptographicallyRandomNumber.h", | 81 "CryptographicallyRandomNumber.h", |
| 86 "CurrentTime.cpp", | 82 "CurrentTime.cpp", |
| 87 "CurrentTime.h", | 83 "CurrentTime.h", |
| 88 "DataLog.cpp", | 84 "DataLog.cpp", |
| 89 "DataLog.h", | 85 "DataLog.h", |
| 90 "DateMath.cpp", | |
| 91 "DateMath.h", | |
| 92 "Deque.h", | 86 "Deque.h", |
| 93 "DoublyLinkedList.h", | 87 "DoublyLinkedList.h", |
| 94 "DynamicAnnotations.cpp", | 88 "DynamicAnnotations.cpp", |
| 95 "DynamicAnnotations.h", | 89 "DynamicAnnotations.h", |
| 96 "FilePrintStream.cpp", | |
| 97 "FilePrintStream.h", | 90 "FilePrintStream.h", |
| 98 "Forward.h", | 91 "Forward.h", |
| 99 "Functional.h", | 92 "Functional.h", |
| 100 "GetPtr.h", | 93 "GetPtr.h", |
| 101 "HashCountedSet.h", | 94 "HashCountedSet.h", |
| 102 "HashFunctions.h", | 95 "HashFunctions.h", |
| 103 "HashIterators.h", | 96 "HashIterators.h", |
| 104 "HashMap.h", | 97 "HashMap.h", |
| 105 "HashSet.h", | 98 "HashSet.h", |
| 106 "HashTable.cpp", | 99 "HashTable.cpp", |
| 107 "HashTable.h", | 100 "HashTable.h", |
| 108 "HashTableDeletedValueType.h", | 101 "HashTableDeletedValueType.h", |
| 109 "HashTraits.h", | 102 "HashTraits.h", |
| 110 "HexNumber.h", | 103 "HexNumber.h", |
| 111 "InstanceCounter.cpp", | |
| 112 "InstanceCounter.h", | 104 "InstanceCounter.h", |
| 113 "LeakAnnotations.h", | 105 "LeakAnnotations.h", |
| 114 "LinkedHashSet.h", | 106 "LinkedHashSet.h", |
| 115 "ListHashSet.h", | 107 "ListHashSet.h", |
| 116 "Locker.h", | 108 "Locker.h", |
| 117 "MathExtras.h", | 109 "MathExtras.h", |
| 118 "NonCopyingSort.h", | 110 "NonCopyingSort.h", |
| 119 "Noncopyable.h", | 111 "Noncopyable.h", |
| 120 "NotFound.h", | 112 "NotFound.h", |
| 121 "Optional.h", | 113 "Optional.h", |
| 122 "PassRefPtr.h", | 114 "PassRefPtr.h", |
| 123 "PrintStream.cpp", | |
| 124 "PrintStream.h", | 115 "PrintStream.h", |
| 125 "PtrUtil.h", | 116 "PtrUtil.h", |
| 126 "RefCounted.h", | 117 "RefCounted.h", |
| 127 "RefPtr.h", | 118 "RefPtr.h", |
| 128 "RefVector.h", | |
| 129 "RetainPtr.h", | 119 "RetainPtr.h", |
| 130 "SaturatedArithmetic.h", | |
| 131 "SizeAssertions.h", | 120 "SizeAssertions.h", |
| 132 "SizeLimits.cpp", | |
| 133 "SpinLock.h", | 121 "SpinLock.h", |
| 134 "StackUtil.cpp", | |
| 135 "StackUtil.h", | 122 "StackUtil.h", |
| 136 "StaticConstructors.h", | 123 "StaticConstructors.h", |
| 137 "StdLibExtras.h", | 124 "StdLibExtras.h", |
| 138 "StringExtras.h", | 125 "StringExtras.h", |
| 139 "StringHasher.h", | 126 "StringHasher.h", |
| 140 "TerminatedArray.h", | |
| 141 "TerminatedArrayBuilder.h", | |
| 142 "ThreadRestrictionVerifier.h", | 127 "ThreadRestrictionVerifier.h", |
| 143 "ThreadSafeRefCounted.h", | 128 "ThreadSafeRefCounted.h", |
| 144 "ThreadSpecific.h", | 129 "ThreadSpecific.h", |
| 145 "ThreadSpecificWin.cpp", | |
| 146 "Threading.h", | 130 "Threading.h", |
| 147 "ThreadingPrimitives.h", | 131 "ThreadingPrimitives.h", |
| 148 "ThreadingPthreads.cpp", | |
| 149 "ThreadingWin.cpp", | |
| 150 "Time.h", | 132 "Time.h", |
| 151 "TreeNode.h", | 133 "TreeNode.h", |
| 152 "TriState.h", | 134 "TriState.h", |
| 153 "TypeTraits.h", | 135 "TypeTraits.h", |
| 154 "Vector.h", | 136 "Vector.h", |
| 155 "VectorTraits.h", | 137 "VectorTraits.h", |
| 156 "WTF.cpp", | |
| 157 "WTF.h", | 138 "WTF.h", |
| 158 "WTFExport.h", | 139 "WTFExport.h", |
| 159 "WTFThreadData.cpp", | |
| 160 "WTFThreadData.h", | 140 "WTFThreadData.h", |
| 161 "WeakPtr.h", | 141 "WeakPtr.h", |
| 162 "allocator/PartitionAllocator.cpp", | 142 "allocator/PartitionAllocator.cpp", |
| 163 "allocator/PartitionAllocator.h", | 143 "allocator/PartitionAllocator.h", |
| 164 "allocator/Partitions.cpp", | 144 "allocator/Partitions.cpp", |
| 165 "allocator/Partitions.h", | 145 "allocator/Partitions.h", |
| 166 "build_config.h", | 146 "build_config.h", |
| 167 "debug/Alias.h", | |
| 168 "debug/CrashLogging.h", | |
| 169 "dtoa.cpp", | 147 "dtoa.cpp", |
| 170 "dtoa.h", | 148 "dtoa.h", |
| 171 "dtoa/bignum-dtoa.cc", | 149 "dtoa/bignum-dtoa.cc", |
| 172 "dtoa/bignum-dtoa.h", | 150 "dtoa/bignum-dtoa.h", |
| 173 "dtoa/bignum.cc", | 151 "dtoa/bignum.cc", |
| 174 "dtoa/bignum.h", | 152 "dtoa/bignum.h", |
| 175 "dtoa/cached-powers.cc", | 153 "dtoa/cached-powers.cc", |
| 176 "dtoa/cached-powers.h", | 154 "dtoa/cached-powers.h", |
| 177 "dtoa/diy-fp.cc", | 155 "dtoa/diy-fp.cc", |
| 178 "dtoa/diy-fp.h", | 156 "dtoa/diy-fp.h", |
| (...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 290 | 268 |
| 291 public_deps = [ | 269 public_deps = [ |
| 292 "//base", | 270 "//base", |
| 293 "//third_party/icu", | 271 "//third_party/icu", |
| 294 ] | 272 ] |
| 295 | 273 |
| 296 # Rules changing the |sources| list are temporarily commented out, until | 274 # Rules changing the |sources| list are temporarily commented out, until |
| 297 # those files are actually moved to here. | 275 # those files are actually moved to here. |
| 298 | 276 |
| 299 if (is_win) { | 277 if (is_win) { |
| 300 sources -= [ "ThreadingPthreads.cpp" ] | 278 # sources -= [ "ThreadingPthreads.cpp" ] |
| 301 | 279 |
| 302 cflags = [ "/wd4068" ] # Unknown pragma. | 280 cflags = [ "/wd4068" ] # Unknown pragma. |
| 303 } else { | 281 } else { |
| 304 # Non-Windows. | 282 # Non-Windows. |
| 305 sources -= [ | 283 # sources -= [ |
| 306 "ThreadSpecificWin.cpp", | 284 # "ThreadSpecificWin.cpp", |
| 307 "ThreadingWin.cpp", | 285 # "ThreadingWin.cpp", |
| 308 ] | 286 # ] |
| 309 } | 287 } |
| 310 | 288 |
| 311 if (is_android) { | 289 if (is_android) { |
| 312 libs = [ "log" ] | 290 libs = [ "log" ] |
| 313 } | 291 } |
| 314 if (is_linux) { | 292 if (is_linux) { |
| 315 libs = [ "dl" ] | 293 libs = [ "dl" ] |
| 316 } | 294 } |
| 317 | 295 |
| 318 if (is_mac) { | 296 if (is_mac) { |
| 319 libs = [ | 297 libs = [ |
| 320 "CoreFoundation.framework", | 298 "CoreFoundation.framework", |
| 321 "Foundation.framework", | 299 "Foundation.framework", |
| 322 ] | 300 ] |
| 323 } else { | 301 } else { |
| 324 sources -= [ | 302 sources -= [ |
| 325 "text/AtomicStringCF.cpp", | 303 "text/AtomicStringCF.cpp", |
| 326 "text/StringImplCF.cpp", | 304 "text/StringImplCF.cpp", |
| 327 ] | 305 ] |
| 328 } | 306 } |
| 329 | 307 |
| 330 if (remove_webcore_debug_symbols) { | 308 if (remove_webcore_debug_symbols) { |
| 331 configs -= [ "//build/config/compiler:default_symbols" ] | 309 configs -= [ "//build/config/compiler:default_symbols" ] |
| 332 configs += [ "//build/config/compiler:no_symbols" ] | 310 configs += [ "//build/config/compiler:no_symbols" ] |
| 333 } | 311 } |
| 334 } | 312 } |
| 335 | |
| 336 test("wtf_unittests") { | |
| 337 visibility = [] # Allow re-assignment of list. | |
| 338 visibility = [ "*" ] | |
| 339 | |
| 340 sources = [ | |
| 341 "ASCIICTypeTest.cpp", | |
| 342 "AssertionsTest.cpp", | |
| 343 "DequeTest.cpp", | |
| 344 "FunctionalTest.cpp", | |
| 345 "HashMapTest.cpp", | |
| 346 "HashSetTest.cpp", | |
| 347 "ListHashSetTest.cpp", | |
| 348 "MathExtrasTest.cpp", | |
| 349 "OptionalTest.cpp", | |
| 350 "PassRefPtrTest.cpp", | |
| 351 "RefPtrTest.cpp", | |
| 352 "StringExtrasTest.cpp", | |
| 353 "StringHasherTest.cpp", | |
| 354 "TimeTest.cpp", | |
| 355 "TreeNodeTest.cpp", | |
| 356 "TypeTraitsTest.cpp", | |
| 357 "VectorTest.cpp", | |
| 358 "dtoa_test.cpp", | |
| 359 "testing/RunAllTests.cpp", | |
| 360 "text/AtomicStringTest.cpp", | |
| 361 "text/CStringTest.cpp", | |
| 362 "text/IntegerToStringConversionTest.cpp", | |
| 363 "text/StringBufferTest.cpp", | |
| 364 "text/StringBuilderTest.cpp", | |
| 365 "text/StringImplTest.cpp", | |
| 366 "text/StringOperatorsTest.cpp", | |
| 367 "text/StringToNumberTest.cpp", | |
| 368 "text/StringViewTest.cpp", | |
| 369 "text/TextCodecICUTest.cpp", | |
| 370 "text/TextCodecLatin1Test.cpp", | |
| 371 "text/TextCodecReplacementTest.cpp", | |
| 372 "text/TextCodecTest.cpp", | |
| 373 "text/TextCodecUTF8Test.cpp", | |
| 374 "text/TextCodecUserDefinedTest.cpp", | |
| 375 "text/TextEncodingTest.cpp", | |
| 376 "text/WTFStringTest.cpp", | |
| 377 "typed_arrays/ArrayBufferBuilderTest.cpp", | |
| 378 ] | |
| 379 | |
| 380 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. | |
| 381 configs += [ "//build/config/compiler:no_size_t_to_int_warning" ] | |
| 382 | |
| 383 if (is_win) { | |
| 384 cflags = [ "/wd4068" ] # Unknown pragma. | |
| 385 } | |
| 386 | |
| 387 configs += [ | |
| 388 "//third_party/WebKit/Source:config", | |
| 389 "//third_party/WebKit/Source:blink_pch", | |
| 390 ] | |
| 391 | |
| 392 deps = [ | |
| 393 ":platform_wtf", | |
| 394 "//base", | |
| 395 "//base/test:test_support", | |
| 396 "//testing/gmock", | |
| 397 "//testing/gtest", | |
| 398 ] | |
| 399 } | |
| OLD | NEW |