1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
5 import("//tools/grit/grit_rule.gni")
7 libaddressinput_util_files = [
8 "src/cpp/src/address_data.cc",
9 "src/cpp/src/address_field.cc",
10 "src/cpp/src/address_field_util.cc",
11 "src/cpp/src/address_formatter.cc",
12 "src/cpp/src/address_metadata.cc",
13 "src/cpp/src/address_ui.cc",
14 "src/cpp/src/format_element.cc",
15 "src/cpp/src/language.cc",
16 "src/cpp/src/localization.cc",
17 "src/cpp/src/lookup_key.cc",
18 "src/cpp/src/region_data_constants.cc",
19 "src/cpp/src/rule.cc",
20 "src/cpp/src/util/cctype_tolower_equal.cc",
21 "src/cpp/src/util/json.cc",
22 "src/cpp/src/util/string_split.cc",
23 "src/cpp/src/util/string_util.cc",
26 # GYP version: third_party/libaddressinput/libaddressinput.gyp:libaddressinput_strings
28 source = "//chrome/app/address_input_strings.grd"
32 "address_input_strings_am.pak",
33 "address_input_strings_ar.pak",
34 "address_input_strings_bg.pak",
35 "address_input_strings_bn.pak",
36 "address_input_strings_ca.pak",
37 "address_input_strings_cs.pak",
38 "address_input_strings_da.pak",
39 "address_input_strings_de.pak",
40 "address_input_strings_el.pak",
41 "address_input_strings_en-GB.pak",
42 "address_input_strings_en-US.pak",
43 "address_input_strings_es.pak",
44 "address_input_strings_es-419.pak",
45 "address_input_strings_et.pak",
46 "address_input_strings_fa.pak",
47 "address_input_strings_fake-bidi.pak",
48 "address_input_strings_fi.pak",
49 "address_input_strings_fil.pak",
50 "address_input_strings_fr.pak",
51 "address_input_strings_gu.pak",
52 "address_input_strings_he.pak",
53 "address_input_strings_hi.pak",
54 "address_input_strings_hr.pak",
55 "address_input_strings_hu.pak",
56 "address_input_strings_id.pak",
57 "address_input_strings_it.pak",
58 "address_input_strings_ja.pak",
59 "address_input_strings_kn.pak",
60 "address_input_strings_ko.pak",
61 "address_input_strings_lt.pak",
62 "address_input_strings_lv.pak",
63 "address_input_strings_ml.pak",
64 "address_input_strings_mr.pak",
65 "address_input_strings_ms.pak",
66 "address_input_strings_nl.pak",
67 "address_input_strings_nb.pak",
68 "address_input_strings_pl.pak",
69 "address_input_strings_pt-BR.pak",
70 "address_input_strings_pt-PT.pak",
71 "address_input_strings_ro.pak",
72 "address_input_strings_ru.pak",
73 "address_input_strings_sk.pak",
74 "address_input_strings_sl.pak",
75 "address_input_strings_sr.pak",
76 "address_input_strings_sv.pak",
77 "address_input_strings_sw.pak",
78 "address_input_strings_ta.pak",
79 "address_input_strings_te.pak",
80 "address_input_strings_th.pak",
81 "address_input_strings_tr.pak",
82 "address_input_strings_uk.pak",
83 "address_input_strings_vi.pak",
84 "address_input_strings_zh-CN.pak",
85 "address_input_strings_zh-TW.pak",
89 config("libaddressinput_config") {
91 "I18N_ADDRESSINPUT_USE_BASICTYPES_OVERRIDE=1",
92 "I18N_ADDRESS_VALIDATION_DATA_URL=\"https://i18napis.appspot.com/ssl-aggregate-address/\"",
100 # This target provides basic functionality which is cooked into the build.
101 # GYP version: third_party/libaddressinput/libaddressinput.gyp:libaddressinput_util
102 static_library("util") {
103 sources = libaddressinput_util_files
105 "chromium/addressinput_util.cc",
109 "src/cpp/src/util/json.cc",
112 configs -= [ "//build/config/compiler:chromium_code" ]
113 configs += [ "//build/config/compiler:no_chromium_code" ]
115 public_configs = [ ":libaddressinput_config" ]
117 include_dirs = [ "$root_gen_dir/third_party/libaddressinput" ]
129 import("//build/config/android/rules.gni")
131 # GYP: //third_party/libaddressinput/libaddressinput.gyp:libaddressinput_android_strings_grd
132 java_strings_grd("libaddressinput_android_strings_grd") {
133 grd_file = "//chrome/app/address_input_strings_android.grd"
135 "values-am/address_input_strings.xml",
136 "values-ar/address_input_strings.xml",
137 "values-bg/address_input_strings.xml",
138 "values-ca/address_input_strings.xml",
139 "values-cs/address_input_strings.xml",
140 "values-da/address_input_strings.xml",
141 "values-de/address_input_strings.xml",
142 "values-el/address_input_strings.xml",
143 "values-en-rGB/address_input_strings.xml",
144 "values-es-rUS/address_input_strings.xml",
145 "values-es/address_input_strings.xml",
146 "values-fa/address_input_strings.xml",
147 "values-fi/address_input_strings.xml",
148 "values-fr/address_input_strings.xml",
149 "values-hi/address_input_strings.xml",
150 "values-hr/address_input_strings.xml",
151 "values-hu/address_input_strings.xml",
152 "values-in/address_input_strings.xml",
153 "values-it/address_input_strings.xml",
154 "values-iw/address_input_strings.xml",
155 "values-ja/address_input_strings.xml",
156 "values-ko/address_input_strings.xml",
157 "values-lt/address_input_strings.xml",
158 "values-lv/address_input_strings.xml",
159 "values-nb/address_input_strings.xml",
160 "values-nl/address_input_strings.xml",
161 "values-pl/address_input_strings.xml",
162 "values-pt-rBR/address_input_strings.xml",
163 "values-pt-rPT/address_input_strings.xml",
164 "values-ro/address_input_strings.xml",
165 "values-ru/address_input_strings.xml",
166 "values-sk/address_input_strings.xml",
167 "values-sl/address_input_strings.xml",
168 "values-sr/address_input_strings.xml",
169 "values-sv/address_input_strings.xml",
170 "values-sw/address_input_strings.xml",
171 "values-th/address_input_strings.xml",
172 "values-tl/address_input_strings.xml",
173 "values-tr/address_input_strings.xml",
174 "values-uk/address_input_strings.xml",
175 "values-vi/address_input_strings.xml",
176 "values-zh-rCN/address_input_strings.xml",
177 "values-zh-rTW/address_input_strings.xml",
178 "values/address_input_strings.xml",
182 android_resources("android_addressinput_widget_resources") {
183 custom_package = "com.android.i18n.addressinput"
184 resource_dirs = [ "src/java/res" ]
185 v14_verify_only = true
188 # GYP: //third_party/libaddressinput/libaddressinput.gyp:android_addressinput_widget
189 android_library("android_addressinput_widget_java") {
190 DEPRECATED_java_in_dir = "src/java/src"
192 ":android_addressinput_widget_resources",
193 ":libaddressinput_android_strings_grd",
197 # The list of files in libaddressinput.gypi.
198 gypi_values = exec_script(
199 "//build/gypi_to_gn.py",
200 [ rebase_path("src/cpp/libaddressinput.gypi") ],
202 [ "src/cpp/libaddressinput.gypi" ])
205 # This target provides more complicated functionality like pinging servers
206 # for validation rules.
207 # GYP version: third_party/libaddressinput/libaddressinput.gyp:libaddressinput
208 static_library("libaddressinput") {
209 sources = rebase_path(gypi_values.libaddressinput_files, ".", "src/cpp")
211 "chromium/chrome_address_validator.cc",
212 "chromium/chrome_metadata_source.cc",
213 "chromium/chrome_storage_impl.cc",
214 "chromium/fallback_data_store.cc",
215 "chromium/input_suggester.cc",
216 "chromium/string_compare.cc",
219 sources -= libaddressinput_util_files
221 "src/cpp/src/util/string_compare.cc",
224 configs -= [ "//build/config/compiler:chromium_code" ]
225 configs += [ "//build/config/compiler:no_chromium_code" ]
227 public_configs = [ ":libaddressinput_config" ]
239 test("libaddressinput_unittests") {
240 sources = rebase_path(
241 gypi_values.libaddressinput_test_files, ".", "src/cpp")
243 "chromium/addressinput_util_unittest.cc",
244 "chromium/chrome_address_validator_unittest.cc",
245 "chromium/chrome_metadata_source_unittest.cc",
246 "chromium/chrome_storage_impl_unittest.cc",
247 "chromium/fallback_data_store_unittest.cc",
248 "chromium/storage_test_runner.cc",
249 "chromium/string_compare_unittest.cc",
250 "chromium/trie_unittest.cc",
253 configs -= [ "//build/config/compiler:chromium_code" ]
254 configs += [ "//build/config/compiler:no_chromium_code" ]
257 "TEST_DATA_DIR=\"third_party/libaddressinput/src/testdata\"",
268 "//base/test:run_all_unittests",
269 "//net:test_support",