electron_paks.gni 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188
  1. import("//build/config/locales.gni")
  2. import("//printing/buildflags/buildflags.gni")
  3. import("//tools/grit/repack.gni")
  4. import("//ui/base/ui_features.gni")
  5. # See: //chrome/chrome_paks.gni
  6. template("electron_repack_percent") {
  7. percent = invoker.percent
  8. repack(target_name) {
  9. forward_variables_from(invoker,
  10. [
  11. "copy_data_to_bundle",
  12. "repack_whitelist",
  13. "visibility",
  14. ])
  15. # All sources should also have deps for completeness.
  16. sources = [
  17. "$root_gen_dir/components/components_resources_${percent}_percent.pak",
  18. "$root_gen_dir/content/app/resources/content_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. "//content/app/resources",
  25. "//third_party/blink/public:scaled_resources_${percent}_percent",
  26. "//ui/resources",
  27. ]
  28. if (defined(invoker.deps)) {
  29. deps += invoker.deps
  30. }
  31. if (toolkit_views) {
  32. sources += [ "$root_gen_dir/ui/views/resources/views_resources_${percent}_percent.pak" ]
  33. deps += [ "//ui/views/resources" ]
  34. }
  35. output = "${invoker.output_dir}/chrome_${percent}_percent.pak"
  36. }
  37. }
  38. template("electron_extra_paks") {
  39. repack(target_name) {
  40. forward_variables_from(invoker,
  41. [
  42. "copy_data_to_bundle",
  43. "repack_whitelist",
  44. "visibility",
  45. ])
  46. output = "${invoker.output_dir}/resources.pak"
  47. sources = [
  48. "$root_gen_dir/components/components_resources.pak",
  49. "$root_gen_dir/content/browser/tracing/tracing_resources.pak",
  50. "$root_gen_dir/content/content_resources.pak",
  51. "$root_gen_dir/content/shell/shell_resources.pak",
  52. "$root_gen_dir/mojo/public/js/mojo_bindings_resources.pak",
  53. "$root_gen_dir/net/net_resources.pak",
  54. "$root_gen_dir/third_party/blink/public/resources/blink_resources.pak",
  55. "$root_gen_dir/ui/resources/webui_resources.pak",
  56. "$target_gen_dir/electron_resources.pak",
  57. ]
  58. deps = [
  59. "//components/resources",
  60. "//content:resources",
  61. "//content/browser/tracing:resources",
  62. "//content/shell:copy_shell_resources",
  63. "//electron:resources",
  64. "//mojo/public/js:resources",
  65. "//net:net_resources",
  66. "//third_party/blink/public:resources",
  67. "//ui/resources",
  68. ]
  69. if (defined(invoker.deps)) {
  70. deps += invoker.deps
  71. }
  72. if (defined(invoker.additional_paks)) {
  73. sources += invoker.additional_paks
  74. }
  75. # New paks should be added here by default.
  76. sources +=
  77. [ "$root_gen_dir/content/browser/devtools/devtools_resources.pak" ]
  78. deps += [ "//content/browser/devtools:devtools_resources" ]
  79. if (enable_print_preview) {
  80. sources += [ "$root_gen_dir/chrome/print_preview_resources.pak" ]
  81. deps += [ "//chrome/browser/resources:print_preview_resources" ]
  82. }
  83. }
  84. }
  85. template("electron_paks") {
  86. electron_repack_percent("${target_name}_100_percent") {
  87. percent = "100"
  88. forward_variables_from(invoker,
  89. [
  90. "copy_data_to_bundle",
  91. "deps",
  92. "output_dir",
  93. "repack_whitelist",
  94. "visibility",
  95. ])
  96. }
  97. if (enable_hidpi) {
  98. electron_repack_percent("${target_name}_200_percent") {
  99. percent = "200"
  100. forward_variables_from(invoker,
  101. [
  102. "copy_data_to_bundle",
  103. "deps",
  104. "output_dir",
  105. "repack_whitelist",
  106. "visibility",
  107. ])
  108. }
  109. }
  110. electron_extra_paks("${target_name}_extra") {
  111. forward_variables_from(invoker,
  112. [
  113. "copy_data_to_bundle",
  114. "deps",
  115. "output_dir",
  116. "repack_whitelist",
  117. "visibility",
  118. ])
  119. if (defined(invoker.additional_extra_paks)) {
  120. additional_paks = invoker.additional_extra_paks
  121. }
  122. }
  123. repack_locales("${target_name}_locales") {
  124. forward_variables_from(invoker,
  125. [
  126. "copy_data_to_bundle",
  127. "deps",
  128. "visibility",
  129. ])
  130. if (defined(invoker.locale_whitelist)) {
  131. repack_whitelist = invoker.locale_whitelist
  132. } else if (defined(invoker.repack_whitelist)) {
  133. repack_whitelist = invoker.repack_whitelist
  134. }
  135. source_patterns = [
  136. "${root_gen_dir}/components/strings/components_strings_",
  137. "${root_gen_dir}/content/app/strings/content_strings_",
  138. "${root_gen_dir}/ui/strings/app_locale_settings_",
  139. "${root_gen_dir}/ui/strings/ui_strings_",
  140. "${root_gen_dir}/device/bluetooth/strings/bluetooth_strings_",
  141. ]
  142. deps = [
  143. "//components/strings:components_strings",
  144. "//content/app/strings",
  145. "//device/bluetooth/strings",
  146. "//ui/strings:app_locale_settings",
  147. "//ui/strings:ui_strings",
  148. ]
  149. input_locales = locales
  150. output_dir = "${invoker.output_dir}/locales"
  151. if (is_mac) {
  152. output_locales = locales_as_mac_outputs
  153. } else {
  154. output_locales = locales
  155. }
  156. }
  157. group(target_name) {
  158. forward_variables_from(invoker, [ "deps" ])
  159. public_deps = [
  160. ":${target_name}_100_percent",
  161. ":${target_name}_extra",
  162. ":${target_name}_locales",
  163. ]
  164. if (enable_hidpi) {
  165. public_deps += [ ":${target_name}_200_percent" ]
  166. }
  167. if (defined(invoker.public_deps)) {
  168. public_deps += invoker.public_deps
  169. }
  170. }
  171. }