blob: 0359789b492b733a2ae476a25579e243c598c620 [file]
# Copyright 2026 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
assert(is_win || is_mac || is_linux || is_chromeos || is_android)
source_set("memory") {
public = [
"chrome_browser_main_extra_parts_memory.h",
"enterprise_memory_limit_evaluator.h",
"enterprise_memory_limit_pref_observer.h",
]
if (!is_android) {
public += [ "oom_memory_details.h" ]
}
public_deps = [
"//base",
"//chrome/browser:main_extra_parts",
"//components/memory_pressure",
"//components/performance_manager",
"//components/prefs",
]
if (is_chromeos) {
public += [
"memory_kills_monitor.h",
"oom_kills_monitor.h",
]
public_deps += [
"//chromeos/ash/components/login/login_state",
"//components/metrics",
]
}
}
source_set("impl") {
sources = [
"chrome_browser_main_extra_parts_memory.cc",
"enterprise_memory_limit_evaluator.cc",
"enterprise_memory_limit_pref_observer.cc",
]
if (!is_android) {
sources += [ "oom_memory_details.cc" ]
}
deps = [
":memory",
"//base",
"//chrome/browser:browser_process",
"//chrome/browser/resource_coordinator",
"//chrome/browser/resource_coordinator:mojo_bindings",
"//chrome/browser/resource_coordinator:utils",
"//chrome/common:constants",
"//components/heap_profiling/in_process",
"//components/heap_profiling/in_process:mojom",
"//content/public/browser",
"//ui/base",
]
if (is_chromeos) {
sources += [
"memory_kills_histogram.h",
"memory_kills_monitor.cc",
"oom_kills_monitor.cc",
]
deps += [
"//chromeos/ash/components/dbus/resourced",
"//chromeos/ash/components/memory",
"//dbus",
]
}
}
source_set("unit_tests") {
testonly = true
sources = [ "enterprise_memory_limit_evaluator_unittest.cc" ]
if (is_chromeos) {
sources += [
"memory_kills_monitor_unittest.cc",
"oom_kills_monitor_unittest.cc",
]
}
deps = [
":impl",
":memory",
"//base",
"//base/test:test_support",
"//components/memory_pressure",
"//components/prefs:test_support",
"//content/test:test_support",
"//testing/gtest",
]
}