chromium/chrome/browser/profiling_host/BUILD.gn

# Copyright 2017 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

static_library("profiling_host") {
  sources = [
    "chrome_browser_main_extra_parts_profiling.cc",
    "chrome_browser_main_extra_parts_profiling.h",
    "chrome_client_connection_manager.cc",
    "chrome_client_connection_manager.h",
    "profiling_process_host.cc",
    "profiling_process_host.h",
  ]

  public_deps = [ "//chrome/browser:browser_public_dependencies" ]

  deps = [
    "//base",
    "//chrome/browser:browser_process",
    "//chrome/browser:main_extra_parts",
    "//chrome/browser/profiles:profile",
    "//chrome/common:non_code_constants",
    "//components/heap_profiling/multi_process",
    "//components/services/heap_profiling/public/cpp",
    "//components/version_info",
    "//content/public/browser",
    "//content/public/common",
    "//third_party/zlib:zlib",

    # Added to support the dependency on //chrome/browser/metrics
    # TODO(darin): We should instead have a way to express that dependency here.
    "//chrome/common:mojo_bindings",
  ]
}

source_set("profiling_browsertests") {
  testonly = true

  sources = [ "memlog_browsertest.cc" ]

  defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]

  deps = [
    "//base",
    "//base/allocator:buildflags",
    "//chrome/browser/profiling_host",
    "//chrome/common:non_code_constants",
    "//components/heap_profiling/multi_process:test_support",
    "//components/services/heap_profiling/public/cpp",
    "//content/public/common",
    "//testing/gmock",
    "//testing/gtest",
  ]

  if (is_android) {
    # For `AndroidBrowserTest`.
    deps += [ "//chrome/test:test_support_ui_android" ]
  } else {
    # For `InProcessBrowserTest`.
    deps += [ "//chrome/test:test_support_ui" ]
  }
}