summaryrefslogtreecommitdiffstats
path: root/chromium/chrome/chrome_repack_locales.gni
blob: 520951d00f3fe716c0803e093c4e07aba091ac57 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
# Copyright 2014 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//build/config/chrome_build.gni")
import("//build/config/features.gni")
import("//build/config/ui.gni")
import("//extensions/buildflags/buildflags.gni")
import("//tools/grit/repack.gni")

assert(!is_ios, "Chromium/iOS shouldn't use anything in //chrome")

# Wraps repack_locales(), setting the source_patterns and deps required for
# Chrome.
#
# Extra Parameters:
#
#   additional_source_patterns [optional]
#      Extra source_patterns for repack_locales().
template("chrome_repack_locales") {
  repack_locales(target_name) {
    forward_variables_from(invoker, "*", [ "additional_source_patterns" ])

    # Each input pak file should also have a deps line.
    source_patterns = [
      "${root_gen_dir}/chrome/generated_resources_",
      "${root_gen_dir}/chrome/locale_settings_",
      "${root_gen_dir}/chrome/platform_locale_settings_",
      "${root_gen_dir}/components/strings/components_locale_settings_",
      "${root_gen_dir}/components/strings/components_strings_",
      "${root_gen_dir}/third_party/blink/public/strings/blink_strings_",
      "${root_gen_dir}/device/bluetooth/strings/bluetooth_strings_",
      "${root_gen_dir}/device/fido/strings/fido_strings_",
      "${root_gen_dir}/services/strings/services_strings_",
      "${root_gen_dir}/third_party/libaddressinput/address_input_strings_",
      "${root_gen_dir}/ui/strings/app_locale_settings_",
      "${root_gen_dir}/ui/strings/ui_strings_",
    ]
    if (!defined(deps)) {
      deps = []
    }
    deps += [
      "//chrome/app:generated_resources",
      "//chrome/app/resources:locale_settings",
      "//chrome/app/resources:platform_locale_settings",
      "//components/strings:components_locale_settings",
      "//components/strings:components_strings",
      "//device/bluetooth/strings",
      "//device/fido/strings",
      "//services/strings",
      "//third_party/blink/public/strings",
      "//third_party/libaddressinput:strings",
      "//ui/strings:app_locale_settings",
      "//ui/strings:ui_strings",
    ]
    if (defined(invoker.deps)) {
      deps += invoker.deps
    }

    # Omnibox resources are currently desktop-only, but this may change.
    if (!is_android) {
      source_patterns +=
          [ "${root_gen_dir}/components/omnibox/resources/omnibox_resources_" ]
      deps += [ "//components/omnibox/resources:omnibox_resources" ]
    }
    if (is_chromeos) {
      source_patterns += [
        "${root_gen_dir}/ash/components/strings/ash_components_strings_",
        "${root_gen_dir}/ash/strings/ash_strings_",
        "${root_gen_dir}/chromeos/strings/chromeos_strings_",
        "${root_gen_dir}/remoting/resources/",
        "${root_gen_dir}/ui/chromeos/strings/ui_chromeos_strings_",
      ]
      deps += [
        "//ash/components/strings",
        "//ash/strings",
        "//chromeos/strings",
        "//remoting/resources",
        "//ui/chromeos/strings",
      ]
    }
    if (enable_extensions) {
      source_patterns +=
          [ "${root_gen_dir}/extensions/strings/extensions_strings_" ]
      deps += [ "//extensions/strings" ]
    }

    if (is_chrome_branded) {
      source_patterns += [
        "${root_gen_dir}/chrome/google_chrome_strings_",
        "${root_gen_dir}/components/strings/components_google_chrome_strings_",
      ]
      deps += [
        "//chrome/app:google_chrome_strings",
        "//components/strings:components_google_chrome_strings",
      ]
    } else {
      source_patterns += [
        "${root_gen_dir}/chrome/chromium_strings_",
        "${root_gen_dir}/components/strings/components_chromium_strings_",
      ]
      deps += [
        "//chrome/app:chromium_strings",
        "//components/strings:components_chromium_strings",
      ]
    }

    if (defined(invoker.additional_source_patterns)) {
      source_patterns += invoker.additional_source_patterns
    }
  }
}