Index: icu_data.gyp |
diff --git a/icu_data.gyp b/icu_data.gyp |
new file mode 100644 |
index 0000000000000000000000000000000000000000..49e19ebf34987449e9a3d926cd5024ed479b818c |
--- /dev/null |
+++ b/icu_data.gyp |
@@ -0,0 +1,1907 @@ |
+# Copyright (c) 2015 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. |
+ |
+# TODO: |
+# Reuse the libs compiled for chromium when compiling the tools? May make it harder to build release in debug. And cross compiling? |
+ |
+# Check that it's easy to do Opera's language additions with a minimum of patching. |
+ |
+# Delete files not needed anymore: |
+# * android/patch_locale.sh (X lines) |
+# * linux/ ... / (Y MB) |
+ |
+ |
+# To update for a newer ICU: |
+# Diff the old and new Makefile.in and take appropriate action. Moving from 5.2 to 5.4 took 1-2 hours (first time). |
+ |
+{ |
+ 'variables': { |
+ 'ICU_VER': '54', |
+ |
+ 'gencnval_exe': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)gencnval<(EXECUTABLE_SUFFIX)', |
+ 'gendict_exe': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)gendict<(EXECUTABLE_SUFFIX)', |
+ 'genbrk_exe': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)genbrk<(EXECUTABLE_SUFFIX)', |
+ 'genrb_exe': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)genrb<(EXECUTABLE_SUFFIX)', |
+ 'gencfu_exe': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)gencfu<(EXECUTABLE_SUFFIX)', |
+ 'icupkg_exe': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)icupkg<(EXECUTABLE_SUFFIX)', |
+ 'makeconv_exe': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)makeconv<(EXECUTABLE_SUFFIX)', |
+ 'pkgdata_exe': '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)pkgdata<(EXECUTABLE_SUFFIX)', |
+ |
+ 'icu_gen_dir': '<(SHARED_INTERMEDIATE_DIR)/icudt<(ICU_VER)l', |
+ 'icu_gen_tmp_dir': '<(SHARED_INTERMEDIATE_DIR)/tmp_icudt<(ICU_VER)l', |
+ |
+ 'icu_use_data_file_flag%': 0, |
+ |
+ 'icu_data_generated_contents': [ |
+ # Coll |
+ '<@(icu_data_coll_res_root_generated)', |
+ '<@(icu_data_coll_res_generated)', |
+ '<@(icu_data_coll_res_alias_generated)', |
+ '<(icu_gen_dir)/coll/res_index.res', |
+ # Brk_brk |
+ '<@(icu_data_brkitr_brk_generated)', |
+ # Brk_res |
+ '<@(icu_data_brkitr_res_root_generated)', |
+ '<@(icu_data_brkitr_res_generated)', |
+ '<(icu_gen_dir)/brkitr/res_index.res', |
+ # Brk_dict |
+ '<(icu_gen_dir)/brkitr/burmesedict.dict', |
+ '<(icu_gen_dir)/brkitr/cjdict.dict', |
+ '<(icu_gen_dir)/brkitr/khmerdict.dict', |
+ '<(icu_gen_dir)/brkitr/laodict.dict', |
+ '<(icu_gen_dir)/brkitr/thaidict.dict', |
+ # Locales |
+ '<@(icu_data_locales_res_root_generated)', |
+ '<@(icu_data_locales_res_generated)', |
+ # Misc + end of Locales |
+ '<@(icu_data_locales_res_alias_generated)', |
+ '<@(icu_data_misc_res_generated)', |
+ '<(icu_gen_dir)/res_index.res', |
+ '<(icu_gen_dir)/pool.res', |
+ # Lang |
+ '<@(icu_data_lang_res_root_generated)', |
+ '<@(icu_data_lang_res_generated)', |
+ '<@(icu_data_lang_res_alias_generated)', |
+ '<(icu_gen_dir)/lang/res_index.res', |
+ '<(icu_gen_dir)/lang/pool.res', |
+ # Region |
+ '<@(icu_data_region_res_root_generated)', |
+ '<@(icu_data_region_res_generated)', |
+ '<@(icu_data_region_res_alias_generated)', |
+ '<(icu_gen_dir)/region/res_index.res', |
+ '<(icu_gen_dir)/region/pool.res', |
+ # Zone |
+ '<@(icu_data_zone_res_root_generated)', |
+ '<@(icu_data_zone_res_generated)', |
+ '<@(icu_data_zone_res_alias_generated)', |
+ '<@(icu_data_zone_res_extra_generated)', |
+ '<(icu_gen_dir)/zone/res_index.res', |
+ '<(icu_gen_dir)/zone/pool.res', |
+ # Unit |
+ '<@(icu_data_unit_res_root_generated)', |
+ '<@(icu_data_unit_res_generated)', |
+ '<@(icu_data_unit_res_alias_generated)', |
+ '<(icu_gen_dir)/unit/res_index.res', |
+ '<(icu_gen_dir)/unit/pool.res', |
+ # Random data |
+ '<(icu_gen_dir)/cnvalias.icu', |
+ '<(icu_gen_dir)/coll/ucadata.icu', |
+ '<(icu_gen_dir)/nfkc.nrm', |
+ '<(icu_gen_dir)/nfkc_cf.nrm', |
+ '<(icu_gen_dir)/uts46.nrm', |
+ |
+ # converters |
+ '<@(icu_data_ucm_generated)', |
+ |
+ # Currency |
+ '<@(icu_data_curr_res_root_generated)', |
+ '<@(icu_data_curr_res_supplemental_generated)', |
+ '<@(icu_data_curr_res_generated)', |
+ '<@(icu_data_curr_res_alias_generated)', |
+ '<(icu_gen_dir)/curr/res_index.res', |
+ '<(icu_gen_dir)/curr/pool.res', |
+ |
+ # RBNF |
+ '<(icu_gen_dir)/rbnf/res_index.res', |
+ |
+ # Translit (note css3transform.txt -> root.txt) |
+ '<(icu_gen_dir)/translit/root.res', |
+ |
+ # Confusables |
+ '<(icu_gen_dir)/confusables.cfu', |
+ ], |
+ 'languages_to_minimize': 'bn,et,gu,kn,ml,mr,ms,ta,te', # Move to gypi? |
+ 'conditions': [ |
+ ['OS=="android"', { |
+ # Remove things we don't want to include for this configuration. |
+ 'icu_data_generated_contents!': [ |
+ # Region data is fetched from the Android API on Android. |
+ '<@(icu_data_region_res_root_generated)', |
+ '<@(icu_data_region_res_generated)', |
+ '<@(icu_data_region_res_alias_generated)', |
+ |
+ # Languages from 'languages_to_minimize' above. |
+ '<(icu_gen_dir)/curr/bn.res', |
+ '<(icu_gen_dir)/curr/et.res', |
+ '<(icu_gen_dir)/curr/gu.res', |
+ '<(icu_gen_dir)/curr/kn.res', |
+ '<(icu_gen_dir)/curr/ml.res', |
+ '<(icu_gen_dir)/curr/mr.res', |
+ '<(icu_gen_dir)/curr/ms.res', |
+ '<(icu_gen_dir)/curr/ta.res', |
+ '<(icu_gen_dir)/curr/te.res', |
+ |
+ # Too big to include. |
+ '<(icu_gen_dir)/brkitr/cjdict.dict', |
+ ], |
+ 'icu_data_curr_res_raw_sources!': [ |
+ # Languages from 'languages_to_minimize' above. |
+ 'source/data/curr/bn.res', |
+ 'source/data/curr/et.res', |
+ 'source/data/curr/gu.res', |
+ 'source/data/curr/kn.res', |
+ 'source/data/curr/ml.res', |
+ 'source/data/curr/mr.res', |
+ 'source/data/curr/ms.res', |
+ 'source/data/curr/ta.res', |
+ 'source/data/curr/te.res', |
+ ], |
+ 'icu_data_region_res_sources!': ["<@(icu_data_region_res_alias_sources)"], |
+ 'icu_data_region_res_alias_sources!': ["<@(icu_data_region_res_alias_sources)"], |
+ }, { |
+ # Else (not Android) - skip the Android workaround files. |
+ # Add some workarounds for not having cjdict.dict. |
+ 'icu_data_generated_contents!': [ |
+ '<(icu_gen_dir)/brkitr/word_ja.brk', |
+ '<(icu_gen_dir)/brkitr/ja.res', |
+ ], |
+ 'icu_data_brkitr_brk_sources!': [ |
+ 'source/data/brkitr/word_ja.txt', |
+ ], |
+ 'icu_data_brkitr_brk_generated!': [ |
+ '<(icu_gen_dir)/brkitr/word_ja.brk', |
+ ], |
+ 'icu_data_brkitr_res_filtered_sources!': [ |
+ '<(icu_gen_tmp_dir)/brkitr/ja.txt', |
+ ], |
+ 'icu_data_brkitr_res_generated!': [ |
+ '<(icu_gen_dir)/brkitr/ja.res', |
+ ], |
+ }] |
+ ], |
+ }, |
+ 'includes': [ |
+ 'icu_data.gypi', |
+ ], |
+ 'targets': [ |
+ { |
+ 'target_name': 'icu_cnv_base_files', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:gencnval#host', |
+ 'icu_tools.gyp:icupkg#host', |
+ ], |
+ 'sources': [ |
+ '<@(icu_data_nrm_sources)', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'icupkg_nrm', |
+ 'extension': 'nrm', |
+ 'inputs': [ |
+ '<(icupkg_exe)', |
+ ], |
+ 'outputs': [ |
+ # Can't use RULE_INPUT_NAME because of a bug in gyp's |
+ # Makefile generator (see bug 472589). |
+ '<(icu_gen_dir)/<(RULE_INPUT_ROOT).nrm', |
+ ], |
+ 'action': [ |
+ '<(icupkg_exe)', |
+ '-tl', |
+ '<(RULE_INPUT_PATH)', |
+ '<(icu_gen_dir)/<(RULE_INPUT_NAME)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ 'actions': [ |
+ { |
+ 'action_name': 'icu_cnvalias', |
+ 'inputs': [ |
+ '<(gencnval_exe)', |
+ 'source/data/mappings/convrtrs.txt', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/cnvalias.icu', |
+ ], |
+ 'action': [ |
+ '<(gencnval_exe)', |
+ '-d', |
+ '<(icu_gen_dir)', |
+ 'source/data/mappings/convrtrs.txt', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ { |
+ 'action_name': 'icu_ucadata_icu', |
+ 'inputs': [ |
+ '<(icupkg_exe)', |
+ 'source/data/in/coll/ucadata-implicithan.icu', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/coll/ucadata.icu', |
+ ], |
+ 'action': [ |
+ '<(icupkg_exe)', |
+ '-tl', |
+ 'source/data/in/coll/ucadata-implicithan.icu', |
+ '<(icu_gen_dir)/coll/ucadata.icu', |
+ ], |
+ 'process_outputs_as_sources': 1, # Right place? |
+ }, |
+ ], |
+ }, |
+ { |
+ 'target_name': 'icu_cnv_ucm_files', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:makeconv#host', |
+ ], |
+ 'sources': [ |
+ '<@(icu_data_ucm_sources)' |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'makeconv', |
+ 'extension': 'ucm', |
+ 'inputs': [ |
+ '<(makeconv_exe)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/<(RULE_INPUT_ROOT).cnv', |
+ ], |
+ 'action': [ |
+ '<(makeconv_exe)', |
+ '-c', |
+ '-d', |
+ '<(icu_gen_dir)', |
+ '<(RULE_INPUT_PATH)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ # TODO: Merge all dicts into one action (since it can't be rule based) |
+ { |
+ 'target_name': 'icu_dict_cjdict', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:gendict#host', |
+ ], |
+ 'sources': [ |
+ 'source/data/brkitr/cjdict.txt', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'gendict', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(gendict_exe)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/brkitr/<(RULE_INPUT_ROOT).dict', |
+ ], |
+ 'action': [ |
+ '<(gendict_exe)', |
+ '--uchars', |
+ '-c', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '<(RULE_INPUT_PATH)', |
+ '<(icu_gen_dir)/brkitr/<(RULE_INPUT_ROOT).dict', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ { |
+ 'target_name': 'icu_dict_burmesedict', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:gendict#host', |
+ ], |
+ 'sources': [ |
+ 'source/data/brkitr/burmesedict.txt', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'gendict', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(gendict_exe)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/brkitr/<(RULE_INPUT_ROOT).dict', |
+ ], |
+ 'action': [ |
+ '<(gendict_exe)', |
+ '--bytes', |
+ '--transform', |
+ 'offset-0x1000', # Extract from rule/action somehow |
+ '-c', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '<(RULE_INPUT_PATH)', |
+ '<(icu_gen_dir)/brkitr/<(RULE_INPUT_ROOT).dict', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ { |
+ 'target_name': 'icu_dict_khmerdict', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:gendict#host', |
+ ], |
+ 'sources': [ |
+ 'source/data/brkitr/khmerdict.txt', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'gendict', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(gendict_exe)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/brkitr/<(RULE_INPUT_ROOT).dict', |
+ ], |
+ 'action': [ |
+ '<(gendict_exe)', |
+ '--bytes', |
+ '--transform', |
+ 'offset-0x1780', # Extract from rule/action somehow |
+ '-c', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '<(RULE_INPUT_PATH)', |
+ '<(icu_gen_dir)/brkitr/<(RULE_INPUT_ROOT).dict', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ { |
+ 'target_name': 'icu_dict_thaidict', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:gendict#host', |
+ ], |
+ 'sources': [ |
+ 'source/data/brkitr/thaidict.txt', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'gendict', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(gendict_exe)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/brkitr/<(RULE_INPUT_ROOT).dict', |
+ ], |
+ 'action': [ |
+ '<(gendict_exe)', |
+ '--bytes', |
+ '--transform', |
+ 'offset-0xe00', # TODO: Extract from rule/action somehow |
+ '-c', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '<(RULE_INPUT_PATH)', |
+ '<(icu_gen_dir)/brkitr/<(RULE_INPUT_ROOT).dict', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ { |
+ 'target_name': 'icu_dict_laodict', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:gendict#host', |
+ ], |
+ 'sources': [ |
+ 'source/data/brkitr/laodict.txt', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'gendict', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(gendict_exe)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/brkitr/<(RULE_INPUT_ROOT).dict', |
+ ], |
+ 'action': [ |
+ '<(gendict_exe)', |
+ '--bytes', |
+ '--transform', |
+ 'offset-0x0e80', # TODO: Extract from rule/action somehow |
+ '-c', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '<(RULE_INPUT_PATH)', |
+ '<(icu_gen_dir)/brkitr/<(RULE_INPUT_ROOT).dict', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ { |
+ 'target_name': 'icu_filtered_for_size_files', |
+ 'type': 'none', |
+ 'actions': [ |
+ { |
+ 'action_name': 'icu_filter_for_size', |
+ 'inputs': [ |
+ 'build_tools/filter_data_for_size.py', |
+ 'source/data/brkitr/word.txt', |
+ 'source/data/brkitr/root.txt', |
+ 'source/data/brkitr/ja.txt', |
+ 'source/data/locales/pool.res', |
+ 'source/data/curr/pool.res', |
+ 'source/data/lang/pool.res', |
+ '<@(icu_data_brkitr_res_root_raw_sources)', |
+ '<@(icu_data_curr_res_raw_sources)', |
+ '<@(icu_data_curr_res_alias_raw_sources)', |
+ '<@(icu_data_curr_res_supplemental_raw_sources)', |
+ '<@(icu_data_locales_res_raw_sources)', |
+ '<@(icu_data_locales_res_alias_raw_sources)', |
+ '<@(icu_data_lang_res_raw_sources)', |
+ '<@(icu_data_lang_res_alias_raw_sources)', |
+ '<@(icu_data_zone_res_raw_sources)', |
+ '<@(icu_data_zone_res_alias_raw_sources)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_tmp_dir)/brkitr/word.txt', |
+ '<(icu_gen_tmp_dir)/brkitr/root.txt', |
+ '<(icu_gen_tmp_dir)/brkitr/ja.txt', |
+ '<(icu_gen_tmp_dir)/locales/pool.res', |
+ '<(icu_gen_tmp_dir)/curr/pool.res', |
+ '<(icu_gen_tmp_dir)/lang/pool.res', |
+ '<@(icu_data_brkitr_res_root_filtered_sources)', |
+ '<@(icu_data_curr_res_filtered_sources)', |
+ '<@(icu_data_curr_res_alias_filtered_sources)', |
+ '<@(icu_data_curr_res_supplemental_filtered_sources)', |
+ '<@(icu_data_locales_res_filtered_sources)', |
+ '<@(icu_data_locales_res_alias_filtered_sources)', |
+ '<@(icu_data_lang_res_filtered_sources)', |
+ '<@(icu_data_lang_res_alias_filtered_sources)', |
+ '<@(icu_data_zone_res_filtered_sources)', |
+ '<@(icu_data_zone_res_alias_filtered_sources)', |
+ '<(icu_gen_tmp_dir)/locales/root.txt', |
+ '<(icu_gen_tmp_dir)/curr/root.txt', |
+ '<(icu_gen_tmp_dir)/lang/root.txt', |
+ '<(icu_gen_tmp_dir)/zone/root.txt', |
+ ], |
+ 'conditions': [ |
+ ['OS=="android"', { |
+ 'variables': { |
+ 'filter_mode': 'strip-for-size', |
+ }, |
+ }, { |
+ 'variables': { |
+ 'filter_mode': 'clean-copy', |
+ }, |
+ } |
+ ] |
+ ], |
+ 'action': [ |
+ 'python', |
+ 'build_tools/filter_data_for_size.py', |
+ '--mode', |
+ '<(filter_mode)', |
+ '--in-word-txt', |
+ 'source/data/brkitr/word.txt', |
+ '--out-word-txt', |
+ '<(icu_gen_tmp_dir)/brkitr/word.txt', |
+ '--in-brkitr-root-txt', |
+ 'source/data/brkitr/root.txt', |
+ '--out-brkitr-root-txt', |
+ '<(icu_gen_tmp_dir)/brkitr/root.txt', |
+ '--in-brkitr-ja-txt', |
+ 'source/data/brkitr/ja.txt', |
+ '--out-brkitr-ja-txt', |
+ '<(icu_gen_tmp_dir)/brkitr/ja.txt', |
+ '--currency-keep-list', |
+ 'android/currencies.list', |
+ '--in-curr-dir', |
+ 'source/data/curr', |
+ '--out-curr-dir', |
+ '<(icu_gen_tmp_dir)/curr', |
+ '--minimize-language-list', |
+ '<(languages_to_minimize)', |
+ '--in-locales-dir', |
+ 'source/data/locales', |
+ '--out-locales-dir', |
+ '<(icu_gen_tmp_dir)/locales', |
+ '--in-lang-dir', |
+ 'source/data/lang', |
+ '--out-lang-dir', |
+ '<(icu_gen_tmp_dir)/lang', |
+ '--in-zone-dir', |
+ 'source/data/zone', |
+ '--out-zone-dir', |
+ '<(icu_gen_tmp_dir)/zone', |
+ '--remove-data-already-existing-in-android', |
+ ], |
+ 'process_outputs_as_sources': 1, # Right place? |
+ } |
+ ], |
+ }, |
+ { |
+ 'target_name': 'icu_brk_files', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:genbrk#host', |
+ 'icu_cnv_base_files', |
+ 'icu_filtered_for_size_files', |
+ ], |
+ 'sources': [ |
+ '<@(icu_data_brkitr_brk_sources)' |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'genbrk', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(genbrk_exe)', |
+ '<(icu_gen_dir)/cnvalias.icu', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/brkitr/<(RULE_INPUT_ROOT).brk', |
+ ], |
+ 'action': [ |
+ '<(genbrk_exe)', |
+ '-c', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-r', |
+ '<(RULE_INPUT_PATH)', |
+ '-o', |
+ '<(icu_gen_dir)/brkitr/<(RULE_INPUT_ROOT).brk', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ { |
+ 'target_name': 'icu_locales_res_files', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:genrb#host', |
+ 'icu_cnv_base_files', |
+ 'icu_filtered_for_size_files', |
+ ], |
+ 'sources': [ |
+ '<@(icu_data_locales_res_root_sources)', |
+ '<@(icu_data_locales_res_filtered_sources)', |
+ '<@(icu_data_locales_res_alias_filtered_sources)', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'genrb', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(genrb_exe)', |
+ '<(icu_gen_tmp_dir)/locales/pool.res', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/<(RULE_INPUT_ROOT).res', |
+ ], |
+ 'action': [ |
+ '<(genrb_exe)', |
+ '--quiet', # Chromium addition to silence warnings. |
+ '--usePoolBundle', |
+ '-k', |
+ '-R', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-s', |
+ '<(icu_gen_tmp_dir)/locales', |
+ '-d<(icu_gen_dir)', # Writing as two arguments and the gen dir argument just disappears. Magically. Because lists can't have duplicates unless they start with '-'. |
+ '<(RULE_INPUT_NAME)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ { |
+ 'target_name': 'icu_misc_res_files', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:genrb#host', |
+ 'icu_cnv_base_files', |
+ ], |
+ 'sources': [ |
+ '<@(icu_data_misc_res_sources)', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'genrb', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(genrb_exe)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/<(RULE_INPUT_ROOT).res', |
+ ], |
+ 'action': [ |
+ '<(genrb_exe)', |
+ '-k', |
+ '-R', |
+ '-q', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-s', |
+ 'source/data/misc', |
+ '-d<(icu_gen_dir)', # Writing as two arguments and the gen dir argument just disappears. Magically. Because lists can't have duplicates unless they start with '-'. |
+ '<(RULE_INPUT_NAME)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ { |
+ 'target_name': 'icu_res_index_txt_files_locales_curr_lang_region_zone_unit_coll_brkitr_rbnf_translit', |
+ 'type': 'none', |
+ 'actions': [ |
+ { |
+ 'action_name': 'icu_write_locales_res_index_txt', |
+ 'inputs': [ |
+ 'build_tools/write_res_index.py', |
+ # Note: Only using file names, not files. |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_tmp_dir)/res_index.txt', |
+ ], |
+ 'action': [ |
+ 'python', |
+ 'build_tools/write_res_index.py', |
+ '--cldr-version', |
+ '1.9', # FIXME: Move somewhere |
+ '--outfile', |
+ '<(icu_gen_tmp_dir)/res_index.txt', |
+ '<@(icu_data_locales_res_raw_sources)', |
+ ], |
+ 'process_outputs_as_sources': 1, # Right place? |
+ }, |
+ { |
+ 'action_name': 'icu_write_curr_res_index_txt', |
+ 'inputs': [ |
+ 'build_tools/write_res_index.py', |
+ # Note: Only using file names, not files. |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_tmp_dir)/curr/res_index.txt', |
+ ], |
+ 'action': [ |
+ 'python', |
+ 'build_tools/write_res_index.py', |
+ '--outfile', |
+ '<(icu_gen_tmp_dir)/curr/res_index.txt', |
+ '<@(icu_data_curr_res_raw_sources)', |
+ ], |
+ 'process_outputs_as_sources': 1, # Right place? |
+ }, |
+ { |
+ 'action_name': 'icu_write_lang_res_index_txt', |
+ 'inputs': [ |
+ 'build_tools/write_res_index.py', |
+ # Only using the name of files, not their contents. |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_tmp_dir)/lang/res_index.txt', |
+ ], |
+ 'action': [ |
+ 'python', |
+ 'build_tools/write_res_index.py', |
+ '--outfile', |
+ '<(icu_gen_tmp_dir)/lang/res_index.txt', |
+ '<@(icu_data_lang_res_raw_sources)', |
+ ], |
+ 'process_outputs_as_sources': 1, # Right place? |
+ }, |
+ { |
+ 'action_name': 'icu_write_region_res_index_txt', |
+ 'inputs': [ |
+ 'build_tools/write_res_index.py', |
+ # Only using the file names, not the file contents. |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_tmp_dir)/region/res_index.txt', |
+ ], |
+ 'action': [ |
+ 'python', |
+ 'build_tools/write_res_index.py', |
+ '--outfile', |
+ '<(icu_gen_tmp_dir)/region/res_index.txt', |
+ '<@(icu_data_region_res_sources)', |
+ ], |
+ 'process_outputs_as_sources': 1, # Right place? |
+ }, |
+ { |
+ 'action_name': 'icu_write_zone_res_index_txt', |
+ 'inputs': [ |
+ 'build_tools/write_res_index.py', |
+ # Only using the file names, not the file contents. |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_tmp_dir)/zone/res_index.txt', |
+ ], |
+ 'action': [ |
+ 'python', |
+ 'build_tools/write_res_index.py', |
+ '--outfile', |
+ '<(icu_gen_tmp_dir)/zone/res_index.txt', |
+ '<@(icu_data_zone_res_raw_sources)', |
+ ], |
+ 'process_outputs_as_sources': 1, # Right place? |
+ }, |
+ { |
+ 'action_name': 'icu_write_unit_res_index_txt', |
+ 'inputs': [ |
+ 'build_tools/write_res_index.py', |
+ # Only using the file names, not the file contents. |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_tmp_dir)/unit/res_index.txt', |
+ ], |
+ 'action': [ |
+ 'python', |
+ 'build_tools/write_res_index.py', |
+ '--outfile', |
+ '<(icu_gen_tmp_dir)/unit/res_index.txt', |
+ '<@(icu_data_unit_res_sources)', |
+ ], |
+ 'process_outputs_as_sources': 1, # Right place? |
+ }, |
+ { |
+ 'action_name': 'icu_write_coll_res_index_txt', |
+ 'inputs': [ |
+ 'build_tools/write_res_index.py', |
+ # Only using the file names, not the file contents. |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_tmp_dir)/coll/res_index.txt', |
+ ], |
+ 'action': [ |
+ 'python', |
+ 'build_tools/write_res_index.py', |
+ '--outfile', |
+ '<(icu_gen_tmp_dir)/coll/res_index.txt', |
+ '<@(icu_data_coll_res_sources)', |
+ ], |
+ 'process_outputs_as_sources': 1, # Right place? |
+ }, |
+ { |
+ 'action_name': 'icu_write_brkitr_res_index_txt', |
+ 'inputs': [ |
+ 'build_tools/write_res_index.py', |
+ # Only using the file names, not the file contents. |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_tmp_dir)/brkitr/res_index.txt', |
+ ], |
+ 'action': [ |
+ 'python', |
+ 'build_tools/write_res_index.py', |
+ '--outfile', |
+ '<(icu_gen_tmp_dir)/brkitr/res_index.txt', |
+ '<@(icu_data_brkitr_res_sources)', |
+ '<@(icu_data_brkitr_res_filtered_sources)', |
+ ], |
+ 'process_outputs_as_sources': 1, # Right place? |
+ }, |
+ { |
+ 'action_name': 'icu_write_rbnf_res_index_txt', |
+ 'inputs': [ |
+ 'build_tools/write_res_index.py', |
+ # Only using the file names, not the file contents. |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_tmp_dir)/rbnf/res_index.txt', |
+ ], |
+ 'action': [ |
+ 'python', |
+ 'build_tools/write_res_index.py', |
+ '--outfile', |
+ '<(icu_gen_tmp_dir)/rbnf/res_index.txt', |
+ ], |
+ 'process_outputs_as_sources': 1, # Right place? |
+ }, |
+ ], |
+ }, |
+ { |
+ 'target_name': 'icu_pool_res_locales_curr_lang_region_zone_unit', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:icupkg#host', |
+ ], |
+ 'sources': [ |
+ '<@(icu_data_locales_res_filtered_sources)', |
+ ], |
+ 'actions': [ |
+ { |
+ 'action_name': 'icu_locales_pool_res', |
+ 'inputs': [ |
+ '<(icupkg_exe)', |
+ 'source/data/locales/pool.res', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/pool.res', |
+ ], |
+ 'action': [ |
+ '<(icupkg_exe)', |
+ '-tl', |
+ 'source/data/locales/pool.res', |
+ '<(icu_gen_dir)/pool.res', |
+ ], |
+ 'process_outputs_as_sources': 1, # Right place? |
+ }, |
+ { |
+ 'action_name': 'icu_curr_pool_res', |
+ 'inputs': [ |
+ '<(icupkg_exe)', |
+ 'source/data/curr/pool.res', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/curr/pool.res', |
+ ], |
+ 'action': [ |
+ '<(icupkg_exe)', |
+ '-tl', |
+ 'source/data/curr/pool.res', |
+ '<(icu_gen_dir)/curr/pool.res', |
+ ], |
+ 'process_outputs_as_sources': 1, # Right place? |
+ }, |
+ { |
+ 'action_name': 'icu_lang_pool_res', |
+ 'inputs': [ |
+ '<(icupkg_exe)', |
+ 'source/data/lang/pool.res', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/lang/pool.res', |
+ ], |
+ 'action': [ |
+ '<(icupkg_exe)', |
+ '-tl', |
+ 'source/data/lang/pool.res', |
+ '<(icu_gen_dir)/lang/pool.res', |
+ ], |
+ 'process_outputs_as_sources': 1, # Right place? |
+ }, |
+ { |
+ 'action_name': 'icu_region_pool_res', |
+ 'inputs': [ |
+ '<(icupkg_exe)', |
+ 'source/data/region/pool.res', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/region/pool.res', |
+ ], |
+ 'action': [ |
+ '<(icupkg_exe)', |
+ '-tl', |
+ 'source/data/region/pool.res', |
+ '<(icu_gen_dir)/region/pool.res', |
+ ], |
+ 'process_outputs_as_sources': 1, # Right place? |
+ }, |
+ { |
+ 'action_name': 'icu_zone_pool_res', |
+ 'inputs': [ |
+ '<(icupkg_exe)', |
+ 'source/data/zone/pool.res', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/zone/pool.res', |
+ ], |
+ 'action': [ |
+ '<(icupkg_exe)', |
+ '-tl', |
+ 'source/data/zone/pool.res', |
+ '<(icu_gen_dir)/zone/pool.res', |
+ ], |
+ 'process_outputs_as_sources': 1, # Right place? |
+ }, |
+ { |
+ 'action_name': 'icu_unit_pool_res', |
+ 'inputs': [ |
+ '<(icupkg_exe)', |
+ 'source/data/unit/pool.res', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/unit/pool.res', |
+ ], |
+ 'action': [ |
+ '<(icupkg_exe)', |
+ '-tl', |
+ 'source/data/unit/pool.res', |
+ '<(icu_gen_dir)/unit/pool.res', |
+ ], |
+ 'process_outputs_as_sources': 1, # Right place? |
+ }, |
+ ], |
+ }, |
+ { |
+ 'target_name': 'icu_locales_res_index_res_file', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_res_index_txt_files_locales_curr_lang_region_zone_unit_coll_brkitr_rbnf_translit', |
+ 'icu_tools.gyp:genrb#host', |
+ ], |
+ 'sources': [ |
+ '<(icu_gen_tmp_dir)/res_index.txt', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'genrb', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(genrb_exe)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/<(RULE_INPUT_ROOT).res', |
+ ], |
+ 'action': [ |
+ '<(genrb_exe)', |
+ '-k', |
+ '-R', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-d<(icu_gen_dir)', # Writing as two arguments and the gen dir argument just disappears. Magically. Because lists can't have duplicates unless they start with '-'. |
+ '<(RULE_INPUT_PATH)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ # START CURRENCY |
+ { |
+ 'target_name': 'icu_curr_res_files', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:genrb#host', |
+ 'icu_cnv_base_files', |
+ 'icu_filtered_for_size_files', |
+ ], |
+ 'sources': [ |
+ '<@(icu_data_curr_res_root_sources)', |
+ '<@(icu_data_curr_res_supplemental_filtered_sources)', |
+ '<@(icu_data_curr_res_filtered_sources)', |
+ '<@(icu_data_curr_res_alias_filtered_sources)', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'genrb', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(genrb_exe)', |
+ '<(icu_gen_tmp_dir)/curr/pool.res', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/curr/<(RULE_INPUT_ROOT).res', |
+ ], |
+ 'action': [ |
+ '<(genrb_exe)', |
+ '--quiet', # Chromium addition to silence warnings. |
+ '--usePoolBundle', |
+ '-k', |
+ '-R', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-s', |
+ '<(icu_gen_tmp_dir)/curr', |
+ '-d', |
+ '<(icu_gen_dir)/curr', |
+ '<(RULE_INPUT_NAME)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ { |
+ 'target_name': 'icu_curr_res_index_res_file', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_res_index_txt_files_locales_curr_lang_region_zone_unit_coll_brkitr_rbnf_translit', |
+ 'icu_tools.gyp:genrb#host', |
+ ], |
+ 'sources': [ |
+ '<(icu_gen_tmp_dir)/curr/res_index.txt', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'genrb', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(genrb_exe)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/curr/<(RULE_INPUT_ROOT).res', |
+ ], |
+ 'action': [ |
+ '<(genrb_exe)', |
+ '-k', |
+ '-R', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-d', |
+ '<(icu_gen_dir)/curr', |
+ '<(RULE_INPUT_PATH)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ # END CURRENCY |
+ # START LANGUAGE |
+ { |
+ 'target_name': 'icu_lang_res_files', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:genrb#host', |
+ 'icu_cnv_base_files', |
+ 'icu_filtered_for_size_files', |
+ ], |
+ 'sources': [ |
+ '<@(icu_data_lang_res_root_sources)', |
+ '<@(icu_data_lang_res_filtered_sources)', |
+ '<@(icu_data_lang_res_alias_filtered_sources)', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'genrb', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(genrb_exe)', |
+ '<(icu_gen_tmp_dir)/lang/pool.res', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/lang/<(RULE_INPUT_ROOT).res', |
+ ], |
+ 'action': [ |
+ '<(genrb_exe)', |
+ '--usePoolBundle', |
+ '-k', |
+ '-R', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-s', |
+ '<(icu_gen_tmp_dir)/lang', |
+ '-d', |
+ '<(icu_gen_dir)/lang', |
+ '<(RULE_INPUT_NAME)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ { |
+ 'target_name': 'icu_lang_res_index_res_file', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_res_index_txt_files_locales_curr_lang_region_zone_unit_coll_brkitr_rbnf_translit', |
+ 'icu_tools.gyp:genrb#host', |
+ ], |
+ 'sources': [ |
+ '<(icu_gen_tmp_dir)/lang/res_index.txt', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'genrb', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(genrb_exe)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/lang/<(RULE_INPUT_ROOT).res', |
+ ], |
+ 'action': [ |
+ '<(genrb_exe)', |
+ '-k', |
+ '-R', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-d', |
+ '<(icu_gen_dir)/lang', |
+ '<(RULE_INPUT_PATH)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ # END LANGUAGE |
+ # START REGION |
+ { |
+ 'target_name': 'icu_region_res_files', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:genrb#host', |
+ 'icu_cnv_base_files', |
+ ], |
+ 'sources': [ |
+ '<@(icu_data_region_res_root_sources)', |
+ '<@(icu_data_region_res_sources)', |
+ '<@(icu_data_region_res_alias_sources)', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'genrb', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(genrb_exe)', |
+ 'source/data/region/pool.res', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/region/<(RULE_INPUT_ROOT).res', |
+ ], |
+ 'action': [ |
+ '<(genrb_exe)', |
+ '--usePoolBundle', |
+ '-k', |
+ '-R', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-s', |
+ 'source/data/region', |
+ '-d', |
+ '<(icu_gen_dir)/region', |
+ '<(RULE_INPUT_NAME)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ { |
+ 'target_name': 'icu_region_res_index_res_file', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_res_index_txt_files_locales_curr_lang_region_zone_unit_coll_brkitr_rbnf_translit', |
+ 'icu_tools.gyp:genrb#host', |
+ ], |
+ 'sources': [ |
+ '<(icu_gen_tmp_dir)/region/res_index.txt', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'genrb', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(genrb_exe)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/region/<(RULE_INPUT_ROOT).res', |
+ ], |
+ 'action': [ |
+ '<(genrb_exe)', |
+ '-k', |
+ '-R', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-d', |
+ '<(icu_gen_dir)/region', |
+ '<(RULE_INPUT_PATH)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ # END REGION |
+ # START ZONE |
+ { |
+ 'target_name': 'icu_zone_res_files', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:genrb#host', |
+ 'icu_cnv_base_files', |
+ 'icu_filtered_for_size_files', |
+ ], |
+ 'sources': [ |
+ '<@(icu_data_zone_res_root_sources)', |
+ '<@(icu_data_zone_res_filtered_sources)', |
+ '<@(icu_data_zone_res_alias_filtered_sources)', |
+ '<@(icu_data_zone_res_extra_sources)', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'genrb', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(genrb_exe)', |
+ 'source/data/zone/pool.res', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/zone/<(RULE_INPUT_ROOT).res', |
+ ], |
+ 'action': [ |
+ '<(genrb_exe)', |
+ '--usePoolBundle', |
+ '-k', |
+ '-R', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-s', |
+ '<(icu_gen_tmp_dir)/zone', |
+ '-d', |
+ '<(icu_gen_dir)/zone', |
+ '<(RULE_INPUT_NAME)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ { |
+ 'target_name': 'icu_zone_res_index_res_file', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_res_index_txt_files_locales_curr_lang_region_zone_unit_coll_brkitr_rbnf_translit', |
+ 'icu_tools.gyp:genrb#host', |
+ ], |
+ 'sources': [ |
+ '<(icu_gen_tmp_dir)/zone/res_index.txt', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'genrb', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(genrb_exe)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/zone/<(RULE_INPUT_ROOT).res', |
+ ], |
+ 'action': [ |
+ '<(genrb_exe)', |
+ '-k', |
+ '-R', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-d', |
+ '<(icu_gen_dir)/zone', |
+ '<(RULE_INPUT_PATH)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ # END ZONE |
+ # START UNIT |
+ { |
+ 'target_name': 'icu_unit_res_files', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:genrb#host', |
+ 'icu_cnv_base_files', |
+ ], |
+ 'sources': [ |
+ '<@(icu_data_unit_res_root_sources)', |
+ '<@(icu_data_unit_res_sources)', |
+ '<@(icu_data_unit_res_alias_sources)', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'genrb', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(genrb_exe)', |
+ 'source/data/unit/pool.res', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/unit/<(RULE_INPUT_ROOT).res', |
+ ], |
+ 'action': [ |
+ '<(genrb_exe)', |
+ '--quiet', # Chromium addition to silence warnings. |
+ '--usePoolBundle', |
+ '-k', |
+ '-R', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-s', |
+ 'source/data/unit', |
+ '-d', |
+ '<(icu_gen_dir)/unit', |
+ '<(RULE_INPUT_NAME)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ { |
+ 'target_name': 'icu_unit_res_index_res_file', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_res_index_txt_files_locales_curr_lang_region_zone_unit_coll_brkitr_rbnf_translit', |
+ 'icu_tools.gyp:genrb#host', |
+ ], |
+ 'sources': [ |
+ '<(icu_gen_tmp_dir)/unit/res_index.txt', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'genrb', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(genrb_exe)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/unit/<(RULE_INPUT_ROOT).res', |
+ ], |
+ 'action': [ |
+ '<(genrb_exe)', |
+ '-k', |
+ '-R', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-d', |
+ '<(icu_gen_dir)/unit', |
+ '<(RULE_INPUT_PATH)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ # END UNIT |
+ # START COLL |
+ { |
+ 'target_name': 'icu_coll_res_files', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:genrb#host', |
+ 'icu_cnv_base_files', |
+ 'icu_misc_res_files', # Specifically keyTypeData for sr_Latn.txt |
+ ], |
+ 'sources': [ |
+ '<@(icu_data_coll_res_root_sources)', |
+ '<@(icu_data_coll_res_sources)', |
+ '<@(icu_data_coll_res_alias_sources)', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'genrb', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(genrb_exe)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/coll/<(RULE_INPUT_ROOT).res', |
+ ], |
+ 'action': [ |
+ '<(genrb_exe)', |
+ '-k', |
+ '-R', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-s', |
+ 'source/data/coll', |
+ '-d', |
+ '<(icu_gen_dir)/coll', |
+ '<(RULE_INPUT_NAME)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ { |
+ 'target_name': 'icu_coll_res_index_res_file', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_res_index_txt_files_locales_curr_lang_region_zone_unit_coll_brkitr_rbnf_translit', |
+ 'icu_tools.gyp:genrb#host', |
+ ], |
+ 'sources': [ |
+ '<(icu_gen_tmp_dir)/coll/res_index.txt', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'genrb', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(genrb_exe)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/coll/<(RULE_INPUT_ROOT).res', |
+ ], |
+ 'action': [ |
+ '<(genrb_exe)', |
+ '-k', |
+ '-R', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-d', |
+ '<(icu_gen_dir)/coll', |
+ '<(RULE_INPUT_PATH)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ # END COLL |
+ # START BRKITR |
+ { |
+ 'target_name': 'icu_brkitr_res_files', |
+ # icu_brkitr_res_filtered_files is the same except that -s (source |
+ # dir) is icu_gen_tmp_dir in that action. |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:genrb#host', |
+ 'icu_dict_cjdict', |
+ 'icu_dict_laodict', |
+ 'icu_dict_thaidict', |
+ 'icu_dict_khmerdict', |
+ 'icu_brk_files', |
+ 'icu_cnv_base_files', |
+ ], |
+ 'sources': [ |
+ '<@(icu_data_brkitr_res_sources)', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'genrb', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(genrb_exe)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/brkitr/<(RULE_INPUT_ROOT).res', |
+ ], |
+ 'action': [ |
+ '<(genrb_exe)', |
+ '-k', |
+ '-R', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-s', |
+ 'source/data/brkitr', |
+ '-d', |
+ '<(icu_gen_dir)/brkitr', |
+ '<(RULE_INPUT_NAME)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ { |
+ 'target_name': 'icu_brkitr_res_filtered_files', |
+ # Same as icu_brkitr_res_files except that -s (source dir) is |
+ # icu_gen_tmp_dir. |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:genrb#host', |
+ 'icu_dict_cjdict', |
+ 'icu_dict_laodict', |
+ 'icu_dict_thaidict', |
+ 'icu_dict_khmerdict', |
+ 'icu_brk_files', |
+ 'icu_cnv_base_files', |
+ 'icu_filtered_for_size_files', |
+ ], |
+ 'sources': [ |
+ '<@(icu_data_brkitr_res_root_filtered_sources)', |
+ '<@(icu_data_brkitr_res_filtered_sources)', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'genrb', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(genrb_exe)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/brkitr/<(RULE_INPUT_ROOT).res', |
+ ], |
+ 'action': [ |
+ '<(genrb_exe)', |
+ '-k', |
+ '-R', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-s', |
+ '<(icu_gen_tmp_dir)/brkitr', |
+ '-d', |
+ '<(icu_gen_dir)/brkitr', |
+ '<(RULE_INPUT_NAME)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ { |
+ 'target_name': 'icu_brkitr_res_index_res_file', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_res_index_txt_files_locales_curr_lang_region_zone_unit_coll_brkitr_rbnf_translit', |
+ 'icu_tools.gyp:genrb#host', |
+ ], |
+ 'sources': [ |
+ '<(icu_gen_tmp_dir)/brkitr/res_index.txt', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'genrb', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(genrb_exe)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/brkitr/<(RULE_INPUT_ROOT).res', |
+ ], |
+ 'action': [ |
+ '<(genrb_exe)', |
+ '-k', |
+ '-R', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-d', |
+ '<(icu_gen_dir)/brkitr', |
+ '<(RULE_INPUT_PATH)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ # END BRKITR |
+ # START RBNF |
+ { |
+ 'target_name': 'icu_rbnf_res_index_res_file', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_res_index_txt_files_locales_curr_lang_region_zone_unit_coll_brkitr_rbnf_translit', |
+ 'icu_tools.gyp:genrb#host', |
+ ], |
+ 'sources': [ |
+ '<(icu_gen_tmp_dir)/rbnf/res_index.txt', |
+ ], |
+ 'rules': [ |
+ { |
+ 'rule_name': 'genrb', |
+ 'extension': 'txt', |
+ 'inputs': [ |
+ '<(genrb_exe)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/rbnf/<(RULE_INPUT_ROOT).res', |
+ ], |
+ 'action': [ |
+ '<(genrb_exe)', |
+ '--quiet', # Chromium addition to silence warnings. |
+ '-k', |
+ '-R', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-d', |
+ '<(icu_gen_dir)/rbnf', |
+ '<(RULE_INPUT_PATH)', |
+ ], |
+ 'process_outputs_as_sources': 1, |
+ }, |
+ ], |
+ }, |
+ # END RBNF |
+ # START TRANSLIT |
+ { |
+ 'target_name': 'icu_data_translit', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:genrb#host', |
+ ], |
+ 'actions': [ |
+ { |
+ 'action_name': 'genrb', |
+ 'inputs': [ |
+ '<(genrb_exe)', |
+ 'source/data/translit/css3transform.txt', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/translit/root.res', |
+ ], |
+ 'action': [ |
+ '<(genrb_exe)', |
+ '-k', |
+ '-R', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-s', |
+ 'source/data/translit', |
+ '-d', |
+ '<(icu_gen_dir)/translit', |
+ 'css3transform.txt', |
+ ], |
+ 'process_outputs_as_sources': 1, # Right place? |
+ }, |
+ ], |
+ }, |
+ # END TRANSLIT |
+ # START CONFUSABLES |
+ { |
+ 'target_name': 'icu_data_confusables', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:gencfu#host', |
+ ], |
+ 'actions': [ |
+ { |
+ 'action_name': 'gencfu', |
+ 'inputs': [ |
+ '<(gencfu_exe)', |
+ '<(icu_gen_dir)/cnvalias.icu', |
+ 'source/data/unidata/confusables.txt', |
+ 'source/data/unidata/confusablesWholeScript.txt', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_dir)/confusables.cfu', |
+ ], |
+ 'action': [ |
+ '<(gencfu_exe)', |
+ '-c', |
+ '-i', |
+ '<(icu_gen_dir)', |
+ '-r', |
+ 'source/data/unidata/confusables.txt', |
+ '-w', |
+ 'source/data/unidata/confusablesWholeScript.txt', |
+ '-o', |
+ '<(icu_gen_dir)/confusables.cfu', |
+ ], |
+ 'process_outputs_as_sources': 1, # Right place? |
+ }, |
+ ], |
+ }, |
+ # END CONFUSABLES |
+ # START icudata.lst/icudtl.dat |
+ { |
+ 'target_name': 'icu_data_package', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_tools.gyp:pkgdata#host', |
+ 'icu_cnv_base_files', |
+ 'icu_data_confusables', |
+ 'icu_data_translit', |
+ 'icu_cnv_ucm_files', |
+ 'icu_dict_cjdict', |
+ 'icu_dict_khmerdict', |
+ 'icu_dict_burmesedict', |
+ 'icu_dict_laodict', |
+ 'icu_dict_thaidict', |
+ 'icu_brk_files', |
+ 'icu_locales_res_files', |
+ 'icu_misc_res_files', |
+ 'icu_pool_res_locales_curr_lang_region_zone_unit', |
+ 'icu_locales_res_index_res_file', |
+ 'icu_curr_res_files', |
+ 'icu_curr_res_index_res_file', |
+ 'icu_lang_res_files', |
+ 'icu_lang_res_index_res_file', |
+ 'icu_region_res_files', |
+ 'icu_region_res_index_res_file', |
+ 'icu_zone_res_files', |
+ 'icu_zone_res_index_res_file', |
+ 'icu_unit_res_files', |
+ 'icu_unit_res_index_res_file', |
+ 'icu_coll_res_files', |
+ 'icu_coll_res_index_res_file', |
+ 'icu_brkitr_res_files', |
+ 'icu_brkitr_res_filtered_files', |
+ 'icu_brkitr_res_index_res_file', |
+ 'icu_rbnf_res_index_res_file', |
+ ], |
+ 'variables': { |
+ 'icu_resource_files_file': '<|(icu_data_resource_list.tmp <@(icu_data_generated_contents))' |
+ }, |
+ 'actions': [ |
+ { |
+ 'action_name': 'write_icudata_lst', |
+ 'inputs': [ |
+ 'build_tools/write_icudata_lst.py', |
+ '<(icu_resource_files_file)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_tmp_dir)/icudata.lst', |
+ ], |
+ 'action': [ |
+ 'python', |
+ 'build_tools/write_icudata_lst.py', |
+ '--inroot', |
+ '<(icu_gen_dir)', |
+ '--PRODUCT_DIR', |
+ '<(PRODUCT_DIR)', |
+ '--infile', |
+ '<(icu_resource_files_file)', |
+ '--outfile', |
+ '<(icu_gen_tmp_dir)/icudata.lst', |
+ ], |
+ }, |
+ { |
+ 'action_name': 'write_icupkg_inc', |
+ 'inputs': [ |
+ 'build_tools/write_icupkg_inc.py', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_tmp_dir)/icupkg.inc', |
+ ], |
+ 'action': [ |
+ 'python', |
+ 'build_tools/write_icupkg_inc.py', |
+ '--outfile', |
+ '<(icu_gen_tmp_dir)/icupkg.inc', |
+ "--ver", |
+ "<(ICU_VER)", |
+ "--icu-dir", |
+ ".", # Check: Is this a usable path once the data is used? |
+ ], |
+ }, |
+ { |
+ 'action_name': 'pkgdata', |
+ 'conditions': [ |
+ ['icu_use_data_file_flag==1', |
+ # This is the common/recommended way: |
+ # External .dat file. |
+ { |
+ 'inputs': [ |
+ 'build_tools/run_without_cygwin.py', |
+ '<(pkgdata_exe)', |
+ '<(icu_gen_tmp_dir)/icudata.lst', |
+ '<@(icu_data_generated_contents)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_tmp_dir)/icudt<(ICU_VER)l.dat', |
+ ], |
+ 'variables': { |
+ 'pkgdata_args': [ |
+ '-m', # Mode |
+ 'common', |
+ ] |
+ }, |
+ } ], |
+ ['icu_use_data_file_flag==0 and OS=="win"', |
+ { |
+ 'inputs': [ |
+ 'build_tools/run_without_cygwin.py', |
+ '<(pkgdata_exe)', |
+ '<(icu_gen_tmp_dir)/icudata.lst', |
+ '<@(icu_data_generated_contents)', |
+ ], |
+ 'outputs': [ |
+ # Windows pkgdata puts the dll in the |
+ # Source directory. |
+ '<(icu_gen_dir)/icudt<(ICU_VER).dll', |
+ ], |
+ 'variables': { |
+ 'pkgdata_args': [ |
+ '-e', # Entry point |
+ 'icudt<(ICU_VER)', |
+ '-m', # Mode |
+ 'dll', |
+ '-L', # Lib name |
+ 'icudata', |
+ ] |
+ }, |
+ # Do we also need: |
+ # editbin /NXCOMPAT /DYNAMICBASE "$(U_ICUDATA_NAME).dll" |
+ # ? They add randomness to the dll load and makes |
+ # the data non-executable (I think?). |
+ } ], |
+ ['icu_use_data_file_flag==0 and OS!="win"', |
+ { |
+ 'inputs': [ |
+ 'build_tools/run_without_cygwin.py', |
+ '<(pkgdata_exe)', |
+ '<(icu_gen_tmp_dir)/icudata.lst', |
+ '<(icu_gen_tmp_dir)/icupkg.inc', |
+ '<@(icu_data_generated_contents)', |
+ ], |
+ 'outputs': [ |
+ '<(icu_gen_tmp_dir)/icudt<(ICU_VER)l.S', |
+ ], |
+ 'variables': { |
+ 'pkgdata_args': [ |
+ '-O', |
+ '<(icu_gen_tmp_dir)/icupkg.inc', |
+ '-e', # Entry point |
+ 'icudt<(ICU_VER)', |
+ '-m', # Mode |
+ 'dll', |
+ '-L', # Lib name |
+ 'icudata', |
+ ] |
+ }, |
+ }] |
+ ], |
+ # v8 standalone inserts a cygwin environment in the path and |
+ # on Windows pkgdata expects to find the VS linker (link.exe) |
+ # in the path. So we strip cygwin from the path before |
+ # invoking pkgdata. |
+ 'action': [ |
+ 'python', |
+ 'build_tools/run_without_cygwin.py', |
+ '<(pkgdata_exe)', |
+ '-q', # Quiet |
+ '-c', # Use default copyright. |
+ '-s<(icu_gen_dir)', # Source |
+ '-d<(icu_gen_tmp_dir)', # Destination |
+ '-T<(icu_gen_tmp_dir)', # Temp dir |
+ '-r', # Revision |
+ '<(ICU_VER).1', |
+ '-p', # Data name |
+ 'icudt<(ICU_VER)l', |
+ '<@(pkgdata_args)', |
+ '<(icu_gen_tmp_dir)/icudata.lst', |
+ ], |
+ }, |
+ ], |
+ }, |
+ # END pkgdata |
+ { |
+ 'target_name': 'icu_data', |
+ 'type': 'none', |
+ 'dependencies': [ |
+ 'icu_data_package', |
+ ], |
+ 'conditions': [ |
+ ['icu_use_data_file_flag==1', { |
+ 'actions': [ |
+ { |
+ # TODO: Get it generated at the right |
+ # place with the right name? |
+ 'action_name': 'copy_rename_icudtl_dat', |
+ 'inputs': [ |
+ '<(icu_gen_tmp_dir)/icudt<(ICU_VER)l.dat', |
+ ], |
+ 'outputs': [ |
+ '<(PRODUCT_DIR)/icudtl.dat', |
+ ], |
+ 'action': [ |
+ 'python', |
+ 'build_tools/copy_rename_file.py', |
+ '<(icu_gen_tmp_dir)/icudt<(ICU_VER)l.dat', |
+ '<(PRODUCT_DIR)/icudtl.dat', |
+ ] |
+ } |
+ ] |
+ }], |
+ ['icu_use_data_file_flag==0 and OS=="win"', { |
+ 'actions': [ |
+ { |
+ # TODO: Get it generated at the right |
+ # place with the right name? |
+ 'action_name': 'copy_rename_icudtl_dll', |
+ 'inputs': [ |
+ # Windows pkgdata puts the dll in the |
+ # Source directory. |
+ '<(icu_gen_dir)/icudt<(ICU_VER).dll', |
+ ], |
+ 'outputs': [ |
+ '<(PRODUCT_DIR)/icudtl.dll', |
+ ], |
+ 'action': [ |
+ 'python', |
+ 'build_tools/copy_rename_file.py', |
+ '<(icu_gen_dir)/icudt<(ICU_VER).dll', |
+ '<(PRODUCT_DIR)/icudtl.dll', |
+ ] |
+ } |
+ ] |
+ }], |
+ ], |
+ }, |
+ ], # targets |
+} |