BUILD.gn 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494
  1. # Copyright 2015 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. assert(is_chromeos_ash)
  6. static_library("arc") {
  7. sources = [
  8. "appfuse/arc_appfuse_bridge.cc",
  9. "appfuse/arc_appfuse_bridge.h",
  10. "audio/arc_audio_bridge.cc",
  11. "audio/arc_audio_bridge.h",
  12. "bluetooth/bluetooth_type_converters.cc",
  13. "bluetooth/bluetooth_type_converters.h",
  14. "camera/arc_camera_bridge.cc",
  15. "camera/arc_camera_bridge.h",
  16. "clipboard/arc_clipboard_bridge.cc",
  17. "clipboard/arc_clipboard_bridge.h",
  18. "compat_mode/arc_resize_lock_manager.cc",
  19. "compat_mode/arc_resize_lock_manager.h",
  20. "compat_mode/arc_resize_lock_pref_delegate.h",
  21. "compat_mode/arc_splash_screen_dialog_view.cc",
  22. "compat_mode/arc_splash_screen_dialog_view.h",
  23. "compat_mode/arc_window_property_util.cc",
  24. "compat_mode/arc_window_property_util.h",
  25. "compat_mode/compat_mode_button.cc",
  26. "compat_mode/compat_mode_button.h",
  27. "compat_mode/compat_mode_button_controller.cc",
  28. "compat_mode/compat_mode_button_controller.h",
  29. "compat_mode/metrics.cc",
  30. "compat_mode/metrics.h",
  31. "compat_mode/overlay_dialog.cc",
  32. "compat_mode/overlay_dialog.h",
  33. "compat_mode/resize_confirmation_dialog_view.cc",
  34. "compat_mode/resize_confirmation_dialog_view.h",
  35. "compat_mode/resize_toggle_menu.cc",
  36. "compat_mode/resize_toggle_menu.h",
  37. "compat_mode/resize_util.cc",
  38. "compat_mode/resize_util.h",
  39. "compat_mode/style/arc_color_provider.cc",
  40. "compat_mode/style/arc_color_provider.h",
  41. "compat_mode/touch_mode_mouse_rewriter.cc",
  42. "compat_mode/touch_mode_mouse_rewriter.h",
  43. "crash_collector/arc_crash_collector_bridge.cc",
  44. "crash_collector/arc_crash_collector_bridge.h",
  45. "disk_quota/arc_disk_quota_bridge.cc",
  46. "disk_quota/arc_disk_quota_bridge.h",
  47. "ime/arc_ime_bridge.h",
  48. "ime/arc_ime_bridge_impl.cc",
  49. "ime/arc_ime_bridge_impl.h",
  50. "ime/arc_ime_service.cc",
  51. "ime/arc_ime_service.h",
  52. "ime/arc_ime_util.cc",
  53. "ime/arc_ime_util.h",
  54. "ime/key_event_result_receiver.cc",
  55. "ime/key_event_result_receiver.h",
  56. "keyboard_shortcut/arc_keyboard_shortcut_bridge.cc",
  57. "keyboard_shortcut/arc_keyboard_shortcut_bridge.h",
  58. "lock_screen/arc_lock_screen_bridge.cc",
  59. "lock_screen/arc_lock_screen_bridge.h",
  60. "memory/arc_memory_bridge.cc",
  61. "memory/arc_memory_bridge.h",
  62. "memory_pressure/arc_memory_pressure_bridge.cc",
  63. "memory_pressure/arc_memory_pressure_bridge.h",
  64. "metrics/arc_metrics_anr.cc",
  65. "metrics/arc_metrics_anr.h",
  66. "metrics/arc_metrics_service.cc",
  67. "metrics/arc_metrics_service.h",
  68. "metrics/stability_metrics_manager.cc",
  69. "metrics/stability_metrics_manager.h",
  70. "midis/arc_midis_bridge.cc",
  71. "midis/arc_midis_bridge.h",
  72. "net/always_on_vpn_manager.cc",
  73. "net/always_on_vpn_manager.h",
  74. "net/arc_net_host_impl.cc",
  75. "net/arc_net_host_impl.h",
  76. "net/cert_manager.h",
  77. "obb_mounter/arc_obb_mounter_bridge.cc",
  78. "obb_mounter/arc_obb_mounter_bridge.h",
  79. "pay/arc_digital_goods_bridge.cc",
  80. "pay/arc_digital_goods_bridge.h",
  81. "pay/arc_payment_app_bridge.cc",
  82. "pay/arc_payment_app_bridge.h",
  83. "power/arc_power_bridge.cc",
  84. "power/arc_power_bridge.h",
  85. "property/arc_property_bridge.cc",
  86. "property/arc_property_bridge.h",
  87. "rotation_lock/arc_rotation_lock_bridge.cc",
  88. "rotation_lock/arc_rotation_lock_bridge.h",
  89. "sensor/arc_iio_sensor_bridge.cc",
  90. "sensor/arc_iio_sensor_bridge.h",
  91. "sensor/arc_sensor_bridge.cc",
  92. "sensor/arc_sensor_bridge.h",
  93. "storage_manager/arc_storage_manager.cc",
  94. "storage_manager/arc_storage_manager.h",
  95. "system_ui/arc_system_ui_bridge.cc",
  96. "system_ui/arc_system_ui_bridge.h",
  97. "timer/arc_timer_bridge.cc",
  98. "timer/arc_timer_bridge.h",
  99. "usb/usb_host_bridge.cc",
  100. "usb/usb_host_bridge.h",
  101. "usb/usb_host_ui_delegate.h",
  102. "volume_mounter/arc_volume_mounter_bridge.cc",
  103. "volume_mounter/arc_volume_mounter_bridge.h",
  104. "wake_lock/arc_wake_lock_bridge.cc",
  105. "wake_lock/arc_wake_lock_bridge.h",
  106. ]
  107. public_deps = [
  108. ":arc_base",
  109. ":arc_metrics_constants",
  110. ":prefs",
  111. "//chromeos/ash/components/cryptohome",
  112. ]
  113. deps = [
  114. "//ash",
  115. "//ash/components/arc/vector_icons",
  116. "//ash/components/disks",
  117. "//ash/keyboard/ui",
  118. "//ash/public/cpp",
  119. "//ash/public/cpp/external_arc:external_arc",
  120. "//chromeos/ash/components/audio",
  121. "//chromeos/ash/components/dbus",
  122. "//chromeos/ash/components/dbus/arc",
  123. "//chromeos/ash/components/dbus/concierge",
  124. "//chromeos/ash/components/dbus/concierge:concierge_proto",
  125. "//chromeos/ash/components/dbus/cryptohome",
  126. "//chromeos/ash/components/dbus/patchpanel",
  127. "//chromeos/ash/components/dbus/patchpanel:patchpanel_proto",
  128. "//chromeos/ash/components/dbus/resourced",
  129. "//chromeos/ash/components/dbus/session_manager",
  130. "//chromeos/ash/components/dbus/shill",
  131. "//chromeos/ash/components/dbus/spaced:spaced",
  132. "//chromeos/ash/components/dbus/upstart:upstart",
  133. "//chromeos/ash/components/dbus/userdataauth",
  134. "//chromeos/ash/components/dbus/userdataauth:userdataauth_proto",
  135. "//chromeos/ash/components/network",
  136. "//chromeos/components/disks:prefs",
  137. "//chromeos/components/sensors:sensors",
  138. "//chromeos/dbus/permission_broker",
  139. "//chromeos/dbus/power",
  140. "//chromeos/dbus/power:power_manager_proto",
  141. "//chromeos/login/login_state",
  142. "//chromeos/ui/frame",
  143. "//components/device_event_log",
  144. "//components/exo",
  145. "//components/guest_os",
  146. "//components/metrics",
  147. "//components/prefs",
  148. "//components/session_manager/core",
  149. # TODO(b/208907272): Move (maybe split) components_strings to ash.
  150. "//components/strings:components_strings_grit",
  151. "//components/user_prefs",
  152. "//content/public/browser",
  153. "//media/capture:capture_lib",
  154. "//third_party/re2",
  155. "//ui/base/ime/ash",
  156. "//ui/chromeos/strings",
  157. "//ui/chromeos/styles:cros_styles_views",
  158. "//ui/display/manager",
  159. "//ui/display/util",
  160. "//ui/events/ozone",
  161. "//ui/wm/public",
  162. ]
  163. # Enable VLOG(1).
  164. defines = [ "ENABLED_VLOG_LEVEL=1" ]
  165. }
  166. static_library("prefs") {
  167. sources = [
  168. "arc_export.h",
  169. "arc_prefs.cc",
  170. "arc_prefs.h",
  171. ]
  172. defines = [ "ARC_IMPLEMENTATION" ]
  173. deps = [
  174. "//ash/components/arc/session:arc_base_enums",
  175. "//build:chromeos_buildflags",
  176. "//components/guest_os:prefs",
  177. "//components/prefs",
  178. ]
  179. }
  180. source_set("arc_features") {
  181. sources = [
  182. "arc_features.cc",
  183. "arc_features.h",
  184. ]
  185. deps = [ "//base" ]
  186. }
  187. static_library("arc_base_utils") {
  188. sources = [
  189. "arc_util.cc",
  190. "arc_util.h",
  191. ]
  192. public_deps = [ ":arc_features" ]
  193. deps = [
  194. "//ash/constants",
  195. "//ash/public/cpp",
  196. "//base",
  197. "//chromeos/ash/components/dbus",
  198. "//chromeos/ash/components/dbus/concierge:concierge_proto",
  199. "//chromeos/ash/components/dbus/debug_daemon",
  200. "//chromeos/ash/components/dbus/session_manager",
  201. "//chromeos/ash/components/dbus/upstart:upstart",
  202. "//components/exo",
  203. "//ui/aura",
  204. ]
  205. }
  206. static_library("arc_base") {
  207. # TODO(hidehiko): Revisit here and move back some files to "arc"
  208. # on completion to move ArcSession task to ArcSessionManager.
  209. sources = [
  210. "arc_browser_context_keyed_service_factory_base.h",
  211. "arc_features_parser.cc",
  212. "arc_features_parser.h",
  213. ]
  214. deps = [
  215. "//base",
  216. "//components/account_id",
  217. "//components/keyed_service/content",
  218. ]
  219. public_deps = [
  220. ":arc_base_utils",
  221. "//ash/components/arc/mojom",
  222. "//ash/components/arc/session",
  223. "//ash/components/arc/session:arc_base_enums",
  224. "//ash/components/arc/session:connection_holder",
  225. "//dbus",
  226. ]
  227. }
  228. static_library("compat_mode_test_support") {
  229. testonly = true
  230. sources = [
  231. "compat_mode/test/compat_mode_test_base.cc",
  232. "compat_mode/test/compat_mode_test_base.h",
  233. ]
  234. deps = [
  235. ":arc",
  236. "//ash/constants",
  237. "//ash/public/cpp",
  238. "//base",
  239. "//ui/aura",
  240. "//ui/display:test_support",
  241. "//ui/events:test_support",
  242. "//ui/views",
  243. "//ui/views:test_support",
  244. ]
  245. }
  246. static_library("notification_test_support") {
  247. testonly = true
  248. sources = [
  249. "test/connection_holder_util.h",
  250. "test/fake_notifications_instance.cc",
  251. "test/fake_notifications_instance.h",
  252. ]
  253. public_deps = [
  254. "//ash/components/arc/mojom:notifications",
  255. "//ash/components/arc/session:connection_holder",
  256. ]
  257. }
  258. static_library("arc_test_support") {
  259. testonly = true
  260. sources = [
  261. "test/arc_payment_app_bridge_test_support.cc",
  262. "test/arc_payment_app_bridge_test_support.h",
  263. "test/arc_util_test_support.cc",
  264. "test/arc_util_test_support.h",
  265. "test/fake_accessibility_helper_instance.cc",
  266. "test/fake_accessibility_helper_instance.h",
  267. "test/fake_adbd_monitor_instance.cc",
  268. "test/fake_adbd_monitor_instance.h",
  269. "test/fake_app_host.cc",
  270. "test/fake_app_host.h",
  271. "test/fake_app_instance.cc",
  272. "test/fake_app_instance.h",
  273. "test/fake_apps_tracker.cc",
  274. "test/fake_apps_tracker.h",
  275. "test/fake_arc_bridge_host.cc",
  276. "test/fake_arc_bridge_host.h",
  277. "test/fake_arc_session.cc",
  278. "test/fake_arc_session.h",
  279. "test/fake_backup_settings_instance.cc",
  280. "test/fake_backup_settings_instance.h",
  281. "test/fake_bluetooth_instance.cc",
  282. "test/fake_bluetooth_instance.h",
  283. "test/fake_clipboard_instance.cc",
  284. "test/fake_clipboard_instance.h",
  285. "test/fake_file_system_instance.cc",
  286. "test/fake_file_system_instance.h",
  287. "test/fake_iio_sensor_instance.cc",
  288. "test/fake_iio_sensor_instance.h",
  289. "test/fake_lock_screen_instance.cc",
  290. "test/fake_lock_screen_instance.h",
  291. "test/fake_memory_instance.cc",
  292. "test/fake_memory_instance.h",
  293. "test/fake_nearby_share_instance.cc",
  294. "test/fake_nearby_share_instance.h",
  295. "test/fake_net_instance.cc",
  296. "test/fake_net_instance.h",
  297. "test/fake_pip_instance.cc",
  298. "test/fake_pip_instance.h",
  299. "test/fake_policy_instance.cc",
  300. "test/fake_policy_instance.h",
  301. "test/fake_power_instance.cc",
  302. "test/fake_power_instance.h",
  303. "test/fake_privacy_items_instance.cc",
  304. "test/fake_privacy_items_instance.h",
  305. "test/fake_process_instance.cc",
  306. "test/fake_process_instance.h",
  307. "test/fake_sharesheet_instance.cc",
  308. "test/fake_sharesheet_instance.h",
  309. "test/fake_snapshot_reboot_notification.cc",
  310. "test/fake_snapshot_reboot_notification.h",
  311. "test/fake_storage_manager_instance.cc",
  312. "test/fake_storage_manager_instance.h",
  313. "test/fake_system_ui_instance.cc",
  314. "test/fake_system_ui_instance.h",
  315. "test/fake_timer_instance.cc",
  316. "test/fake_timer_instance.h",
  317. "test/fake_tracing_instance.cc",
  318. "test/fake_tracing_instance.h",
  319. "test/fake_wake_lock_instance.cc",
  320. "test/fake_wake_lock_instance.h",
  321. "test/fake_wallpaper_instance.cc",
  322. "test/fake_wallpaper_instance.h",
  323. "test/fake_webapk_instance.cc",
  324. "test/fake_webapk_instance.h",
  325. "test/test_browser_context.cc",
  326. "test/test_browser_context.h",
  327. ]
  328. data = [
  329. "//ash/components/arc/test/data/icons/",
  330. "//ash/components/arc/test/data/mem_profile/",
  331. ]
  332. public_deps = [
  333. ":notification_test_support",
  334. "//ash/components/arc:compat_mode_test_support",
  335. "//components/arc:arc",
  336. ]
  337. deps = [
  338. ":arc",
  339. "//ash/components/arc/enterprise",
  340. "//ash/constants",
  341. "//base",
  342. "//components/keyed_service/content",
  343. "//components/prefs:test_support",
  344. "//components/user_prefs",
  345. "//content/test:test_support",
  346. "//mojo/public/cpp/platform",
  347. "//mojo/public/cpp/system",
  348. ]
  349. }
  350. source_set("arc_metrics_constants") {
  351. sources = [ "metrics/arc_metrics_constants.h" ]
  352. }
  353. source_set("unit_tests") {
  354. testonly = true
  355. sources = [
  356. "appfuse/arc_appfuse_bridge_unittest.cc",
  357. "arc_features_parser_unittest.cc",
  358. "arc_util_unittest.cc",
  359. "audio/arc_audio_bridge_unittest.cc",
  360. "bluetooth/bluetooth_mojom_traits_unittest.cc",
  361. "bluetooth/bluetooth_type_converters_unittest.cc",
  362. "camera/arc_camera_bridge_unittest.cc",
  363. "clipboard/arc_clipboard_bridge_unittest.cc",
  364. "compat_mode/arc_resize_lock_manager_unittest.cc",
  365. "compat_mode/arc_splash_screen_dialog_view_unittest.cc",
  366. "compat_mode/compat_mode_button_controller_unittest.cc",
  367. "compat_mode/compat_mode_button_unittest.cc",
  368. "compat_mode/overlay_dialog_unittest.cc",
  369. "compat_mode/resize_confirmation_dialog_view_unittest.cc",
  370. "compat_mode/resize_toggle_menu_unittest.cc",
  371. "compat_mode/resize_util_unittest.cc",
  372. "compat_mode/touch_mode_mouse_rewriter_unittest.cc",
  373. "crash_collector/arc_crash_collector_bridge_unittest.cc",
  374. "enterprise/arc_data_remove_requested_pref_handler_unittest.cc",
  375. "enterprise/arc_data_snapshotd_bridge_unittest.cc",
  376. "enterprise/arc_data_snapshotd_manager_unittest.cc",
  377. "enterprise/snapshot_hours_policy_service_unittest.cc",
  378. "enterprise/snapshot_reboot_controller_unittest.cc",
  379. "enterprise/snapshot_session_controller_unittest.cc",
  380. "ime/arc_ime_service_unittest.cc",
  381. "ime/key_event_result_receiver_unittest.cc",
  382. "lock_screen/arc_lock_screen_bridge_unittest.cc",
  383. "media_session/arc_media_session_bridge_unittest.cc",
  384. "memory/arc_memory_bridge_unittest.cc",
  385. "memory_pressure/arc_memory_pressure_bridge_unittest.cc",
  386. "metrics/arc_metrics_anr_unittest.cc",
  387. "metrics/arc_metrics_service_unittest.cc",
  388. "metrics/stability_metrics_manager_unittest.cc",
  389. "midis/arc_midis_bridge_unittest.cc",
  390. "net/always_on_vpn_manager_unittest.cc",
  391. "net/arc_net_host_impl_unittest.cc",
  392. "pay/arc_payment_app_bridge_unittest.cc",
  393. "power/arc_power_bridge_unittest.cc",
  394. "property/arc_property_bridge_unittest.cc",
  395. "rotation_lock/arc_rotation_lock_bridge_unittest.cc",
  396. "sensor/arc_iio_sensor_bridge_unittest.cc",
  397. "storage_manager/arc_storage_manager_unittest.cc",
  398. "system_ui/arc_system_ui_bridge_unittest.cc",
  399. "timer/arc_timer_bridge_unittest.cc",
  400. "usb/usb_host_bridge_unittest.cc",
  401. "video_accelerator/arc_video_accelerator_util_unittest.cc",
  402. "volume_mounter/arc_volume_mounter_bridge_unittest.cc",
  403. "wake_lock/arc_wake_lock_bridge_unittest.cc",
  404. ]
  405. # TODO(b/129295708): Clean up unused deps. Update users of this target.
  406. deps = [
  407. ":arc",
  408. "//ash/components/arc:arc_test_support",
  409. "//ash/components/arc/enterprise",
  410. "//ash/components/arc/media_session",
  411. "//ash/components/arc/video_accelerator:common",
  412. "//ash/components/disks:test_support",
  413. "//ash/components/policy",
  414. "//ash/constants",
  415. "//ash/keyboard/ui",
  416. "//ash/public/cpp",
  417. "//ash/public/cpp/external_arc:external_arc",
  418. "//base",
  419. "//base/test:test_support",
  420. "//chromeos",
  421. "//chromeos/ash/components/cryptohome",
  422. "//chromeos/ash/components/dbus/arc",
  423. "//chromeos/ash/components/dbus/concierge",
  424. "//chromeos/ash/components/dbus/patchpanel",
  425. "//chromeos/ash/components/dbus/patchpanel:patchpanel_proto",
  426. "//chromeos/ash/components/dbus/resourced",
  427. "//chromeos/ash/components/dbus/session_manager",
  428. "//chromeos/ash/components/dbus/session_manager:login_manager_proto",
  429. "//chromeos/ash/components/dbus/shill",
  430. "//chromeos/ash/components/dbus/upstart",
  431. "//chromeos/ash/components/network:test_support",
  432. "//chromeos/dbus/dlcservice",
  433. "//chromeos/dbus/permission_broker",
  434. "//chromeos/dbus/power",
  435. "//chromeos/dbus/power:power_manager_proto",
  436. "//chromeos/dbus/tpm_manager:tpm_manager",
  437. "//chromeos/ui/frame",
  438. "//components/account_id",
  439. "//components/exo",
  440. "//components/exo:test_support",
  441. "//components/keyed_service/content",
  442. "//components/prefs:test_support",
  443. "//components/session_manager/core:core",
  444. "//components/user_manager",
  445. "//components/user_manager:test_support",
  446. "//content/public/common",
  447. "//content/test:test_support",
  448. "//device/bluetooth",
  449. "//mojo/public/cpp/system:system",
  450. "//services/device/public/cpp:test_support",
  451. "//services/device/public/mojom",
  452. "//testing/gmock",
  453. "//testing/gtest",
  454. "//ui/aura",
  455. "//ui/aura:test_support",
  456. "//ui/base:test_support",
  457. "//ui/base/clipboard",
  458. "//ui/base/ime",
  459. "//ui/events",
  460. "//ui/events:dom_keycode_converter",
  461. "//ui/events:test_support",
  462. "//ui/ozone",
  463. "//ui/views:test_support",
  464. "//url:url",
  465. ]
  466. }