BUILD.gn 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108
  1. # Copyright 2020 The Chromium Authors. All rights reserved.
  2. # Use of this source code is governed by a BSD-style license that can be
  3. # found in the LICENSE file.
  4. import("//build/config/chromeos/ui_mode.gni")
  5. import("//build/config/ui.gni")
  6. import("//third_party/protobuf/proto_library.gni")
  7. assert(is_chromeos)
  8. component("account_manager_core") {
  9. sources = [
  10. "account.cc",
  11. "account.h",
  12. "account_addition_options.h",
  13. "account_addition_result.cc",
  14. "account_addition_result.h",
  15. "account_manager_facade.cc",
  16. "account_manager_facade.h",
  17. "account_manager_facade_impl.cc",
  18. "account_manager_facade_impl.h",
  19. "account_manager_util.cc",
  20. "account_manager_util.h",
  21. "chromeos/access_token_fetcher.cc",
  22. "chromeos/access_token_fetcher.h",
  23. "chromeos/account_manager.cc",
  24. "chromeos/account_manager.h",
  25. "chromeos/account_manager_facade_factory.h",
  26. "chromeos/account_manager_mojo_service.cc",
  27. "chromeos/account_manager_mojo_service.h",
  28. "chromeos/account_manager_ui.cc",
  29. "chromeos/account_manager_ui.h",
  30. "pref_names.cc",
  31. "pref_names.h",
  32. ]
  33. deps = [
  34. "//base",
  35. "//build:chromeos_buildflags",
  36. "//chromeos/crosapi/mojom",
  37. "//components/prefs:prefs",
  38. "//google_apis:google_apis",
  39. "//mojo/public/cpp/bindings",
  40. "//services/network/public/cpp:cpp",
  41. ]
  42. if (is_chromeos_lacros) {
  43. sources += [ "chromeos/account_manager_facade_factory_lacros.cc" ]
  44. deps += [ "//chromeos/lacros:lacros" ]
  45. }
  46. public_deps = [
  47. ":account_manager_proto",
  48. "//third_party/abseil-cpp:absl",
  49. ]
  50. defines = [ "IS_ACCOUNT_MANAGER_CORE_IMPL" ]
  51. }
  52. source_set("test_support") {
  53. testonly = true
  54. sources = [
  55. "account_manager_test_util.cc",
  56. "account_manager_test_util.h",
  57. "chromeos/fake_account_manager_ui.cc",
  58. "chromeos/fake_account_manager_ui.h",
  59. "mock_account_manager_facade.cc",
  60. "mock_account_manager_facade.h",
  61. ]
  62. public_deps = [
  63. "//base",
  64. "//google_apis",
  65. "//testing/gmock",
  66. ]
  67. deps = [ ":account_manager_core" ]
  68. }
  69. source_set("unit_tests") {
  70. testonly = true
  71. sources = [
  72. "account_manager_facade_impl_unittest.cc",
  73. "chromeos/account_manager_mojo_service_unittest.cc",
  74. "chromeos/account_manager_unittest.cc",
  75. ]
  76. deps = [
  77. ":account_manager_core",
  78. ":test_support",
  79. "//base/test:test_support",
  80. "//chromeos/crosapi/mojom",
  81. "//components/prefs:test_support",
  82. "//google_apis:google_apis",
  83. "//services/network:test_support",
  84. "//services/network/public/cpp:cpp",
  85. "//testing/gtest",
  86. ]
  87. }
  88. proto_library("account_manager_proto") {
  89. visibility = [ ":*" ]
  90. sources = [ "chromeos/tokens.proto" ]
  91. proto_out_dir = "components/account_manager_core/chromeos"
  92. }