| # Copyright 2020 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/config/chromeos/ui_mode.gni") | 
 | import("//build/config/linux/gtk/gtk.gni") | 
 | import("//build/lacros/lacros_resource_sizes.gni") | 
 | import("//chromeos/tast_control.gni") | 
 |  | 
 | if (is_chromeos_device) { | 
 |   import("//build/config/chromeos/rules.gni") | 
 | } | 
 |  | 
 | # Code lives in the lacros-chrome browser only, not ash-chrome. | 
 | assert(is_chromeos_lacros) | 
 | assert(!use_gtk) | 
 |  | 
 | component("lacros") { | 
 |   defines = [ "IS_CHROMEOS_LACROS_IMPL" ] | 
 |   deps = [ | 
 |     "//base", | 
 |     "//build:chromeos_buildflags", | 
 |     "//chromeos/crosapi/cpp", | 
 |     "//chromeos/crosapi/mojom", | 
 |     "//chromeos/dbus/constants", | 
 |     "//chromeos/dbus/init", | 
 |     "//chromeos/dbus/missive", | 
 |     "//chromeos/dbus/permission_broker", | 
 |     "//chromeos/process_proxy", | 
 |     "//chromeos/startup", | 
 |     "//dbus", | 
 |     "//mojo/public/cpp/bindings", | 
 |     "//ui/native_theme", | 
 |   ] | 
 |   sources = [ | 
 |     "lacros_dbus_helper.cc", | 
 |     "lacros_dbus_helper.h", | 
 |     "lacros_dbus_thread_manager.cc", | 
 |     "lacros_dbus_thread_manager.h", | 
 |     "lacros_service.cc", | 
 |     "lacros_service.h", | 
 |     "lacros_service_never_blocking_state.cc", | 
 |     "lacros_service_never_blocking_state.h", | 
 |     "native_theme_cache.cc", | 
 |     "native_theme_cache.h", | 
 |     "system_idle_cache.cc", | 
 |     "system_idle_cache.h", | 
 |   ] | 
 | } | 
 |  | 
 | source_set("test_support") { | 
 |   testonly = true | 
 |   deps = [ | 
 |     "//base", | 
 |     "//chromeos/crosapi/mojom", | 
 |     "//chromeos/lacros", | 
 |   ] | 
 |   sources = [ | 
 |     "lacros_test_helper.cc", | 
 |     "lacros_test_helper.h", | 
 |   ] | 
 | } | 
 |  | 
 | lacros_resource_sizes_test("resource_sizes_lacros_chrome") { | 
 |   data_deps = [ "//chrome:chrome" ] | 
 | } | 
 |  | 
 | if (is_chromeos_device) { | 
 |   lacros_tast_tests("lacros_all_tast_tests") { | 
 |     # The following expression filters out all non-critical tests. See the link | 
 |     # below for more details: | 
 |     # https://chromium.googlesource.com/chromiumos/platform/tast/+/main/docs/test_attributes.md | 
 |     tast_attr_expr = "\"group:mainline\" && \"dep:lacros\" && !informational" | 
 |  | 
 |     # To disable a specific test, add it to the | 
 |     # tast_disabled_tests_from_lacros_all list in "tast_control.gni" and cite | 
 |     # a bug. | 
 |     tast_disabled_tests = tast_disabled_tests_from_lacros_all | 
 |   } | 
 |  | 
 |   lacros_tast_tests("lacros_fyi_tast_tests") { | 
 |     tast_tests = [ | 
 |       "lacros.AppLauncherLaunch", | 
 |       "lacros.AppLauncherLaunch.unstable", | 
 |       "lacros.AudioPlay", | 
 |       "lacros.AudioPlay.unstable", | 
 |       "lacros.Basic", | 
 |       "lacros.Basic.unstable", | 
 |       "lacros.ShelfLaunch", | 
 |       "lacros.ShelfLaunch.unstable", | 
 |     ] | 
 |   } | 
 | } |