electron_paks.gni 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235
  1. import("//build/config/locales.gni")
  2. import("//electron/buildflags/buildflags.gni")
  3. import("//printing/buildflags/buildflags.gni")
  4. import("//tools/grit/repack.gni")
  5. import("//ui/base/ui_features.gni")
  6. # See: //chrome/chrome_paks.gni
  7. template("electron_repack_percent") {
  8. percent = invoker.percent
  9. repack(target_name) {
  10. forward_variables_from(invoker,
  11. [
  12. "copy_data_to_bundle",
  13. "repack_whitelist",
  14. "visibility",
  15. ])
  16. # All sources should also have deps for completeness.
  17. sources = [
  18. "$root_gen_dir/components/components_resources_${percent}_percent.pak",
  19. "$root_gen_dir/third_party/blink/public/resources/blink_scaled_resources_${percent}_percent.pak",
  20. "$root_gen_dir/ui/resources/ui_resources_${percent}_percent.pak",
  21. ]
  22. deps = [
  23. "//components/resources",
  24. "//third_party/blink/public:scaled_resources_${percent}_percent",
  25. "//ui/resources",
  26. ]
  27. if (defined(invoker.deps)) {
  28. deps += invoker.deps
  29. }
  30. if (toolkit_views) {
  31. sources += [ "$root_gen_dir/ui/views/resources/views_resources_${percent}_percent.pak" ]
  32. deps += [ "//ui/views/resources" ]
  33. }
  34. output = "${invoker.output_dir}/chrome_${percent}_percent.pak"
  35. }
  36. }
  37. template("electron_extra_paks") {
  38. repack(target_name) {
  39. forward_variables_from(invoker,
  40. [
  41. "copy_data_to_bundle",
  42. "repack_whitelist",
  43. "visibility",
  44. ])
  45. output = "${invoker.output_dir}/resources.pak"
  46. sources = [
  47. "$root_gen_dir/chrome/accessibility_resources.pak",
  48. "$root_gen_dir/chrome/browser_resources.pak",
  49. "$root_gen_dir/chrome/common_resources.pak",
  50. "$root_gen_dir/components/components_resources.pak",
  51. "$root_gen_dir/content/browser/resources/media/media_internals_resources.pak",
  52. "$root_gen_dir/content/browser/tracing/tracing_resources.pak",
  53. "$root_gen_dir/content/browser/webrtc/resources/webrtc_internals_resources.pak",
  54. "$root_gen_dir/content/content_resources.pak",
  55. "$root_gen_dir/content/gpu_resources.pak",
  56. "$root_gen_dir/mojo/public/js/mojo_bindings_resources.pak",
  57. "$root_gen_dir/net/net_resources.pak",
  58. "$root_gen_dir/third_party/blink/public/resources/blink_resources.pak",
  59. "$root_gen_dir/third_party/blink/public/resources/inspector_overlay_resources.pak",
  60. "$target_gen_dir/electron_resources.pak",
  61. ]
  62. deps = [
  63. "//chrome/browser:resources",
  64. "//chrome/browser/resources/accessibility:resources",
  65. "//chrome/common:resources",
  66. "//components/resources",
  67. "//content:content_resources",
  68. "//content/browser/resources/gpu:resources",
  69. "//content/browser/resources/media:resources",
  70. "//content/browser/resources/process:resources",
  71. "//content/browser/tracing:resources",
  72. "//content/browser/webrtc/resources",
  73. "//electron:resources",
  74. "//mojo/public/js:resources",
  75. "//net:net_resources",
  76. "//third_party/blink/public:devtools_inspector_resources",
  77. "//third_party/blink/public:resources",
  78. "//ui/webui/resources",
  79. ]
  80. if (defined(invoker.deps)) {
  81. deps += invoker.deps
  82. }
  83. if (defined(invoker.additional_paks)) {
  84. sources += invoker.additional_paks
  85. }
  86. # New paks should be added here by default.
  87. sources += [
  88. "$root_gen_dir/content/browser/devtools/devtools_resources.pak",
  89. "$root_gen_dir/content/process_resources.pak",
  90. "$root_gen_dir/ui/webui/resources/webui_resources.pak",
  91. ]
  92. deps += [ "//content/browser/devtools:devtools_resources" ]
  93. if (enable_pdf_viewer) {
  94. sources += [ "$root_gen_dir/chrome/pdf_resources.pak" ]
  95. deps += [ "//chrome/browser/resources/pdf:resources" ]
  96. }
  97. if (enable_print_preview) {
  98. sources += [ "$root_gen_dir/chrome/print_preview_resources.pak" ]
  99. deps += [ "//chrome/browser/resources/print_preview:resources" ]
  100. }
  101. if (enable_electron_extensions) {
  102. sources += [
  103. "$root_gen_dir/chrome/component_extension_resources.pak",
  104. "$root_gen_dir/extensions/extensions_renderer_resources.pak",
  105. "$root_gen_dir/extensions/extensions_resources.pak",
  106. ]
  107. deps += [
  108. "//chrome/browser/resources:component_extension_resources",
  109. "//extensions:extensions_resources",
  110. ]
  111. }
  112. }
  113. }
  114. template("electron_paks") {
  115. electron_repack_percent("${target_name}_100_percent") {
  116. percent = "100"
  117. forward_variables_from(invoker,
  118. [
  119. "copy_data_to_bundle",
  120. "deps",
  121. "output_dir",
  122. "repack_whitelist",
  123. "visibility",
  124. ])
  125. }
  126. if (enable_hidpi) {
  127. electron_repack_percent("${target_name}_200_percent") {
  128. percent = "200"
  129. forward_variables_from(invoker,
  130. [
  131. "copy_data_to_bundle",
  132. "deps",
  133. "output_dir",
  134. "repack_whitelist",
  135. "visibility",
  136. ])
  137. }
  138. }
  139. electron_extra_paks("${target_name}_extra") {
  140. forward_variables_from(invoker,
  141. [
  142. "copy_data_to_bundle",
  143. "deps",
  144. "output_dir",
  145. "repack_whitelist",
  146. "visibility",
  147. ])
  148. if (defined(invoker.additional_extra_paks)) {
  149. additional_paks = invoker.additional_extra_paks
  150. }
  151. }
  152. repack_locales("${target_name}_locales") {
  153. forward_variables_from(invoker,
  154. [
  155. "copy_data_to_bundle",
  156. "deps",
  157. "visibility",
  158. ])
  159. if (defined(invoker.locale_whitelist)) {
  160. repack_whitelist = invoker.locale_whitelist
  161. } else if (defined(invoker.repack_whitelist)) {
  162. repack_whitelist = invoker.repack_whitelist
  163. }
  164. source_patterns = [
  165. "${root_gen_dir}/chrome/branded_strings_",
  166. "${root_gen_dir}/chrome/locale_settings_",
  167. "${root_gen_dir}/chrome/platform_locale_settings_",
  168. "${root_gen_dir}/chrome/generated_resources_",
  169. "${root_gen_dir}/components/strings/components_locale_settings_",
  170. "${root_gen_dir}/components/strings/components_strings_",
  171. "${root_gen_dir}/device/bluetooth/strings/bluetooth_strings_",
  172. "${root_gen_dir}/extensions/strings/extensions_strings_",
  173. "${root_gen_dir}/services/strings/services_strings_",
  174. "${root_gen_dir}/third_party/blink/public/strings/blink_strings_",
  175. "${root_gen_dir}/ui/strings/app_locale_settings_",
  176. "${root_gen_dir}/ui/strings/auto_image_annotation_strings_",
  177. "${root_gen_dir}/ui/strings/ax_strings_",
  178. "${root_gen_dir}/ui/strings/ui_strings_",
  179. ]
  180. deps = [
  181. "//chrome/app:branded_strings",
  182. "//chrome/app:generated_resources",
  183. "//chrome/app/resources:locale_settings",
  184. "//chrome/app/resources:platform_locale_settings",
  185. "//components/strings:components_locale_settings",
  186. "//components/strings:components_strings",
  187. "//device/bluetooth/strings",
  188. "//extensions/strings",
  189. "//services/strings",
  190. "//third_party/blink/public/strings",
  191. "//ui/strings:app_locale_settings",
  192. "//ui/strings:auto_image_annotation_strings",
  193. "//ui/strings:ax_strings",
  194. "//ui/strings:ui_strings",
  195. ]
  196. input_locales = platform_pak_locales
  197. output_dir = "${invoker.output_dir}/locales"
  198. if (is_mac) {
  199. output_locales = locales_as_apple_outputs
  200. } else {
  201. output_locales = platform_pak_locales
  202. }
  203. }
  204. group(target_name) {
  205. forward_variables_from(invoker, [ "deps" ])
  206. public_deps = [
  207. ":${target_name}_100_percent",
  208. ":${target_name}_extra",
  209. ":${target_name}_locales",
  210. ]
  211. if (enable_hidpi) {
  212. public_deps += [ ":${target_name}_200_percent" ]
  213. }
  214. if (defined(invoker.public_deps)) {
  215. public_deps += invoker.public_deps
  216. }
  217. }
  218. }