BUILD.gn 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218
  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/ui.gni")
  5. import("//electron/buildflags/buildflags.gni")
  6. import("//printing/buildflags/buildflags.gni")
  7. import("//third_party/widevine/cdm/widevine.gni")
  8. # Builds some of the chrome sources that Electron depends on.
  9. static_library("chrome") {
  10. visibility = [ "//electron:electron_lib" ]
  11. sources = [
  12. "//chrome/browser/browser_process.cc",
  13. "//chrome/browser/browser_process.h",
  14. "//chrome/browser/devtools/devtools_contents_resizing_strategy.cc",
  15. "//chrome/browser/devtools/devtools_contents_resizing_strategy.h",
  16. "//chrome/browser/devtools/devtools_embedder_message_dispatcher.cc",
  17. "//chrome/browser/devtools/devtools_embedder_message_dispatcher.h",
  18. "//chrome/browser/devtools/devtools_file_system_indexer.cc",
  19. "//chrome/browser/devtools/devtools_file_system_indexer.h",
  20. "//chrome/browser/extensions/global_shortcut_listener.cc",
  21. "//chrome/browser/extensions/global_shortcut_listener.h",
  22. "//chrome/browser/extensions/global_shortcut_listener_mac.h",
  23. "//chrome/browser/extensions/global_shortcut_listener_mac.mm",
  24. "//chrome/browser/extensions/global_shortcut_listener_win.cc",
  25. "//chrome/browser/extensions/global_shortcut_listener_win.h",
  26. "//chrome/browser/icon_loader.cc",
  27. "//chrome/browser/icon_loader.h",
  28. "//chrome/browser/icon_loader_mac.mm",
  29. "//chrome/browser/icon_loader_win.cc",
  30. "//chrome/browser/icon_manager.cc",
  31. "//chrome/browser/icon_manager.h",
  32. "//chrome/browser/net/chrome_mojo_proxy_resolver_factory.cc",
  33. "//chrome/browser/net/chrome_mojo_proxy_resolver_factory.h",
  34. "//chrome/browser/net/proxy_config_monitor.cc",
  35. "//chrome/browser/net/proxy_config_monitor.h",
  36. "//chrome/browser/net/proxy_service_factory.cc",
  37. "//chrome/browser/net/proxy_service_factory.h",
  38. "//chrome/browser/predictors/preconnect_manager.cc",
  39. "//chrome/browser/predictors/preconnect_manager.h",
  40. "//chrome/browser/predictors/proxy_lookup_client_impl.cc",
  41. "//chrome/browser/predictors/proxy_lookup_client_impl.h",
  42. "//chrome/browser/predictors/resolve_host_client_impl.cc",
  43. "//chrome/browser/predictors/resolve_host_client_impl.h",
  44. "//chrome/browser/ssl/security_state_tab_helper.cc",
  45. "//chrome/browser/ssl/security_state_tab_helper.h",
  46. "//chrome/browser/ui/autofill/popup_view_common.cc",
  47. "//chrome/browser/ui/autofill/popup_view_common.h",
  48. "//chrome/browser/win/chrome_process_finder.cc",
  49. "//chrome/browser/win/chrome_process_finder.h",
  50. "//extensions/browser/app_window/size_constraints.cc",
  51. "//extensions/browser/app_window/size_constraints.h",
  52. ]
  53. public_deps = [
  54. "//chrome/common",
  55. "//chrome/common:version_header",
  56. "//components/keyed_service/content",
  57. "//components/proxy_config",
  58. "//components/security_state/content",
  59. "//content/public/browser",
  60. ]
  61. deps = [
  62. "//chrome/browser:resource_prefetch_predictor_proto",
  63. "//components/feature_engagement:buildflags",
  64. ]
  65. if (is_linux) {
  66. sources += [ "//chrome/browser/icon_loader_auralinux.cc" ]
  67. sources += [
  68. "//chrome/browser/extensions/global_shortcut_listener_x11.cc",
  69. "//chrome/browser/extensions/global_shortcut_listener_x11.h",
  70. ]
  71. }
  72. if (enable_desktop_capturer) {
  73. sources += [
  74. "//chrome/browser/media/webrtc/desktop_media_list.h",
  75. "//chrome/browser/media/webrtc/desktop_media_list_base.cc",
  76. "//chrome/browser/media/webrtc/desktop_media_list_base.h",
  77. "//chrome/browser/media/webrtc/desktop_media_list_observer.h",
  78. "//chrome/browser/media/webrtc/native_desktop_media_list.cc",
  79. "//chrome/browser/media/webrtc/native_desktop_media_list.h",
  80. "//chrome/browser/media/webrtc/window_icon_util.h",
  81. ]
  82. deps += [ "//ui/snapshot" ]
  83. }
  84. if (enable_color_chooser) {
  85. sources += [
  86. "//chrome/browser/platform_util.cc",
  87. "//chrome/browser/platform_util.h",
  88. "//chrome/browser/ui/browser_dialogs.h",
  89. "//chrome/browser/ui/color_chooser.h",
  90. ]
  91. if (use_aura) {
  92. sources += [
  93. "//chrome/browser/platform_util_aura.cc",
  94. "//chrome/browser/ui/views/color_chooser_aura.cc",
  95. "//chrome/browser/ui/views/color_chooser_aura.h",
  96. ]
  97. deps += [ "//components/feature_engagement" ]
  98. }
  99. if (is_mac) {
  100. sources += [
  101. "//chrome/browser/media/webrtc/window_icon_util_mac.mm",
  102. "//chrome/browser/ui/cocoa/color_chooser_mac.h",
  103. "//chrome/browser/ui/cocoa/color_chooser_mac.mm",
  104. ]
  105. deps += [
  106. "//components/remote_cocoa/app_shim",
  107. "//components/remote_cocoa/browser",
  108. ]
  109. }
  110. if (is_win) {
  111. sources += [
  112. "//chrome/browser/media/webrtc/window_icon_util_win.cc",
  113. "//chrome/browser/ui/views/color_chooser_dialog.cc",
  114. "//chrome/browser/ui/views/color_chooser_dialog.h",
  115. "//chrome/browser/ui/views/color_chooser_win.cc",
  116. ]
  117. }
  118. if (is_linux) {
  119. sources += [ "//chrome/browser/media/webrtc/window_icon_util_x11.cc" ]
  120. }
  121. }
  122. if (enable_tts) {
  123. sources += [
  124. "//chrome/browser/speech/tts_controller_delegate_impl.cc",
  125. "//chrome/browser/speech/tts_controller_delegate_impl.h",
  126. ]
  127. }
  128. if (enable_widevine) {
  129. sources += [
  130. "//chrome/renderer/media/chrome_key_systems.cc",
  131. "//chrome/renderer/media/chrome_key_systems.h",
  132. "//chrome/renderer/media/chrome_key_systems_provider.cc",
  133. "//chrome/renderer/media/chrome_key_systems_provider.h",
  134. ]
  135. deps += [ "//components/cdm/renderer" ]
  136. }
  137. if (enable_basic_printing) {
  138. sources += [
  139. "//chrome/browser/printing/print_job.cc",
  140. "//chrome/browser/printing/print_job.h",
  141. "//chrome/browser/printing/print_job_manager.cc",
  142. "//chrome/browser/printing/print_job_manager.h",
  143. "//chrome/browser/printing/print_job_worker.cc",
  144. "//chrome/browser/printing/print_job_worker.h",
  145. "//chrome/browser/printing/print_view_manager_base.cc",
  146. "//chrome/browser/printing/print_view_manager_base.h",
  147. "//chrome/browser/printing/print_view_manager_basic.cc",
  148. "//chrome/browser/printing/print_view_manager_basic.h",
  149. "//chrome/browser/printing/printer_query.cc",
  150. "//chrome/browser/printing/printer_query.h",
  151. "//chrome/browser/printing/printing_message_filter.cc",
  152. "//chrome/browser/printing/printing_message_filter.h",
  153. "//chrome/browser/printing/printing_service.cc",
  154. "//chrome/browser/printing/printing_service.h",
  155. ]
  156. public_deps += [
  157. "//chrome/services/printing:lib",
  158. "//components/printing/browser",
  159. "//components/printing/renderer",
  160. "//components/services/pdf_compositor",
  161. "//components/services/pdf_compositor/public/cpp",
  162. "//components/services/pdf_compositor/public/mojom",
  163. ]
  164. deps += [
  165. "//components/printing/common",
  166. "//printing",
  167. ]
  168. if (is_win) {
  169. sources += [
  170. "//chrome/browser/printing/pdf_to_emf_converter.cc",
  171. "//chrome/browser/printing/pdf_to_emf_converter.h",
  172. "//chrome/utility/printing_handler.cc",
  173. "//chrome/utility/printing_handler.h",
  174. ]
  175. }
  176. }
  177. if (enable_picture_in_picture) {
  178. sources += [
  179. "//chrome/browser/picture_in_picture/picture_in_picture_window_manager.cc",
  180. "//chrome/browser/picture_in_picture/picture_in_picture_window_manager.h",
  181. "//chrome/browser/ui/views/overlay/back_to_tab_image_button.cc",
  182. "//chrome/browser/ui/views/overlay/back_to_tab_image_button.h",
  183. "//chrome/browser/ui/views/overlay/close_image_button.cc",
  184. "//chrome/browser/ui/views/overlay/close_image_button.h",
  185. "//chrome/browser/ui/views/overlay/overlay_window_views.cc",
  186. "//chrome/browser/ui/views/overlay/overlay_window_views.h",
  187. "//chrome/browser/ui/views/overlay/playback_image_button.cc",
  188. "//chrome/browser/ui/views/overlay/playback_image_button.h",
  189. "//chrome/browser/ui/views/overlay/resize_handle_button.cc",
  190. "//chrome/browser/ui/views/overlay/resize_handle_button.h",
  191. "//chrome/browser/ui/views/overlay/skip_ad_label_button.cc",
  192. "//chrome/browser/ui/views/overlay/skip_ad_label_button.h",
  193. "//chrome/browser/ui/views/overlay/track_image_button.cc",
  194. "//chrome/browser/ui/views/overlay/track_image_button.h",
  195. ]
  196. deps += [
  197. "//chrome/app/vector_icons",
  198. "//components/vector_icons:vector_icons",
  199. ]
  200. }
  201. }