| # Copyright 2014 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//build/buildflag_header.gni") |
| import("//build/config/jumbo.gni") |
| import("//third_party/WebKit/Source/platform/platform.gni") |
| import("//testing/test.gni") |
| |
| declare_args() { |
| # Enables incremental marking in Oilpan. |
| enable_blink_heap_incremental_marking = false |
| |
| # Enables heap verification. |
| enable_blink_heap_verification = false |
| } |
| |
| buildflag_header("blink_heap_flags") { |
| header = "HeapFlags.h" |
| header_dir = "blink/platform/heap" |
| |
| flags = [ |
| "BLINK_HEAP_INCREMENTAL_MARKING=$enable_blink_heap_incremental_marking", |
| "BLINK_HEAP_VERIFICATION=$enable_blink_heap_verification", |
| ] |
| } |
| |
| blink_platform_sources("heap") { |
| sources = [ |
| "BlinkGC.h", |
| "BlinkGCMemoryDumpProvider.cpp", |
| "BlinkGCMemoryDumpProvider.h", |
| "CallbackStack.cpp", |
| "CallbackStack.h", |
| "GCInfo.cpp", |
| "GCInfo.h", |
| "GCTaskRunner.h", |
| "GarbageCollected.h", |
| "Handle.h", |
| "Heap.cpp", |
| "Heap.h", |
| "HeapAllocator.cpp", |
| "HeapAllocator.h", |
| "HeapCompact.cpp", |
| "HeapCompact.h", |
| "HeapLinkedStack.h", |
| "HeapPage.cpp", |
| "HeapPage.h", |
| "HeapTerminatedArray.h", |
| "HeapTerminatedArrayBuilder.h", |
| "HeapTraits.h", |
| "MarkingVisitor.cpp", |
| "MarkingVisitor.h", |
| "Member.h", |
| "PageMemory.cpp", |
| "PageMemory.h", |
| "PagePool.cpp", |
| "PagePool.h", |
| "Persistent.h", |
| "PersistentNode.cpp", |
| "PersistentNode.h", |
| "ProcessHeap.cpp", |
| "ProcessHeap.h", |
| "SafePoint.h", |
| "SelfKeepAlive.h", |
| "SparseHeapBitmap.cpp", |
| "SparseHeapBitmap.h", |
| "StackFrameDepth.cpp", |
| "StackFrameDepth.h", |
| "ThreadState.cpp", |
| "ThreadState.h", |
| "ThreadingTraits.h", |
| "TraceTraits.h", |
| "Visitor.h", |
| ] |
| |
| deps = [ |
| "//base", |
| "//third_party/WebKit/Source/platform:make_platform_generated", |
| "//third_party/WebKit/Source/platform/heap/asm", |
| "//third_party/icu", |
| "//v8", |
| ] |
| } |
| |
| test("blink_heap_unittests") { |
| deps = [ |
| ":blink_heap_unittests_sources", |
| ] |
| if (is_android) { |
| deps += [ |
| "//base:base_java", |
| "//content/shell/android:content_shell_assets", |
| "//net/android:net_java", |
| "//ui/android:ui_full_java", |
| ] |
| } |
| } |
| |
| jumbo_source_set("blink_heap_unittests_sources") { |
| testonly = true |
| sources = [ |
| "BlinkGCMemoryDumpProviderTest.cpp", |
| "HeapCompactTest.cpp", |
| "HeapTest.cpp", |
| "HeapTestUtilities.cpp", |
| "HeapTestUtilities.h", |
| "HeapTraitsTest.cpp", |
| "IncrementalMarkingTest.cpp", |
| "ObjectStartBitmapTest.cpp", |
| "PersistentTest.cpp", |
| "RunAllTests.cpp", |
| ] |
| |
| configs += [ |
| "//third_party/WebKit/Source/platform/wtf:wtf_config", |
| "//third_party/WebKit/Source:config", |
| "//third_party/WebKit/Source:inside_blink", |
| ] |
| |
| deps = [ |
| "//base", |
| "//base/test:test_support", |
| "//content/test:test_support", |
| "//testing/gmock", |
| "//testing/gtest", |
| "//third_party/WebKit/Source/platform:test_support", |
| "//third_party/WebKit/Source/platform/wtf", |
| ] |
| } |