summaryrefslogtreecommitdiffstats
path: root/remoting/remoting_android.gypi
diff options
context:
space:
mode:
authorlambroslambrou@chromium.org <lambroslambrou@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-04-23 22:06:30 +0000
committerlambroslambrou@chromium.org <lambroslambrou@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-04-23 22:06:30 +0000
commit248c476635bd2b07f12f5ee705d0468b77e7c7db (patch)
tree4ae2c2b23183ef5c8b6aa38e01a2b390c6ec7464 /remoting/remoting_android.gypi
parent34674fd597065fdd1ab1e43993aa0c9a4a69a4cb (diff)
downloadchromium_src-248c476635bd2b07f12f5ee705d0468b77e7c7db.zip
chromium_src-248c476635bd2b07f12f5ee705d0468b77e7c7db.tar.gz
chromium_src-248c476635bd2b07f12f5ee705d0468b77e7c7db.tar.bz2
Refactor GYP targets for Android Chromoting client
This creates a separate target, remoting_java, that builds the Java code and resources. The remoting_apk target depends on this target and builds the final APK. Several changes were needed, since the build/java.gypi file has some features and checks not present in build/java_apk.gypi: * switch/case statements changed to if/else chains, since the generated R.java uses 'int' instead of 'const int' for resource IDs. * XML style fixes necessitated by the lint-style checking, and v14 resource generation. * A new Java class added: RemotingApplication. This is needed right now because the APK build step requires at least one Java source file. In future, this class will override onCreate(), and a different override will be used for official builds, to dependency-inject Java code that requires closed-source dependencies (such as the Help+Feedback implementation). TEST=Builds and runs. Touching various files triggers rebuild. Review URL: https://codereview.chromium.org/245893004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@265750 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'remoting/remoting_android.gypi')
-rw-r--r--remoting/remoting_android.gypi46
1 files changed, 25 insertions, 21 deletions
diff --git a/remoting/remoting_android.gypi b/remoting/remoting_android.gypi
index 7a8c6ed..d0865d6 100644
--- a/remoting/remoting_android.gypi
+++ b/remoting/remoting_android.gypi
@@ -79,47 +79,51 @@
}],
}, # end of target 'remoting_apk_manifest'
{
- 'target_name': 'remoting_apk',
+ 'target_name': 'remoting_android_client_java',
'type': 'none',
+ 'variables': {
+ 'java_in_dir': 'android/java',
+ 'has_java_resources': 1,
+ 'R_package': 'org.chromium.chromoting',
+ 'R_package_relpath': 'org/chromium/chromoting',
+ 'res_extra_dirs': [ '<(SHARED_INTERMEDIATE_DIR)/remoting/android/res' ],
+ 'res_extra_files': [
+ '<!@pymod_do_main(grit_info <@(grit_defines) --outputs "<(SHARED_INTERMEDIATE_DIR)" resources/remoting_strings.grd)',
+ '<(SHARED_INTERMEDIATE_DIR)/remoting/android/res/drawable/chromoting128.png',
+ '<(SHARED_INTERMEDIATE_DIR)/remoting/android/res/drawable/icon_host.png',
+ ],
+ },
'dependencies': [
+ '../base/base.gyp:base_java',
+ '../ui/android/ui_android.gyp:ui_java',
'remoting_android_resources',
+ ],
+ 'includes': [ '../build/java.gypi' ],
+ },
+ {
+ 'target_name': 'remoting_apk',
+ 'type': 'none',
+ 'dependencies': [
'remoting_apk_manifest',
'remoting_client_jni',
+ 'remoting_android_client_java',
],
'variables': {
'apk_name': '<!(python <(version_py_path) -f <(branding_path) -t "@APK_FILE_NAME@")',
'android_app_version_name': '<(version_full)',
'android_app_version_code': '<!(python tools/android_version.py <(android_app_version_name))',
'android_manifest_path': '<(SHARED_INTERMEDIATE_DIR)/remoting/android/AndroidManifest.xml',
+ 'java_in_dir': 'android/apk',
'native_lib_target': 'libremoting_client_jni',
- 'java_in_dir': 'android/java',
- 'R_package': 'org.chromium.chromoting',
- 'package_name': '<(_target_name)',
- 'resource_dir': 'android/java/res',
- 'additional_res_dirs': [ '<(SHARED_INTERMEDIATE_DIR)/remoting/android/res' ],
- 'additional_input_paths': [
- '<(PRODUCT_DIR)/obj/remoting/remoting_android_resources.actions_rules_copies.stamp',
- '<(PRODUCT_DIR)/obj/remoting/remoting_resources.actions_rules_copies.stamp',
- ],
},
'includes': [ '../build/java_apk.gypi' ],
}, # end of target 'remoting_apk'
{
- # remoting_apk creates a .jar file as a side effect. Any Java targets
- # that need that .jar in their classpath should depend on this target.
- 'target_name': 'remoting_apk_java',
- 'type': 'none',
- 'dependencies': [
- 'remoting_apk',
- ],
- 'includes': [ '../build/apk_fake_jar.gypi' ],
- }, # end of target 'remoting_apk_java'
- {
'target_name': 'remoting_test_apk',
'type': 'none',
'dependencies': [
'../base/base.gyp:base_java_test_support',
- 'remoting_apk_java',
+ 'remoting_android_client_java',
],
'variables': {
'apk_name': 'ChromotingTest',