| # 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("//media/media_options.gni") |
| import("//printing/buildflags/buildflags.gni") |
| |
| assert(is_chromeos) |
| assert(use_ozone) |
| |
| static_library("crosapi") { |
| sources = [ |
| "browser_manager.cc", |
| "browser_manager.h", |
| "crosapi_ash.cc", |
| "crosapi_ash.h", |
| "crosapi_id.h", |
| "crosapi_manager.cc", |
| "crosapi_manager.h", |
| "document_scan_ash.cc", |
| "document_scan_ash.h", |
| "document_scan_ash_type_converters.cc", |
| "document_scan_ash_type_converters.h", |
| "files_app_launcher.cc", |
| "files_app_launcher.h", |
| "keystore_service_ash.cc", |
| "keystore_service_ash.h", |
| "keystore_service_factory_ash.cc", |
| "keystore_service_factory_ash.h", |
| "local_printer_ash.cc", |
| "local_printer_ash.h", |
| "primary_profile_creation_waiter.cc", |
| "primary_profile_creation_waiter.h", |
| "vpn_service_ash.cc", |
| "vpn_service_ash.h", |
| ] |
| |
| deps = [ |
| "//ash", |
| "//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", |
| "//ash/webui/settings/public/constants:mojom", |
| "//ash/webui/system_apps/public:system_web_app_type", |
| "//base", |
| "//build/config/chromebox_for_meetings:buildflags", |
| "//chrome/browser:browser_process", |
| "//chrome/browser:primitives", |
| "//chrome/browser/apps/app_preload_service", |
| "//chrome/browser/apps/app_service", |
| "//chrome/browser/apps/app_service/app_icon", |
| "//chrome/browser/apps/app_service/app_install:implementation", |
| "//chrome/browser/apps/platform_apps/api", |
| "//chrome/browser/ash/app_list", |
| "//chrome/browser/ash/app_list/app_service", |
| "//chrome/browser/ash/app_mode", |
| "//chrome/browser/ash/app_mode/web_app", |
| "//chrome/browser/ash/app_restore", |
| "//chrome/browser/ash/apps", |
| "//chrome/browser/ash/attestation", |
| "//chrome/browser/ash/extensions/autotest_private", |
| "//chrome/browser/ash/file_manager", |
| "//chrome/browser/ash/file_manager/virtual_tasks", |
| "//chrome/browser/ash/fileapi", |
| "//chrome/browser/ash/floating_workspace:utils", |
| "//chrome/browser/ash/login", |
| "//chrome/browser/ash/login/app_mode", |
| "//chrome/browser/ash/login/quick_unlock", |
| "//chrome/browser/ash/login/screens", |
| "//chrome/browser/ash/login/session", |
| "//chrome/browser/ash/platform_keys", |
| "//chrome/browser/ash/platform_keys/key_permissions", |
| "//chrome/browser/ash/plugin_vm", |
| "//chrome/browser/ash/policy/core", |
| "//chrome/browser/ash/policy/dlp", |
| "//chrome/browser/ash/policy/handlers", |
| "//chrome/browser/ash/printing", |
| "//chrome/browser/ash/printing/history", |
| "//chrome/browser/ash/printing/history:print_job_info_proto", |
| "//chrome/browser/ash/printing/oauth2", |
| "//chrome/browser/ash/printing/print_management", |
| "//chrome/browser/ash/printing/print_preview", |
| "//chrome/browser/ash/privacy_hub", |
| "//chrome/browser/ash/profiles", |
| "//chrome/browser/ash/remote_apps", |
| "//chrome/browser/ash/scanning", |
| "//chrome/browser/ash/settings", |
| "//chrome/browser/ash/system", |
| "//chrome/browser/ash/system_web_apps", |
| "//chrome/browser/ash/system_web_apps/apps", |
| "//chrome/browser/chromeos/extensions/vpn_provider", |
| "//chrome/browser/chromeos/platform_keys", |
| "//chrome/browser/chromeos/printing/print_preview", |
| "//chrome/browser/extensions", |
| "//chrome/browser/media/router/discovery/access_code:access_code_cast_feature", |
| "//chrome/browser/media/webrtc", |
| "//chrome/browser/profiles:profile", |
| "//chrome/browser/ui", |
| "//chrome/browser/ui:browser_navigator_params_headers", |
| "//chrome/browser/ui/ash/birch", |
| "//chrome/browser/ui/ash/capture_mode", |
| "//chrome/browser/ui/ash/desks", |
| "//chrome/browser/ui/ash/global_media_controls", |
| "//chrome/browser/ui/ash/holding_space", |
| "//chrome/browser/ui/ash/keyboard", |
| "//chrome/browser/ui/ash/login", |
| "//chrome/browser/ui/ash/session", |
| "//chrome/browser/ui/ash/shelf", |
| "//chrome/browser/ui/ash/shelf/app_service", |
| "//chrome/browser/ui/ash/system_web_apps", |
| "//chrome/browser/ui/views/select_file_dialog_extension", |
| "//chrome/browser/ui/webui/signin/ash", |
| "//chrome/browser/web_applications", |
| "//chrome/browser/web_applications/app_service", |
| "//chrome/common", |
| "//chrome/common:constants", |
| "//chromeos/ash/components/account_manager", |
| "//chromeos/ash/components/browser_context_helper", |
| "//chromeos/ash/components/channel", |
| "//chromeos/ash/components/cryptohome", |
| "//chromeos/ash/components/dbus", |
| "//chromeos/ash/components/dbus/attestation:attestation_proto", |
| "//chromeos/ash/components/dbus/cros_disks", |
| "//chromeos/ash/components/dbus/lorgnette_manager:lorgnette_proto", |
| "//chromeos/ash/components/dbus/resourced", |
| "//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/file_manager:constants", |
| "//chromeos/ash/components/install_attributes", |
| "//chromeos/ash/components/login/auth", |
| "//chromeos/ash/components/login/login_state", |
| "//chromeos/ash/components/nearby/common/connections_manager", |
| "//chromeos/ash/components/network", |
| "//chromeos/ash/components/network:vpn_providers_observer", |
| "//chromeos/ash/components/network/portal_detector", |
| "//chromeos/ash/components/osauth/public", |
| "//chromeos/ash/components/platform_keys", |
| "//chromeos/ash/components/settings", |
| "//chromeos/ash/components/system", |
| "//chromeos/ash/components/telemetry_extension/diagnostics", |
| "//chromeos/ash/components/telemetry_extension/events", |
| "//chromeos/ash/components/telemetry_extension/management", |
| "//chromeos/ash/components/telemetry_extension/routines", |
| "//chromeos/ash/components/telemetry_extension/telemetry", |
| "//chromeos/ash/experiences/arc", |
| "//chromeos/ash/experiences/arc:arc_base_utils", |
| "//chromeos/ash/experiences/arc/intent_helper", |
| "//chromeos/ash/experiences/arc/mojom", |
| "//chromeos/ash/experiences/arc/session", |
| "//chromeos/ash/experiences/system_web_apps/types", |
| "//chromeos/components/cdm_factory_daemon:cdm_factory_daemon_browser", |
| "//chromeos/components/firewall_hole", |
| "//chromeos/components/in_session_auth", |
| "//chromeos/components/mahi/public/cpp", |
| "//chromeos/components/mgs", |
| "//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/printing", |
| "//chromeos/services/chromebox_for_meetings/public/cpp", |
| "//chromeos/services/machine_learning/public/cpp", |
| "//chromeos/ui/clipboard_history", |
| "//chromeos/ui/wm", |
| "//chromeos/version", |
| "//components/app_restore", |
| "//components/component_updater/ash", |
| "//components/crash/core/app", |
| "//components/exo", |
| "//components/eye_dropper", |
| "//components/feature_engagement", |
| "//components/global_media_controls", |
| "//components/keyed_service/content", |
| "//components/language/core/browser", |
| "//components/live_caption:utils", |
| "//components/metrics", |
| "//components/metrics_services_manager", |
| "//components/payments/core:error_strings", |
| "//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", |
| "//components/update_client", |
| "//components/user_prefs", |
| "//components/variations", |
| "//components/variations/service", |
| "//components/version_info:channel", |
| "//components/webui/flags", |
| "//content/public/common", |
| "//extensions/browser/api", |
| "//extensions/browser/api/automation_internal", |
| "//extensions/browser/api/networking_private", |
| "//extensions/browser/api/power", |
| "//extensions/common", |
| "//headless:headless_non_renderer", |
| "//printing/backend", |
| "//remoting/host/chromeos:remoting_service", |
| "//services/data_decoder/public/cpp", |
| "//services/device/wake_lock/power_save_blocker", |
| "//services/video_capture:lib", |
| "//services/video_capture/public/cpp", |
| "//services/video_capture/public/mojom", |
| "//ui/base", |
| "//ui/message_center", |
| "//ui/message_center/public/cpp", |
| "//ui/ozone", |
| "//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 += [ |
| "//chrome/browser/ash/arc:arc_util", |
| "//chrome/browser/prefs", |
| "//chromeos/components/print_management/mojom", |
| ] |
| |
| public_deps = [ |
| "//chrome/browser:browser_public_dependencies", |
| "//media/gpu:buildflags", |
| "//printing", |
| "//ui/base/mojom:ui_base_types", |
| ] |
| |
| allow_circular_includes_from = [ |
| "//chrome/browser/chromeos/extensions/vpn_provider", |
| "//chrome/browser/chromeos/platform_keys", |
| "//chrome/browser/chromeos/printing/print_preview", |
| "//chrome/browser/extensions", |
| "//chrome/browser/media/webrtc", |
| "//chrome/browser/ui", |
| "//chrome/browser/ui/ash/birch", |
| "//chrome/browser/ui/ash/capture_mode", |
| "//chrome/browser/ui/ash/desks", |
| "//chrome/browser/ui/ash/global_media_controls", |
| "//chrome/browser/ui/ash/session", |
| "//chrome/browser/ui/ash/shelf", |
| "//chrome/browser/ui/ash/shelf/app_service", |
| "//chrome/browser/ui/webui/signin/ash", |
| "//chrome/browser/web_applications/app_service", |
| ] |
| } |
| |
| static_library("test_support") { |
| testonly = true |
| |
| sources = [ |
| "test_crosapi_environment.cc", |
| "test_crosapi_environment.h", |
| "test_local_printer_ash.cc", |
| "test_local_printer_ash.h", |
| ] |
| |
| allow_circular_includes_from = [ "//chrome/test:test_support" ] |
| |
| public_deps = [ "//chromeos/ash/components/system" ] |
| |
| deps = [ |
| ":crosapi", |
| "//ash", |
| "//ash:test_support", |
| "//ash/app_list", |
| "//base", |
| "//chrome/browser/apps/app_service", |
| "//chrome/browser/ash/app_list", |
| "//chrome/browser/ash/printing", |
| "//chrome/browser/ash/printing:test_support", |
| "//chrome/browser/ash/printing/history", |
| "//chrome/browser/ash/printing/history:test_support", |
| "//chrome/browser/ui/ash/desks", |
| "//chrome/browser/ui/webui/ash/app_install", |
| "//chrome/test:test_support", |
| "//chromeos/ash/components/dbus/shill", |
| "//chromeos/ash/experiences/arc:arc_test_support", |
| "//chromeos/crosapi/mojom", |
| "//components/component_updater/ash", |
| "//printing", |
| "//testing/gmock", |
| "//ui/events:gesture_detection", |
| ] |
| } |
| |
| source_set("unit_tests") { |
| testonly = true |
| |
| sources = [ |
| "document_scan_ash_type_converters_unittest.cc", |
| "document_scan_ash_unittest.cc", |
| "keystore_service_ash_unittest.cc", |
| "local_printer_ash_unittest.cc", |
| "primary_profile_creation_waiter_unittest.cc", |
| ] |
| |
| deps = [ |
| ":crosapi", |
| ":test_support", |
| "//ash", |
| "//ash:test_support", |
| "//base", |
| "//base/test:test_config", |
| "//base/test:test_support", |
| "//chrome/browser/ash/attestation", |
| "//chrome/browser/ash/attestation:test_support", |
| "//chrome/browser/ash/login/users:test_support", |
| "//chrome/browser/ash/platform_keys:test_support", |
| "//chrome/browser/ash/platform_keys/key_permissions:test_support", |
| "//chrome/browser/ash/policy/core", |
| "//chrome/browser/ash/policy/core:test_support", |
| "//chrome/browser/ash/printing", |
| "//chrome/browser/ash/printing:test_support", |
| "//chrome/browser/ash/printing/oauth2", |
| "//chrome/browser/ash/printing/oauth2:test_support", |
| "//chrome/browser/ash/scanning", |
| "//chrome/browser/ash/scanning:test_support", |
| "//chrome/browser/ash/settings:test_support", |
| "//chrome/browser/ui/ash/desks", |
| "//chrome/browser/ui/ash/shelf", |
| "//chrome/common/printing", |
| "//chrome/test:test_support", |
| "//chromeos/ash/components/browser_context_helper", |
| "//chromeos/ash/components/channel", |
| "//chromeos/ash/components/cryptohome", |
| "//chromeos/ash/components/dbus/audio", |
| "//chromeos/ash/components/dbus/shill", |
| "//chromeos/ash/components/dbus/upstart", |
| "//chromeos/ash/components/disks:test_support", |
| "//chromeos/ash/components/login/login_state", |
| "//chromeos/ash/components/platform_keys", |
| "//chromeos/ash/components/system", |
| "//chromeos/ash/experiences/arc:arc_test_support", |
| "//chromeos/crosapi/cpp", |
| "//chromeos/crosapi/cpp:crosapi_constants", |
| "//chromeos/printing", |
| "//chromeos/ui/clipboard_history", |
| "//components/component_updater:test_support", |
| "//components/component_updater/ash", |
| "//components/component_updater/ash:test_support", |
| "//components/session_manager/core", |
| "//printing/backend", |
| "//printing/backend:test_support", |
| "//testing/gtest", |
| "//ui/display:test_support", |
| ] |
| |
| # TODO(crbug.com/40031409): Fix code that adds exit-time destructors and |
| # enable the diagnostic by removing this line. |
| configs += [ "//build/config/compiler:no_exit_time_destructors" ] |
| } |
| |
| source_set("browser_tests") { |
| testonly = true |
| |
| defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ] |
| |
| sources = [ |
| "magic_boost_ash_browsertest.cc", |
| "power_ash_apitest.cc", |
| "print_preview_ash_browsertest.cc", |
| ] |
| |
| deps = [ |
| ":crosapi", |
| ":test_support", |
| "//ash/constants", |
| "//ash/public/cpp", |
| "//base", |
| "//base/test:test_support", |
| "//chrome/browser", |
| "//chrome/browser:browser_process", |
| "//chrome/browser/apps/app_service", |
| "//chrome/browser/apps/app_service:app_registry_cache_waiter", |
| "//chrome/browser/ash/fileapi", |
| "//chrome/browser/ash/magic_boost", |
| "//chrome/browser/ash/mahi", |
| "//chrome/browser/ash/printing/print_preview", |
| "//chrome/browser/ash/system_web_apps/test_support:test_support_ui", |
| "//chrome/browser/ui", |
| "//chrome/common", |
| "//chrome/test:test_support", |
| "//chrome/test/base/ash/util:test_support", |
| "//chromeos/ash/components/dbus/shill", |
| "//chromeos/crosapi/mojom", |
| "//chromeos/printing:test_support", |
| "//components/account_id", |
| "//components/exo", |
| "//components/global_media_controls:test_support", |
| "//components/user_manager", |
| "//components/webapps/common", |
| "//content/test:test_support", |
| "//mojo/public/cpp/bindings", |
| "//testing/gtest", |
| "//ui/base/idle:test_support", |
| ] |
| } |