blob: c398f703d62560ca0d16d6d2819f6722ced65163 [file] [log] [blame]
# Copyright 2021 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//build/config/chromeos/ui_mode.gni")
import("//build/config/ui.gni")
import("//printing/buildflags/buildflags.gni")
assert(is_chromeos_ash)
assert(use_ozone)
source_set("browser_util") {
sources = [
"browser_util.cc",
"browser_util.h",
]
deps = [
"//ash/constants",
"//base",
"//chrome/browser:browser_process",
"//chrome/common",
"//chromeos/crosapi/cpp",
"//chromeos/crosapi/cpp:crosapi_constants",
"//chromeos/crosapi/mojom",
"//components/account_id",
"//components/exo",
"//components/prefs",
"//components/user_manager",
"//components/version_info",
"//google_apis",
]
}
source_set("crosapi") {
sources = [
"arc_ash.cc",
"arc_ash.h",
"audio_service_ash.cc",
"audio_service_ash.h",
"authentication_ash.cc",
"authentication_ash.h",
"automation_ash.cc",
"automation_ash.h",
"browser_action.cc",
"browser_action.h",
"browser_data_back_migrator.cc",
"browser_data_back_migrator.h",
"browser_data_migrator.cc",
"browser_data_migrator.h",
"browser_data_migrator_util.cc",
"browser_data_migrator_util.h",
"browser_loader.cc",
"browser_loader.h",
"browser_manager.cc",
"browser_manager.h",
"browser_manager_observer.h",
"browser_service_host_ash.cc",
"browser_service_host_ash.h",
"browser_service_host_observer.h",
"browser_version_service_ash.cc",
"browser_version_service_ash.h",
"cert_database_ash.cc",
"cert_database_ash.h",
"cert_provisioning_ash.cc",
"cert_provisioning_ash.h",
"chrome_app_kiosk_service_ash.cc",
"chrome_app_kiosk_service_ash.h",
"chrome_app_window_tracker_ash.cc",
"chrome_app_window_tracker_ash.h",
"clipboard_ash.cc",
"clipboard_ash.h",
"clipboard_history_ash.cc",
"clipboard_history_ash.h",
"content_protection_ash.cc",
"content_protection_ash.h",
"copy_migrator.cc",
"copy_migrator.h",
"crosapi_ash.cc",
"crosapi_ash.h",
"crosapi_dependency_registry.cc",
"crosapi_dependency_registry.h",
"crosapi_id.h",
"crosapi_manager.cc",
"crosapi_manager.h",
"crosapi_util.cc",
"crosapi_util.h",
"desk_ash.cc",
"desk_ash.h",
"desk_template_ash.cc",
"desk_template_ash.h",
"device_attributes_ash.cc",
"device_attributes_ash.h",
"device_local_account_extension_service_ash.cc",
"device_local_account_extension_service_ash.h",
"device_oauth2_token_service_ash.cc",
"device_oauth2_token_service_ash.h",
"device_settings_ash.cc",
"device_settings_ash.h",
"dlp_ash.cc",
"dlp_ash.h",
"document_scan_ash.cc",
"document_scan_ash.h",
"download_controller_ash.cc",
"download_controller_ash.h",
"drive_integration_service_ash.cc",
"drive_integration_service_ash.h",
"echo_private_ash.cc",
"echo_private_ash.h",
"emoji_picker_ash.cc",
"emoji_picker_ash.h",
"environment_provider.cc",
"environment_provider.h",
"extension_info_private_ash.cc",
"extension_info_private_ash.h",
"feedback_ash.cc",
"feedback_ash.h",
"field_trial_service_ash.cc",
"field_trial_service_ash.h",
"file_manager_ash.cc",
"file_manager_ash.h",
"file_system_provider_service_ash.cc",
"file_system_provider_service_ash.h",
"files_app_launcher.cc",
"files_app_launcher.h",
"firewall_hole_ash.cc",
"firewall_hole_ash.h",
"force_installed_tracker_ash.cc",
"force_installed_tracker_ash.h",
"fullscreen_controller_ash.cc",
"fullscreen_controller_ash.h",
"geolocation_service_ash.cc",
"geolocation_service_ash.h",
"hosted_app_util.cc",
"hosted_app_util.h",
"identity_manager_ash.cc",
"identity_manager_ash.h",
"idle_service_ash.cc",
"idle_service_ash.h",
"image_writer_ash.cc",
"image_writer_ash.h",
"in_session_auth_ash.cc",
"in_session_auth_ash.h",
"keystore_service_ash.cc",
"keystore_service_ash.h",
"keystore_service_factory_ash.cc",
"keystore_service_factory_ash.h",
"kiosk_session_service_ash.cc",
"kiosk_session_service_ash.h",
"lacros_availability_policy_observer.cc",
"lacros_availability_policy_observer.h",
"lacros_data_backward_migration_mode_policy_observer.cc",
"lacros_data_backward_migration_mode_policy_observer.h",
"local_printer_ash.cc",
"local_printer_ash.h",
"login_ash.cc",
"login_ash.h",
"login_screen_storage_ash.cc",
"login_screen_storage_ash.h",
"login_state_ash.cc",
"login_state_ash.h",
"message_center_ash.cc",
"message_center_ash.h",
"metrics_ash.cc",
"metrics_ash.h",
"metrics_reporting_ash.cc",
"metrics_reporting_ash.h",
"migration_progress_tracker.cc",
"migration_progress_tracker.h",
"move_migrator.cc",
"move_migrator.h",
"multi_capture_service_ash.cc",
"multi_capture_service_ash.h",
"native_theme_service_ash.cc",
"native_theme_service_ash.h",
"network_change_ash.cc",
"network_change_ash.h",
"network_settings_service_ash.cc",
"network_settings_service_ash.h",
"network_settings_translation.h",
"networking_attributes_ash.cc",
"networking_attributes_ash.h",
"networking_private_ash.cc",
"networking_private_ash.h",
"parent_access_ash.cc",
"parent_access_ash.h",
"persistent_forced_extension_keep_alive.cc",
"persistent_forced_extension_keep_alive.h",
"policy_service_ash.cc",
"policy_service_ash.h",
"power_ash.cc",
"power_ash.h",
"prefs_ash.cc",
"prefs_ash.h",
"remoting_ash.cc",
"remoting_ash.h",
"resource_manager_ash.cc",
"resource_manager_ash.h",
"screen_manager_ash.cc",
"screen_manager_ash.h",
"search_provider_ash.cc",
"search_provider_ash.h",
"select_file_ash.cc",
"select_file_ash.h",
"sharesheet_ash.cc",
"sharesheet_ash.h",
"speech_recognition_ash.cc",
"speech_recognition_ash.h",
"structured_metrics_service_ash.cc",
"structured_metrics_service_ash.h",
"task_manager_ash.cc",
"task_manager_ash.h",
"test_mojo_connection_manager.cc",
"test_mojo_connection_manager.h",
"time_zone_service_ash.cc",
"time_zone_service_ash.h",
"translate_crosapi_to_proxy_config.cc",
"translate_proxy_config_to_crosapi.cc",
"url_handler_ash.cc",
"url_handler_ash.h",
"video_capture_device_ash.cc",
"video_capture_device_ash.h",
"video_capture_device_factory_ash.cc",
"video_capture_device_factory_ash.h",
"video_frame_handler_ash.cc",
"video_frame_handler_ash.h",
"virtual_keyboard_ash.cc",
"virtual_keyboard_ash.h",
"volume_manager_ash.cc",
"volume_manager_ash.h",
"vpn_extension_observer_ash.cc",
"vpn_extension_observer_ash.h",
"vpn_service_ash.cc",
"vpn_service_ash.h",
"wallpaper_ash.cc",
"wallpaper_ash.h",
"web_app_service_ash.cc",
"web_app_service_ash.h",
"web_page_info_ash.cc",
"web_page_info_ash.h",
"window_util.cc",
"window_util.h",
]
if (use_cups) {
sources += [
"print_job_info_idl_conversions.cc",
"print_job_info_idl_conversions.h",
"printing_metrics_ash.cc",
"printing_metrics_ash.h",
]
}
deps = [
"//ash",
"//ash/components/arc:arc_base_utils",
"//ash/components/arc/mojom",
"//ash/components/arc/session",
"//ash/constants",
"//ash/webui/camera_app_ui",
"//ash/webui/connectivity_diagnostics",
"//ash/webui/diagnostics_ui",
"//ash/webui/firmware_update_ui",
"//ash/webui/help_app_ui",
"//ash/webui/print_management",
"//ash/webui/scanning",
"//base",
"//build/config/chromebox_for_meetings:buildflags",
"//chrome/browser:browser_process",
"//chrome/browser/ash:print_job_info_proto",
"//chrome/browser/ash/system_web_apps/types:types",
"//chrome/browser/ash/telemetry_extension",
"//chrome/browser/ash/video_conference",
"//chrome/browser/image_decoder:image_decoder",
"//chrome/browser/profiles:profile",
"//chrome/browser/ui/webui/ash/parent_access:mojo_bindings",
"//chrome/browser/ui/webui/settings/chromeos/constants:mojom",
"//chrome/browser/web_applications",
"//chrome/common",
"//chrome/common:channel_info",
"//chrome/common:constants",
"//chromeos/ash/components/account_manager",
"//chromeos/ash/components/cryptohome",
"//chromeos/ash/components/dbus",
"//chromeos/ash/components/dbus/cros_disks",
"//chromeos/ash/components/dbus/lorgnette_manager:lorgnette_proto",
"//chromeos/ash/components/dbus/resourced",
"//chromeos/ash/components/dbus/session_manager",
"//chromeos/ash/components/dbus/shill",
"//chromeos/ash/components/dbus/update_engine",
"//chromeos/ash/components/dbus/upstart",
"//chromeos/ash/components/dbus/userdataauth:userdataauth_proto",
"//chromeos/ash/components/install_attributes",
"//chromeos/ash/components/login/auth",
"//chromeos/ash/components/login/login_state",
"//chromeos/ash/components/network",
"//chromeos/ash/components/settings",
"//chromeos/ash/components/system",
"//chromeos/ash/components/tpm",
"//chromeos/components/cdm_factory_daemon:cdm_factory_daemon_browser",
"//chromeos/components/certificate_provider:certificate_provider",
"//chromeos/components/quick_answers/public/cpp:prefs",
"//chromeos/components/remote_apps/mojom",
"//chromeos/components/sensors",
"//chromeos/crosapi/cpp",
"//chromeos/crosapi/cpp:crosapi_constants",
"//chromeos/crosapi/mojom",
"//chromeos/dbus/power",
"//chromeos/printing",
"//chromeos/services/machine_learning/public/cpp",
"//chromeos/services/network_config/public/cpp",
"//chromeos/startup",
"//chromeos/startup:constants",
"//chromeos/ui/wm:wm",
"//chromeos/version",
"//components/arc",
"//components/crash/core/app",
"//components/exo",
"//components/flags_ui",
"//components/keyed_service/content",
"//components/language/core/browser:browser",
"//components/live_caption:utils",
"//components/metrics",
"//components/metrics/structured",
"//components/metrics_services_manager:metrics_services_manager",
"//components/policy/core/common:common_constants",
"//components/prefs",
"//components/printing/browser",
"//components/services/app_service/public/cpp:instance_update",
"//components/session_manager/core",
"//components/ukm:ukm",
"//components/user_prefs:user_prefs",
"//components/version_info:channel",
"//content/public/common",
"//extensions/browser/api",
"//extensions/browser/api/audio",
"//extensions/browser/api/automation_internal",
"//extensions/browser/api/networking_private",
"//extensions/common",
"//media/mojo/mojom/stable:stable_video_decoder",
"//printing/backend",
"//remoting/host/chromeos:remoting_service",
"//services/data_decoder/public/cpp:cpp",
"//services/device/wake_lock/power_save_blocker",
"//services/video_capture/public/cpp:cpp",
"//services/video_capture/public/mojom",
"//ui/base",
"//ui/message_center",
"//ui/message_center/public/cpp",
"//ui/shell_dialogs",
"//ui/snapshot",
"//ui/views",
]
# local_printer_ash.cc includes
# chrome/browser/ash/printing/print_management/printing_manager.h, which in
# turn requires //chromeos/components/print_management/mojom to generate the
# Mojo headers referenced by printing_manager.h.
# Ideally, //chrome/browser/ash can just make
# //chromeos/components/print_management/mojom a public_deps entry, and this
# target can depend on //chrome/browser/ash. However, that creates a circular
# dependency, so add this indirect dependency to make it work as intended.
deps += [ "//chromeos/components/print_management/mojom" ]
public_deps = [
":browser_util",
"//media/gpu:buildflags",
"//printing",
]
}
source_set("test_support") {
testonly = true
sources = [
"ash_requires_lacros_browsertestbase.cc",
"ash_requires_lacros_browsertestbase.h",
"ash_requires_lacros_extension_apitest.cc",
"ash_requires_lacros_extension_apitest.h",
"fake_browser_manager.cc",
"fake_browser_manager.h",
"input_method_test_interface_ash.cc",
"input_method_test_interface_ash.h",
"test_controller_ash.cc",
"test_controller_ash.h",
"test_crosapi_dependency_registry.cc",
"test_crosapi_dependency_registry.h",
]
deps = [
":crosapi",
"//ash",
"//ash/app_list",
"//chrome/browser/apps/app_service",
"//chrome/browser/ash:test_support",
"//chrome/test:test_support",
"//chromeos/ash/components/dbus/shill",
"//chromeos/crosapi/mojom",
"//printing",
"//testing/gmock",
]
}
source_set("unit_tests") {
testonly = true
sources = [
"audio_service_ash_unittest.cc",
"browser_data_back_migrator_unittest.cc",
"browser_data_migrator_unittest.cc",
"browser_data_migrator_util_unittest.cc",
"browser_loader_unittest.cc",
"browser_manager_unittest.cc",
"browser_util_unittest.cc",
"browser_version_service_ash_unittest.cc",
"cert_provisioning_ash_unittest.cc",
"chrome_app_window_tracker_ash_unittest.cc",
"copy_migrator_unittest.cc",
"crosapi_util_unittest.cc",
"device_attributes_ash_unittest.cc",
"device_oauth2_token_service_ash_unittest.cc",
"device_settings_ash_unittest.cc",
"dlp_ash_unittest.cc",
"document_scan_ash_unittest.cc",
"download_controller_ash_unittest.cc",
"fake_migration_progress_tracker.h",
"field_trial_service_ash_unittest.cc",
"fullscreen_controller_ash_unittest.cc",
"geolocation_service_ash_unittest.cc",
"keystore_service_ash_unittest.cc",
"lacros_availability_policy_observer_unittest.cc",
"lacros_data_backward_migration_mode_policy_observer_unittest.cc",
"local_printer_ash_unittest.cc",
"login_screen_storage_ash_unittest.cc",
"login_state_ash_unittest.cc",
"message_center_ash_unittest.cc",
"metrics_reporting_ash_unittest.cc",
"move_migrator_unittest.cc",
"network_settings_translation_unittest.cc",
"networking_attributes_ash_unittest.cc",
"parent_access_ash_unittest.cc",
"persistent_forced_extension_keep_alive_unittest.cc",
"prefs_ash_unittest.cc",
"test_local_printer_ash.cc",
"test_local_printer_ash.h",
"test_mojo_connection_manager_unittest.cc",
"wallpaper_ash_unittest.cc",
]
if (use_cups) {
sources += [ "print_job_info_idl_conversions_unittest.cc" ]
}
deps = [
":crosapi",
":test_support",
"//ash",
"//ash/components/arc:arc_test_support",
"//base",
"//base/test:test_config",
"//base/test:test_support",
"//chrome/browser/ash:test_support",
"//chrome/browser/chromeos:test_support",
"//chrome/common/printing",
"//chrome/test:test_support",
"//chromeos/ash/components/cryptohome",
"//chromeos/ash/components/dbus/audio",
"//chromeos/ash/components/dbus/shill",
"//chromeos/ash/components/dbus/upstart",
"//chromeos/ash/components/login/login_state",
"//chromeos/ash/components/system",
"//chromeos/crosapi/cpp:cpp",
"//chromeos/crosapi/cpp:crosapi_constants",
"//chromeos/printing",
"//chromeos/startup:constants",
"//components/component_updater:test_support",
"//components/session_manager/core",
"//printing/backend",
"//printing/backend:test_support",
"//testing/gtest:gtest",
"//ui/display:test_support",
]
}