BUILD.gn 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503
  1. # Copyright (c) 2018 GitHub, Inc.
  2. # Use of this source code is governed by the MIT license that can be
  3. # found in the LICENSE file.
  4. import("//build/config/ozone.gni")
  5. import("//build/config/ui.gni")
  6. import("//components/spellcheck/spellcheck_build_features.gni")
  7. import("//electron/buildflags/buildflags.gni")
  8. import("//printing/buildflags/buildflags.gni")
  9. import("//third_party/widevine/cdm/widevine.gni")
  10. # Builds some of the chrome sources that Electron depends on.
  11. static_library("chrome") {
  12. visibility = [ "//electron:electron_lib" ]
  13. sources = [
  14. "//ash/style/rounded_rect_cutout_path_builder.cc",
  15. "//ash/style/rounded_rect_cutout_path_builder.h",
  16. "//chrome/browser/app_mode/app_mode_utils.cc",
  17. "//chrome/browser/app_mode/app_mode_utils.h",
  18. "//chrome/browser/browser_features.cc",
  19. "//chrome/browser/browser_features.h",
  20. "//chrome/browser/browser_process.cc",
  21. "//chrome/browser/browser_process.h",
  22. "//chrome/browser/devtools/devtools_contents_resizing_strategy.cc",
  23. "//chrome/browser/devtools/devtools_contents_resizing_strategy.h",
  24. "//chrome/browser/devtools/devtools_embedder_message_dispatcher.cc",
  25. "//chrome/browser/devtools/devtools_embedder_message_dispatcher.h",
  26. "//chrome/browser/devtools/devtools_eye_dropper.cc",
  27. "//chrome/browser/devtools/devtools_eye_dropper.h",
  28. "//chrome/browser/devtools/devtools_file_system_indexer.cc",
  29. "//chrome/browser/devtools/devtools_file_system_indexer.h",
  30. "//chrome/browser/devtools/devtools_settings.h",
  31. "//chrome/browser/devtools/features.cc",
  32. "//chrome/browser/devtools/features.h",
  33. "//chrome/browser/devtools/visual_logging.cc",
  34. "//chrome/browser/devtools/visual_logging.h",
  35. "//chrome/browser/file_system_access/file_system_access_features.cc",
  36. "//chrome/browser/file_system_access/file_system_access_features.h",
  37. "//chrome/browser/icon_loader.cc",
  38. "//chrome/browser/icon_loader.h",
  39. "//chrome/browser/icon_manager.cc",
  40. "//chrome/browser/icon_manager.h",
  41. "//chrome/browser/media/webrtc/delegated_source_list_capturer.cc",
  42. "//chrome/browser/media/webrtc/delegated_source_list_capturer.h",
  43. "//chrome/browser/media/webrtc/desktop_capturer_wrapper.cc",
  44. "//chrome/browser/media/webrtc/desktop_capturer_wrapper.h",
  45. "//chrome/browser/media/webrtc/desktop_media_list.cc",
  46. "//chrome/browser/media/webrtc/desktop_media_list.h",
  47. "//chrome/browser/media/webrtc/desktop_media_list_base.cc",
  48. "//chrome/browser/media/webrtc/desktop_media_list_base.h",
  49. "//chrome/browser/media/webrtc/desktop_media_list_observer.h",
  50. "//chrome/browser/media/webrtc/native_desktop_media_list.cc",
  51. "//chrome/browser/media/webrtc/native_desktop_media_list.h",
  52. "//chrome/browser/media/webrtc/thumbnail_capturer.cc",
  53. "//chrome/browser/media/webrtc/thumbnail_capturer.h",
  54. "//chrome/browser/media/webrtc/window_icon_util.h",
  55. "//chrome/browser/net/chrome_mojo_proxy_resolver_factory.cc",
  56. "//chrome/browser/net/chrome_mojo_proxy_resolver_factory.h",
  57. "//chrome/browser/net/proxy_config_monitor.cc",
  58. "//chrome/browser/net/proxy_config_monitor.h",
  59. "//chrome/browser/net/proxy_service_factory.cc",
  60. "//chrome/browser/net/proxy_service_factory.h",
  61. "//chrome/browser/picture_in_picture/picture_in_picture_bounds_cache.cc",
  62. "//chrome/browser/picture_in_picture/picture_in_picture_bounds_cache.h",
  63. "//chrome/browser/picture_in_picture/picture_in_picture_occlusion_tracker.cc",
  64. "//chrome/browser/picture_in_picture/picture_in_picture_occlusion_tracker.h",
  65. "//chrome/browser/picture_in_picture/picture_in_picture_occlusion_tracker_observer.cc",
  66. "//chrome/browser/picture_in_picture/picture_in_picture_occlusion_tracker_observer.h",
  67. "//chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc",
  68. "//chrome/browser/picture_in_picture/picture_in_picture_window_manager.h",
  69. "//chrome/browser/picture_in_picture/scoped_picture_in_picture_occlusion_observation.cc",
  70. "//chrome/browser/picture_in_picture/scoped_picture_in_picture_occlusion_observation.h",
  71. "//chrome/browser/platform_util.cc",
  72. "//chrome/browser/platform_util.h",
  73. "//chrome/browser/predictors/preconnect_manager.cc",
  74. "//chrome/browser/predictors/preconnect_manager.h",
  75. "//chrome/browser/predictors/predictors_features.cc",
  76. "//chrome/browser/predictors/predictors_features.h",
  77. "//chrome/browser/predictors/proxy_lookup_client_impl.cc",
  78. "//chrome/browser/predictors/proxy_lookup_client_impl.h",
  79. "//chrome/browser/predictors/resolve_host_client_impl.cc",
  80. "//chrome/browser/predictors/resolve_host_client_impl.h",
  81. "//chrome/browser/process_singleton.h",
  82. "//chrome/browser/process_singleton_internal.cc",
  83. "//chrome/browser/process_singleton_internal.h",
  84. "//chrome/browser/themes/browser_theme_pack.cc",
  85. "//chrome/browser/themes/browser_theme_pack.h",
  86. "//chrome/browser/themes/custom_theme_supplier.cc",
  87. "//chrome/browser/themes/custom_theme_supplier.h",
  88. "//chrome/browser/themes/theme_properties.cc",
  89. "//chrome/browser/themes/theme_properties.h",
  90. "//chrome/browser/ui/color/chrome_color_mixers.cc",
  91. "//chrome/browser/ui/color/chrome_color_mixers.h",
  92. "//chrome/browser/ui/exclusive_access/exclusive_access_bubble_type.cc",
  93. "//chrome/browser/ui/exclusive_access/exclusive_access_bubble_type.h",
  94. "//chrome/browser/ui/exclusive_access/exclusive_access_controller_base.cc",
  95. "//chrome/browser/ui/exclusive_access/exclusive_access_controller_base.h",
  96. "//chrome/browser/ui/exclusive_access/exclusive_access_manager.cc",
  97. "//chrome/browser/ui/exclusive_access/exclusive_access_manager.h",
  98. "//chrome/browser/ui/exclusive_access/exclusive_access_permission_manager.cc",
  99. "//chrome/browser/ui/exclusive_access/exclusive_access_permission_manager.h",
  100. "//chrome/browser/ui/exclusive_access/fullscreen_controller.cc",
  101. "//chrome/browser/ui/exclusive_access/fullscreen_controller.h",
  102. "//chrome/browser/ui/exclusive_access/fullscreen_within_tab_helper.cc",
  103. "//chrome/browser/ui/exclusive_access/fullscreen_within_tab_helper.h",
  104. "//chrome/browser/ui/exclusive_access/keyboard_lock_controller.cc",
  105. "//chrome/browser/ui/exclusive_access/keyboard_lock_controller.h",
  106. "//chrome/browser/ui/exclusive_access/pointer_lock_controller.cc",
  107. "//chrome/browser/ui/exclusive_access/pointer_lock_controller.h",
  108. "//chrome/browser/ui/frame/window_frame_util.cc",
  109. "//chrome/browser/ui/frame/window_frame_util.h",
  110. "//chrome/browser/ui/ui_features.cc",
  111. "//chrome/browser/ui/ui_features.h",
  112. "//chrome/browser/ui/view_ids.h",
  113. "//chrome/browser/ui/views/eye_dropper/eye_dropper.cc",
  114. "//chrome/browser/ui/views/eye_dropper/eye_dropper.h",
  115. "//chrome/browser/ui/views/overlay/back_to_tab_button.cc",
  116. "//chrome/browser/ui/views/overlay/back_to_tab_button.h",
  117. "//chrome/browser/ui/views/overlay/back_to_tab_label_button.cc",
  118. "//chrome/browser/ui/views/overlay/close_image_button.cc",
  119. "//chrome/browser/ui/views/overlay/close_image_button.h",
  120. "//chrome/browser/ui/views/overlay/constants.h",
  121. "//chrome/browser/ui/views/overlay/hang_up_button.cc",
  122. "//chrome/browser/ui/views/overlay/hang_up_button.h",
  123. "//chrome/browser/ui/views/overlay/minimize_button.cc",
  124. "//chrome/browser/ui/views/overlay/minimize_button.h",
  125. "//chrome/browser/ui/views/overlay/overlay_window_image_button.cc",
  126. "//chrome/browser/ui/views/overlay/overlay_window_image_button.h",
  127. "//chrome/browser/ui/views/overlay/playback_image_button.cc",
  128. "//chrome/browser/ui/views/overlay/playback_image_button.h",
  129. "//chrome/browser/ui/views/overlay/resize_handle_button.cc",
  130. "//chrome/browser/ui/views/overlay/resize_handle_button.h",
  131. "//chrome/browser/ui/views/overlay/simple_overlay_window_image_button.cc",
  132. "//chrome/browser/ui/views/overlay/simple_overlay_window_image_button.h",
  133. "//chrome/browser/ui/views/overlay/skip_ad_label_button.cc",
  134. "//chrome/browser/ui/views/overlay/skip_ad_label_button.h",
  135. "//chrome/browser/ui/views/overlay/toggle_camera_button.cc",
  136. "//chrome/browser/ui/views/overlay/toggle_camera_button.h",
  137. "//chrome/browser/ui/views/overlay/toggle_microphone_button.cc",
  138. "//chrome/browser/ui/views/overlay/toggle_microphone_button.h",
  139. "//chrome/browser/ui/views/overlay/video_overlay_window_views.cc",
  140. "//chrome/browser/ui/views/overlay/video_overlay_window_views.h",
  141. "//chrome/browser/ui/webui/accessibility/accessibility_ui.cc",
  142. "//chrome/browser/ui/webui/accessibility/accessibility_ui.h",
  143. "//extensions/browser/app_window/size_constraints.cc",
  144. "//extensions/browser/app_window/size_constraints.h",
  145. "//ui/base/accelerators/global_accelerator_listener/global_accelerator_listener.cc",
  146. "//ui/base/accelerators/global_accelerator_listener/global_accelerator_listener.h",
  147. "//ui/views/native_window_tracker.h",
  148. ]
  149. if (is_posix) {
  150. sources += [ "//chrome/browser/process_singleton_posix.cc" ]
  151. }
  152. if (is_win) {
  153. sources += [
  154. "//chrome/browser/icon_loader_win.cc",
  155. "//chrome/browser/media/webrtc/window_icon_util_win.cc",
  156. "//chrome/browser/process_singleton_win.cc",
  157. "//chrome/browser/win/chrome_process_finder.cc",
  158. "//chrome/browser/win/chrome_process_finder.h",
  159. "//chrome/browser/win/chrome_select_file_dialog_factory.cc",
  160. "//chrome/browser/win/chrome_select_file_dialog_factory.h",
  161. "//chrome/browser/win/titlebar_config.cc",
  162. "//chrome/browser/win/titlebar_config.h",
  163. "//chrome/browser/win/util_win_service.cc",
  164. "//chrome/browser/win/util_win_service.h",
  165. "//chrome/child/v8_crashpad_support_win.cc",
  166. "//chrome/child/v8_crashpad_support_win.h",
  167. ]
  168. }
  169. if (is_linux) {
  170. sources += [ "//chrome/browser/media/webrtc/window_icon_util_ozone.cc" ]
  171. }
  172. public_deps = [
  173. "//chrome/browser/resources/accessibility:resources",
  174. "//chrome/browser/ui/color:color_headers",
  175. "//chrome/browser/ui/color:mixers",
  176. "//chrome/common",
  177. "//chrome/common:version_header",
  178. "//components/global_media_controls",
  179. "//components/keyed_service/content",
  180. "//components/paint_preview/buildflags",
  181. "//components/proxy_config",
  182. "//content/public/browser",
  183. "//services/strings",
  184. ]
  185. deps = [
  186. "//chrome/app/vector_icons",
  187. "//chrome/browser:resource_prefetch_predictor_proto",
  188. "//chrome/browser/resource_coordinator:mojo_bindings",
  189. "//chrome/browser/task_manager/common:impl",
  190. "//chrome/browser/ui/webui/tab_search:mojo_bindings",
  191. "//chrome/browser/web_applications/mojom:mojom_web_apps_enum",
  192. "//components/enterprise/buildflags",
  193. "//components/enterprise/common/proto:connectors_proto",
  194. "//components/enterprise/obfuscation/core:enterprise_obfuscation",
  195. "//components/safe_browsing/core/browser/db:safebrowsing_proto",
  196. "//components/vector_icons:vector_icons",
  197. "//ui/base/accelerators/global_accelerator_listener",
  198. "//ui/snapshot",
  199. "//ui/views/controls/webview",
  200. ]
  201. if (use_aura) {
  202. sources += [
  203. "//chrome/browser/platform_util_aura.cc",
  204. "//chrome/browser/ui/views/eye_dropper/eye_dropper_aura.cc",
  205. "//ui/views/native_window_tracker_aura.cc",
  206. "//ui/views/native_window_tracker_aura.h",
  207. ]
  208. deps += [ "//components/eye_dropper" ]
  209. }
  210. if (is_linux) {
  211. sources += [
  212. "//chrome/browser/icon_loader_auralinux.cc",
  213. "//ui/base/accelerators/global_accelerator_listener/global_accelerator_listener_linux.cc",
  214. "//ui/base/accelerators/global_accelerator_listener/global_accelerator_listener_linux.h",
  215. ]
  216. sources += [
  217. "//chrome/browser/ui/views/status_icons/concat_menu_model.cc",
  218. "//chrome/browser/ui/views/status_icons/concat_menu_model.h",
  219. "//chrome/browser/ui/views/status_icons/status_icon_linux_dbus.cc",
  220. "//chrome/browser/ui/views/status_icons/status_icon_linux_dbus.h",
  221. ]
  222. sources += [
  223. "//chrome/browser/ui/views/dark_mode_manager_linux.cc",
  224. "//chrome/browser/ui/views/dark_mode_manager_linux.h",
  225. ]
  226. public_deps += [ "//components/dbus" ]
  227. }
  228. if (is_win) {
  229. sources += [
  230. "//chrome/browser/win/icon_reader_service.cc",
  231. "//chrome/browser/win/icon_reader_service.h",
  232. ]
  233. public_deps += [
  234. "//chrome/browser/web_applications/proto",
  235. "//chrome/services/util_win:lib",
  236. "//components/webapps/common:mojo_bindings",
  237. ]
  238. deps += [
  239. "//chrome/services/util_win/public/mojom",
  240. "//components/compose/core/browser:mojo_bindings",
  241. "//components/segmentation_platform/public/proto",
  242. ]
  243. }
  244. if (is_mac) {
  245. sources += [
  246. "//chrome/browser/icon_loader_mac.mm",
  247. "//chrome/browser/media/webrtc/system_media_capture_permissions_mac.h",
  248. "//chrome/browser/media/webrtc/system_media_capture_permissions_mac.mm",
  249. "//chrome/browser/media/webrtc/system_media_capture_permissions_stats_mac.h",
  250. "//chrome/browser/media/webrtc/system_media_capture_permissions_stats_mac.mm",
  251. "//chrome/browser/media/webrtc/thumbnail_capturer_mac.h",
  252. "//chrome/browser/media/webrtc/thumbnail_capturer_mac.mm",
  253. "//chrome/browser/media/webrtc/window_icon_util_mac.mm",
  254. "//chrome/browser/permissions/system/media_authorization_wrapper_mac.h",
  255. "//chrome/browser/platform_util_mac.mm",
  256. "//chrome/browser/process_singleton_mac.mm",
  257. "//chrome/browser/ui/views/eye_dropper/eye_dropper_view_mac.h",
  258. "//chrome/browser/ui/views/eye_dropper/eye_dropper_view_mac.mm",
  259. ]
  260. deps += [ ":system_media_capture_permissions_mac_conflict" ]
  261. }
  262. if (enable_widevine) {
  263. sources += [
  264. "//chrome/renderer/media/chrome_key_systems.cc",
  265. "//chrome/renderer/media/chrome_key_systems.h",
  266. "//chrome/renderer/media/chrome_key_systems_provider.cc",
  267. "//chrome/renderer/media/chrome_key_systems_provider.h",
  268. ]
  269. deps += [ "//components/cdm/renderer" ]
  270. }
  271. if (enable_printing) {
  272. sources += [
  273. "//chrome/browser/bad_message.cc",
  274. "//chrome/browser/bad_message.h",
  275. "//chrome/browser/printing/prefs_util.cc",
  276. "//chrome/browser/printing/prefs_util.h",
  277. "//chrome/browser/printing/print_compositor_util.cc",
  278. "//chrome/browser/printing/print_compositor_util.h",
  279. "//chrome/browser/printing/print_job.cc",
  280. "//chrome/browser/printing/print_job.h",
  281. "//chrome/browser/printing/print_job_manager.cc",
  282. "//chrome/browser/printing/print_job_manager.h",
  283. "//chrome/browser/printing/print_job_worker.cc",
  284. "//chrome/browser/printing/print_job_worker.h",
  285. "//chrome/browser/printing/print_job_worker_oop.cc",
  286. "//chrome/browser/printing/print_job_worker_oop.h",
  287. "//chrome/browser/printing/print_view_manager_base.cc",
  288. "//chrome/browser/printing/print_view_manager_base.h",
  289. "//chrome/browser/printing/printer_query.cc",
  290. "//chrome/browser/printing/printer_query.h",
  291. "//chrome/browser/printing/printer_query_oop.cc",
  292. "//chrome/browser/printing/printer_query_oop.h",
  293. "//chrome/browser/printing/printing_service.cc",
  294. "//chrome/browser/printing/printing_service.h",
  295. "//components/printing/browser/print_to_pdf/pdf_print_job.cc",
  296. "//components/printing/browser/print_to_pdf/pdf_print_job.h",
  297. "//components/printing/browser/print_to_pdf/pdf_print_result.cc",
  298. "//components/printing/browser/print_to_pdf/pdf_print_result.h",
  299. "//components/printing/browser/print_to_pdf/pdf_print_utils.cc",
  300. "//components/printing/browser/print_to_pdf/pdf_print_utils.h",
  301. ]
  302. if (enable_oop_printing) {
  303. sources += [
  304. "//chrome/browser/printing/oop_features.cc",
  305. "//chrome/browser/printing/oop_features.h",
  306. "//chrome/browser/printing/print_backend_service_manager.cc",
  307. "//chrome/browser/printing/print_backend_service_manager.h",
  308. ]
  309. }
  310. public_deps += [
  311. "//chrome/services/printing:lib",
  312. "//components/printing/browser",
  313. "//components/printing/renderer",
  314. "//components/services/print_compositor",
  315. "//components/services/print_compositor/public/cpp",
  316. "//components/services/print_compositor/public/mojom",
  317. "//printing/backend",
  318. ]
  319. deps += [
  320. "//components/printing/common",
  321. "//printing",
  322. ]
  323. if (is_win) {
  324. sources += [
  325. "//chrome/browser/printing/pdf_to_emf_converter.cc",
  326. "//chrome/browser/printing/pdf_to_emf_converter.h",
  327. "//chrome/browser/printing/printer_xml_parser_impl.cc",
  328. "//chrome/browser/printing/printer_xml_parser_impl.h",
  329. "//chrome/browser/printing/xps_features.cc",
  330. "//chrome/browser/printing/xps_features.h",
  331. ]
  332. deps += [ "//printing:printing_base" ]
  333. }
  334. }
  335. if (enable_electron_extensions) {
  336. sources += [
  337. "//chrome/browser/extensions/chrome_url_request_util.cc",
  338. "//chrome/browser/extensions/chrome_url_request_util.h",
  339. "//chrome/browser/plugins/plugin_response_interceptor_url_loader_throttle.cc",
  340. "//chrome/browser/plugins/plugin_response_interceptor_url_loader_throttle.h",
  341. "//chrome/renderer/extensions/api/extension_hooks_delegate.cc",
  342. "//chrome/renderer/extensions/api/extension_hooks_delegate.h",
  343. "//chrome/renderer/extensions/api/tabs_hooks_delegate.cc",
  344. "//chrome/renderer/extensions/api/tabs_hooks_delegate.h",
  345. ]
  346. if (enable_pdf_viewer) {
  347. sources += [
  348. "//chrome/browser/pdf/chrome_pdf_stream_delegate.cc",
  349. "//chrome/browser/pdf/chrome_pdf_stream_delegate.h",
  350. "//chrome/browser/pdf/pdf_extension_util.cc",
  351. "//chrome/browser/pdf/pdf_extension_util.h",
  352. "//chrome/browser/pdf/pdf_viewer_stream_manager.cc",
  353. "//chrome/browser/pdf/pdf_viewer_stream_manager.h",
  354. "//chrome/browser/plugins/pdf_iframe_navigation_throttle.cc",
  355. "//chrome/browser/plugins/pdf_iframe_navigation_throttle.h",
  356. ]
  357. deps += [
  358. "//components/pdf/browser",
  359. "//components/pdf/renderer",
  360. ]
  361. }
  362. } else {
  363. # These are required by the webRequest module.
  364. sources += [
  365. "//extensions/browser/api/declarative_net_request/request_action.cc",
  366. "//extensions/browser/api/declarative_net_request/request_action.h",
  367. "//extensions/browser/api/web_request/form_data_parser.cc",
  368. "//extensions/browser/api/web_request/form_data_parser.h",
  369. "//extensions/browser/api/web_request/upload_data_presenter.cc",
  370. "//extensions/browser/api/web_request/upload_data_presenter.h",
  371. "//extensions/browser/api/web_request/web_request_api_constants.cc",
  372. "//extensions/browser/api/web_request/web_request_api_constants.h",
  373. "//extensions/browser/api/web_request/web_request_info.cc",
  374. "//extensions/browser/api/web_request/web_request_info.h",
  375. "//extensions/browser/api/web_request/web_request_resource_type.cc",
  376. "//extensions/browser/api/web_request/web_request_resource_type.h",
  377. "//extensions/browser/extension_api_frame_id_map.cc",
  378. "//extensions/browser/extension_api_frame_id_map.h",
  379. "//extensions/browser/extension_navigation_ui_data.cc",
  380. "//extensions/browser/extension_navigation_ui_data.h",
  381. "//extensions/browser/extensions_browser_client.cc",
  382. "//extensions/browser/extensions_browser_client.h",
  383. "//extensions/browser/guest_view/web_view/web_view_renderer_state.cc",
  384. "//extensions/browser/guest_view/web_view/web_view_renderer_state.h",
  385. ]
  386. public_deps += [
  387. "//extensions/browser/api/declarative_net_request/flat:extension_ruleset",
  388. ]
  389. }
  390. if (!is_mas_build) {
  391. sources += [ "//chrome/browser/hang_monitor/hang_crash_dump.h" ]
  392. if (is_mac) {
  393. sources += [ "//chrome/browser/hang_monitor/hang_crash_dump_mac.cc" ]
  394. } else if (is_win) {
  395. sources += [ "//chrome/browser/hang_monitor/hang_crash_dump_win.cc" ]
  396. } else {
  397. sources += [ "//chrome/browser/hang_monitor/hang_crash_dump.cc" ]
  398. }
  399. }
  400. }
  401. # This source set is just so we don't have to depend on all of //chrome/browser
  402. # You may have to add new files here during the upgrade if //chrome/browser/spellchecker
  403. # gets more files
  404. source_set("chrome_spellchecker") {
  405. sources = []
  406. deps = []
  407. libs = []
  408. public_deps = []
  409. if (enable_builtin_spellchecker) {
  410. sources += [
  411. "//chrome/browser/profiles/profile_keyed_service_factory.cc",
  412. "//chrome/browser/profiles/profile_keyed_service_factory.h",
  413. "//chrome/browser/profiles/profile_selections.cc",
  414. "//chrome/browser/profiles/profile_selections.h",
  415. "//chrome/browser/spellchecker/spell_check_host_chrome_impl.cc",
  416. "//chrome/browser/spellchecker/spell_check_host_chrome_impl.h",
  417. "//chrome/browser/spellchecker/spell_check_initialization_host_impl.cc",
  418. "//chrome/browser/spellchecker/spell_check_initialization_host_impl.h",
  419. "//chrome/browser/spellchecker/spellcheck_custom_dictionary.cc",
  420. "//chrome/browser/spellchecker/spellcheck_custom_dictionary.h",
  421. "//chrome/browser/spellchecker/spellcheck_factory.cc",
  422. "//chrome/browser/spellchecker/spellcheck_factory.h",
  423. "//chrome/browser/spellchecker/spellcheck_hunspell_dictionary.cc",
  424. "//chrome/browser/spellchecker/spellcheck_hunspell_dictionary.h",
  425. "//chrome/browser/spellchecker/spellcheck_service.cc",
  426. "//chrome/browser/spellchecker/spellcheck_service.h",
  427. ]
  428. if (!is_mac) {
  429. sources += [
  430. "//chrome/browser/spellchecker/spellcheck_language_blocklist_policy_handler.cc",
  431. "//chrome/browser/spellchecker/spellcheck_language_blocklist_policy_handler.h",
  432. "//chrome/browser/spellchecker/spellcheck_language_policy_handler.cc",
  433. "//chrome/browser/spellchecker/spellcheck_language_policy_handler.h",
  434. ]
  435. }
  436. if (has_spellcheck_panel) {
  437. sources += [
  438. "//chrome/browser/spellchecker/spell_check_panel_host_impl.cc",
  439. "//chrome/browser/spellchecker/spell_check_panel_host_impl.h",
  440. ]
  441. }
  442. if (use_browser_spellchecker) {
  443. sources += [
  444. "//chrome/browser/spellchecker/spelling_request.cc",
  445. "//chrome/browser/spellchecker/spelling_request.h",
  446. ]
  447. }
  448. deps += [
  449. "//base:base_static",
  450. "//components/language/core/browser",
  451. "//components/spellcheck:buildflags",
  452. "//components/sync",
  453. ]
  454. public_deps += [ "//chrome/common:constants" ]
  455. }
  456. public_deps += [
  457. "//components/spellcheck/browser",
  458. "//components/spellcheck/common",
  459. "//components/spellcheck/renderer",
  460. ]
  461. }
  462. # These sources create an object file conflict with one in |:chrome|, so they
  463. # must live in a separate target.
  464. # Conflicting sources:
  465. # //chrome/browser/media/webrtc/system_media_capture_permissions_stats_mac.mm
  466. # //chrome/browser/permissions/system/system_media_capture_permissions_mac.mm
  467. source_set("system_media_capture_permissions_mac_conflict") {
  468. sources = [
  469. "//chrome/browser/permissions/system/system_media_capture_permissions_mac.h",
  470. "//chrome/browser/permissions/system/system_media_capture_permissions_mac.mm",
  471. ]
  472. deps = [ "//chrome/common" ]
  473. }