# found in the LICENSE file.
{
+ 'variables': {
+ 'core_library_empty_embedder_apk_name': 'XWalkCoreLibraryEmptyEmbedder',
+ },
'targets': [
{
'target_name': 'pack_xwalk_core_library',
],
},
{
+ 'target_name': 'xwalk_core_library_empty_embedder_apk',
+ 'type': 'none',
+ 'dependencies': [
+ 'libxwalkcore',
+ 'xwalk_core_java',
+ ],
+ 'variables': {
+ 'apk_name': '<(core_library_empty_embedder_apk_name)',
+ 'java_in_dir': 'runtime/android/core_library_empty',
+ 'native_lib_target': 'libxwalkcore',
+ 'is_test_apk': 1,
+ 'additional_src_dirs': [
+ '<(DEPTH)/ui/android/java/resource_map',
+ '<(DEPTH)/content/public/android/java/resource_map',
+ ],
+ },
+ 'includes': [ '../build/java_apk.gypi' ],
+ },
+ {
+ # pack classes compiled from the java files chromium generated into a
+ # jar file.
+ 'target_name': 'chromium_generated_java',
+ 'type': 'none',
+ 'dependencies': [
+ 'xwalk_core_library_empty_embedder_apk',
+ ],
+ 'variables': {
+ 'jar_name': '<(_target_name).jar',
+ 'jar_final_path': '<(PRODUCT_DIR)/lib.java/<(jar_name)',
+ 'jar_excluded_classes': [
+ '*org/xwalk/*',
+ ],
+ },
+ 'actions': [
+ {
+ 'action_name': 'jar_<(_target_name)',
+ 'message': 'Creating <(_target_name) jar',
+ 'inputs': [
+ '<(DEPTH)/build/android/gyp/util/build_utils.py',
+ '<(DEPTH)/build/android/gyp/util/md5_check.py',
+ '<(DEPTH)/build/android/gyp/jar.py',
+ '<(PRODUCT_DIR)/apks/<(core_library_empty_embedder_apk_name).apk',
+ ],
+ 'outputs': [
+ '<(jar_final_path)',
+ ],
+ 'action': [
+ 'python', '<(DEPTH)/build/android/gyp/jar.py',
+ '--classes-dir=<(PRODUCT_DIR)/xwalk_core_library_empty_embedder_apk/classes',
+ '--jar-path=<(jar_final_path)',
+ '--excluded-classes=<(jar_excluded_classes)',
+ ],
+ },
+ ],
+ },
+ {
+ 'target_name': 'xwalk_core_library_java',
+ 'type': 'none',
+ 'dependencies': [
+ 'xwalk_core_java',
+ 'chromium_generated_java',
+ ],
+ 'variables': {
+ 'classes_dir': '<(PRODUCT_DIR)/<(_target_name)/classes',
+ 'jar_name': '<(_target_name).jar',
+ 'jar_final_path': '<(PRODUCT_DIR)/lib.java/<(jar_name)',
+ #TODO(wang16): figure out why the 'jar_final_path' defined in chromium_generated_java
+ # not added into following all_dependent_settings setting chain.
+ # BUG=https://crosswalk-project.org/jira/browse/XWALK-1575
+ 'input_jars_paths': ['<(PRODUCT_DIR)/lib.java/chromium_generated_java.jar'],
+ },
+ 'all_dependent_settings': {
+ 'variables': {
+ 'input_jars_paths': ['<(jar_final_path)'],
+ },
+ },
+ 'actions': [
+ {
+ 'action_name': 'jars_<(_target_name)',
+ 'message': 'Creating <(_target_name) jar',
+ 'inputs': [
+ 'build/android/merge_jars.py',
+ ],
+ 'outputs': [
+ '<(PRODUCT_DIR)/pack_xwalk_core_library_java_intermediate/always_run',
+ ],
+ 'action': [
+ 'python', 'build/android/merge_jars.py',
+ '--classes-dir=<(classes_dir)',
+ '--jars=>(input_jars_paths)',
+ '--jar-path=<(jar_final_path)',
+ ],
+ },
+ ],
+ },
+ {
'target_name': 'xwalk_core_library',
'type': 'none',
'dependencies': [
- 'xwalk_core_shell_apk'
+ 'xwalk_core_shell_apk',
+ 'xwalk_core_library_java',
],
'actions': [
{