Commit 832fcca9 authored by newt@chromium.org's avatar newt@chromium.org

Revert 176134

> [Android] Generate localized strings.xml files at build time.
> 
> This generates localized strings.xml files (e.g.
> values-fr/strings.xml) from grd and xtb files at build time. This
> means we no longer need to check in localized strings.xml files. Note:
> the xtb files are empty until translations are available.
> 
> Benefits:
>  - 41 fewer extraneous results when grepping Java string IDs
>  - Switching from maintaining strings in strings.xml over to using a
>    grd file is One Trivial CL* away: just include English in the list
>    of languages for which we generate strings.xml files.
> 
> *Restrictions may apply
> 
> BUG=167248
> 
> Review URL: https://codereview.chromium.org/11659006

TBR=newt@chromium.org
Review URL: https://codereview.chromium.org/11820058

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@176151 0039d316-1c4b-4281-b951-d872f2087c98
parent 219c503b
...@@ -28,7 +28,7 @@ ...@@ -28,7 +28,7 @@
], ],
'action': ['<@(grit_cmd)', 'action': ['<@(grit_cmd)',
'-i', '<(grit_grd_file)', 'build', '-i', '<(grit_grd_file)', 'build',
'-f', '<(grit_resource_ids)', '-f<(grit_resource_ids)',
'-o', '<(grit_out_dir)', '-o', '<(grit_out_dir)',
'<@(grit_defines)' ], '<@(grit_defines)' ],
'msvs_cygwin_shell': 0, 'msvs_cygwin_shell': 0,
......
...@@ -44,8 +44,6 @@ ...@@ -44,8 +44,6 @@
# R_package - The java package in which the R class (which maps resources to # R_package - The java package in which the R class (which maps resources to
# integer IDs) should be generated, e.g. org.chromium.content. # integer IDs) should be generated, e.g. org.chromium.content.
# R_package_relpath - Same as R_package, but replace each '.' with '/'. # R_package_relpath - Same as R_package, but replace each '.' with '/'.
# java_strings_grd - The name of the grd file from which to generate localized
# strings.xml files, if any.
{ {
'dependencies': [ 'dependencies': [
...@@ -67,19 +65,16 @@ ...@@ -67,19 +65,16 @@
'generated_R_dirs': [], 'generated_R_dirs': [],
'additional_R_files': [], 'additional_R_files': [],
'has_java_resources%': 0, 'has_java_resources%': 0,
'java_strings_grd%': '',
}, },
'conditions': [ 'conditions': [
['has_java_resources == 1', { ['has_java_resources == 1', {
'variables': { 'variables': {
'res_dir': '<(java_in_dir)/res', 'res_dir': '<(java_in_dir)/res',
'out_res_dir': '<(SHARED_INTERMEDIATE_DIR)/<(package_name)/res', 'crunched_res_dir': '<(SHARED_INTERMEDIATE_DIR)/<(package_name)/res',
'R_dir': '<(SHARED_INTERMEDIATE_DIR)/<(package_name)/java_R', 'R_dir': '<(SHARED_INTERMEDIATE_DIR)/<(package_name)/java_R',
'R_file': '<(R_dir)/<(R_package_relpath)/R.java', 'R_file': '<(R_dir)/<(R_package_relpath)/R.java',
'generated_src_dirs': ['<(R_dir)'], 'generated_src_dirs': ['<(R_dir)'],
'additional_input_paths': ['<(R_file)'], 'additional_input_paths': ['<(R_file)'],
# grit_grd_file is used by grit_action.gypi, included below.
'grit_grd_file': '<(java_in_dir)/strings/<(java_strings_grd)',
}, },
'all_dependent_settings': { 'all_dependent_settings': {
'variables': { 'variables': {
...@@ -90,40 +85,15 @@ ...@@ -90,40 +85,15 @@
# Dependent APKs include this target's resources via # Dependent APKs include this target's resources via
# additional_res_dirs and additional_res_packages. # additional_res_dirs and additional_res_packages.
'additional_res_dirs': ['<(out_res_dir)', '<(res_dir)'], 'additional_res_dirs': ['<(crunched_res_dir)', '<(res_dir)'],
'additional_res_packages': ['<(R_package)'], 'additional_res_packages': ['<(R_package)'],
}, },
}, },
'conditions': [
['java_strings_grd != ""', {
'actions': [
{
'action_name': 'generate_localized_strings_xml',
'variables': {
'grit_out_dir': '<(out_res_dir)',
# resource_ids is unneeded since we don't generate .h headers.
'grit_resource_ids': '',
},
'includes': ['../build/grit_action.gypi'],
},
],
}],
],
'actions': [ 'actions': [
# Generate R.java and crunch image resources. # Generate R.java and crunch image resources.
{ {
'action_name': 'process_resources', 'action_name': 'process_resources',
'message': 'processing resources for <(package_name)', 'message': 'processing resources for <(package_name)',
'conditions': [
['java_strings_grd != ""', {
'inputs': [
# TODO(newt): replace this with .../values/strings.xml once
# the English strings.xml is generated as well? That would be
# simpler and faster and should be equivalent.
'<!@pymod_do_main(grit_info <@(grit_defines) --outputs "<(out_res_dir)" <(grit_grd_file))',
],
}],
],
'inputs': [ 'inputs': [
'<(DEPTH)/build/android/process_resources.py', '<(DEPTH)/build/android/process_resources.py',
'<!@(find <(res_dir) -type f)', '<!@(find <(res_dir) -type f)',
...@@ -138,7 +108,7 @@ ...@@ -138,7 +108,7 @@
'--R-package', '<(R_package)', '--R-package', '<(R_package)',
'--R-dir', '<(R_dir)', '--R-dir', '<(R_dir)',
'--res-dir', '<(res_dir)', '--res-dir', '<(res_dir)',
'--crunched-res-dir', '<(out_res_dir)', '--crunched-res-dir', '<(crunched_res_dir)',
], ],
}, },
], ],
......
...@@ -59,8 +59,6 @@ ...@@ -59,8 +59,6 @@
# resource_dir - The directory for resources. # resource_dir - The directory for resources.
# R_package - A custom Java package to generate the resource file R.java in. # R_package - A custom Java package to generate the resource file R.java in.
# By default, the package given in AndroidManifest.xml will be used. # By default, the package given in AndroidManifest.xml will be used.
# java_strings_grd - The name of the grd file from which to generate localized
# strings.xml files, if any.
{ {
'variables': { 'variables': {
...@@ -80,8 +78,6 @@ ...@@ -80,8 +78,6 @@
'additional_res_dirs': [], 'additional_res_dirs': [],
'additional_res_packages': [], 'additional_res_packages': [],
'is_test_apk%': 0, 'is_test_apk%': 0,
'java_strings_grd%': '',
'grit_grd_file%': '',
}, },
'sources': [ 'sources': [
'<@(native_libs_paths)' '<@(native_libs_paths)'
...@@ -115,35 +111,6 @@ ...@@ -115,35 +111,6 @@
], ],
}, },
], ],
'conditions': [
['R_package != ""', {
'variables': {
# We generate R.java in package R_package (in addition to the package
# listed in the AndroidManifest.xml, which is unavoidable).
'additional_res_dirs': ['<(DEPTH)/build/android/ant/empty/res'],
'additional_res_packages': ['<(R_package)'],
},
}],
['java_strings_grd != ""', {
'variables': {
'out_res_dir': '<(SHARED_INTERMEDIATE_DIR)/<(package_name)_apk/res',
'additional_res_dirs': ['<(out_res_dir)'],
# grit_grd_file is used by grit_action.gypi, included below.
'grit_grd_file': '<(java_in_dir)/strings/<(java_strings_grd)',
},
'actions': [
{
'action_name': 'generate_localized_strings_xml',
'variables': {
'grit_out_dir': '<(out_res_dir)',
# resource_ids is unneeded since we don't generate .h headers.
'grit_resource_ids': '',
},
'includes': ['../build/grit_action.gypi'],
},
],
}],
],
'actions': [ 'actions': [
{ {
'action_name': 'ant_<(package_name)_apk', 'action_name': 'ant_<(package_name)_apk',
...@@ -164,14 +131,6 @@ ...@@ -164,14 +131,6 @@
['resource_dir!=""', { ['resource_dir!=""', {
'inputs': ['<!@(find <(java_in_dir)/<(resource_dir) -name "*")'] 'inputs': ['<!@(find <(java_in_dir)/<(resource_dir) -name "*")']
}], }],
['java_strings_grd != ""', {
'inputs': [
# TODO(newt): replace this with .../values/strings.xml once
# the English strings.xml is generated as well? That would be
# simpler and faster and should be equivalent.
'<!@pymod_do_main(grit_info <@(grit_defines) --outputs "<(out_res_dir)" <(grit_grd_file))',
],
}],
['is_test_apk == 1', { ['is_test_apk == 1', {
'variables': { 'variables': {
'additional_res_dirs=': [], 'additional_res_dirs=': [],
...@@ -223,4 +182,14 @@ ...@@ -223,4 +182,14 @@
] ]
}, },
], ],
'conditions': [
['R_package != ""', {
'variables': {
# We generate R.java in package R_package (in addition to the package
# listed in the AndroidManifest.xml, which is unavoidable).
'additional_res_dirs': ['<(DEPTH)/build/android/ant/empty/res'],
'additional_res_packages': ['<(R_package)'],
},
}],
],
} }
...@@ -1081,7 +1081,6 @@ ...@@ -1081,7 +1081,6 @@
'has_java_resources': 1, 'has_java_resources': 1,
'R_package': 'org.chromium.chrome', 'R_package': 'org.chromium.chrome',
'R_package_relpath': 'org/chromium/chrome', 'R_package_relpath': 'org/chromium/chrome',
'java_strings_grd': 'android_chrome_strings.grd',
}, },
'includes': [ 'includes': [
'../build/java.gypi', '../build/java.gypi',
......
...@@ -295,7 +295,6 @@ ...@@ -295,7 +295,6 @@
'has_java_resources': 1, 'has_java_resources': 1,
'R_package': 'org.chromium.content', 'R_package': 'org.chromium.content',
'R_package_relpath': 'org/chromium/content', 'R_package_relpath': 'org/chromium/content',
'java_strings_grd': 'android_content_strings.grd',
}, },
'conditions': [ 'conditions': [
['android_build_type == 0', { ['android_build_type == 0', {
......
...@@ -893,7 +893,6 @@ ...@@ -893,7 +893,6 @@
'has_java_resources': 1, 'has_java_resources': 1,
'R_package': 'org.chromium.ui', 'R_package': 'org.chromium.ui',
'R_package_relpath': 'org/chromium/ui', 'R_package_relpath': 'org/chromium/ui',
'java_strings_grd': 'android_ui_strings.grd',
}, },
'dependencies': [ 'dependencies': [
'../base/base.gyp:base_java', '../base/base.gyp:base_java',
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment