Commit 0cd95d09 authored by michaelbai's avatar michaelbai Committed by Commit bot

Using copy_ex to copy assets

Used copy_ex to copy assets and fixed some wrong dependence

This patch is a subset of a large patch which made bots
flaky, the flaky can't reproduced by trybot and cq dryrun.
So, split the large patch to two small ones, this is the
first one, another one does renaming v8 data file.

it also added the code (in ApkAssets.java and copy_ex.py) to dump
the information once bot failed.

The original patch
https://codereview.chromium.org/1422793004/

BUG=540788, 547235
TBR=jochen@chromium.org,dpranke@chromium.org,halliwell@chromium.org,jbudorick@chromium.org,mef@chromium.org,rmcilroy@chromium.org,dtrainor@chromium.org,cpu@chromium.org

Review URL: https://codereview.chromium.org/1424983004

Cr-Commit-Position: refs/heads/master@{#357024}
parent 7e0c0b4b
...@@ -33,6 +33,19 @@ public class ApkAssets { ...@@ -33,6 +33,19 @@ public class ApkAssets {
afd.getStartOffset(), afd.getStartOffset(),
afd.getLength() }; afd.getLength() };
} catch (IOException e) { } catch (IOException e) {
// TODO(michaelbai): Remove dump assets once crbug.com/547235 fixed.
try {
String[] assets = context.getAssets().list("");
StringBuffer sb = new StringBuffer("Dump assets(" + assets.length + "):\n");
for (String asset : assets) {
sb.append(asset);
sb.append("\n");
}
Log.e(LOGTAG, sb.toString());
} catch (IOException ioe) {
Log.e(LOGTAG, "Error while list assets: " + ioe);
}
Log.e(LOGTAG, "Error while loading asset " + fileName + ": " + e); Log.e(LOGTAG, "Error while loading asset " + fileName + ": " + e);
return new long[] {-1, -1, -1}; return new long[] {-1, -1, -1};
} finally { } finally {
......
...@@ -538,6 +538,9 @@ ...@@ -538,6 +538,9 @@
# Targets for Android receiver. # Targets for Android receiver.
'conditions': [ 'conditions': [
['OS=="android"', { ['OS=="android"', {
'variables': {
'cast_shell_assets_path': '<(PRODUCT_DIR)/assets/cast_shell_apk',
},
'targets': [ 'targets': [
{ {
'target_name': 'cast_shell_icudata', 'target_name': 'cast_shell_icudata',
...@@ -546,14 +549,17 @@ ...@@ -546,14 +549,17 @@
'../third_party/icu/icu.gyp:icudata', '../third_party/icu/icu.gyp:icudata',
'../v8/tools/gyp/v8.gyp:v8_external_snapshot', '../v8/tools/gyp/v8.gyp:v8_external_snapshot',
], ],
'copies': [{ 'variables': {
'destination': '<(PRODUCT_DIR)/assets', 'dest_path': '<(cast_shell_assets_path)',
'files': [ 'src_files': [
'<(PRODUCT_DIR)/icudtl.dat', '<(PRODUCT_DIR)/icudtl.dat',
'<(PRODUCT_DIR)/assets/cast_shell.pak',
'<(PRODUCT_DIR)/natives_blob.bin', '<(PRODUCT_DIR)/natives_blob.bin',
'<(PRODUCT_DIR)/snapshot_blob.bin', '<(PRODUCT_DIR)/snapshot_blob.bin',
], ],
}], 'clear': 1,
},
'includes': ['../build/android/copy_ex.gypi'],
}, },
{ {
'target_name': 'libcast_shell_android', 'target_name': 'libcast_shell_android',
...@@ -655,8 +661,13 @@ ...@@ -655,8 +661,13 @@
'android_manifest_path': '<(SHARED_INTERMEDIATE_DIR)/cast_shell_manifest/AndroidManifest.xml', 'android_manifest_path': '<(SHARED_INTERMEDIATE_DIR)/cast_shell_manifest/AndroidManifest.xml',
'package_name': 'org.chromium.chromecast.shell', 'package_name': 'org.chromium.chromecast.shell',
'native_lib_target': 'libcast_shell_android', 'native_lib_target': 'libcast_shell_android',
'asset_location': '<(PRODUCT_DIR)/assets', 'asset_location': '<(cast_shell_assets_path)',
'additional_input_paths': ['<(PRODUCT_DIR)/assets/cast_shell.pak'], 'additional_input_paths': [
'<(asset_location)/cast_shell.pak',
'<(asset_location)/icudtl.dat',
'<(asset_location)/natives_blob.bin',
'<(asset_location)/snapshot_blob.bin',
],
}, },
'includes': [ '../build/java_apk.gypi' ], 'includes': [ '../build/java_apk.gypi' ],
}, },
......
...@@ -1479,14 +1479,14 @@ ...@@ -1479,14 +1479,14 @@
'dependencies': [ 'dependencies': [
'components_browsertests', 'components_browsertests',
], ],
'copies': [ 'variables': {
{ 'dest_path': '<(PRODUCT_DIR)/components_browsertests_apk_shell/assets',
'destination': '<(PRODUCT_DIR)/components_browsertests_apk_shell/assets', 'src_files': [
'files': [ '<@(components_browsertests_pak_input_resources)',
'<@(components_browsertests_pak_input_resources)', ],
], 'clear': 1,
} },
], 'includes': ['../build/android/copy_ex.gypi'],
}, },
{ {
'target_name': 'components_browsertests_manifest', 'target_name': 'components_browsertests_manifest',
...@@ -1519,13 +1519,13 @@ ...@@ -1519,13 +1519,13 @@
'conditions': [ 'conditions': [
['icu_use_data_file_flag==1', { ['icu_use_data_file_flag==1', {
'additional_input_paths': [ 'additional_input_paths': [
'<(PRODUCT_DIR)/icudtl.dat', '<(asset_location)/icudtl.dat',
], ],
}], }],
['v8_use_external_startup_data==1', { ['v8_use_external_startup_data==1', {
'additional_input_paths': [ 'additional_input_paths': [
'<(PRODUCT_DIR)/natives_blob.bin', '<(asset_location)/natives_blob.bin',
'<(PRODUCT_DIR)/snapshot_blob.bin', '<(asset_location)/snapshot_blob.bin',
], ],
}], }],
], ],
......
...@@ -630,36 +630,29 @@ ...@@ -630,36 +630,29 @@
], ],
}, },
{ {
'target_name': 'content_icudata', 'target_name': 'content_shell_assets_copy',
'type': 'none', 'type': 'none',
'conditions': [ 'dependencies': ['content_shell_and_tests.gyp:content_shell_pak'],
['icu_use_data_file_flag==1', { 'variables': {
'copies': [ 'src_files': ['<(PRODUCT_DIR)/content_shell.pak'],
{ 'conditions': [
'destination': '<(PRODUCT_DIR)/content_shell/assets', ['v8_use_external_startup_data==1', {
'files': [ 'dependencies': ['<(DEPTH)/v8/tools/gyp/v8.gyp:v8_external_snapshot'],
'<(PRODUCT_DIR)/icudtl.dat', 'src_files': [
], '<(PRODUCT_DIR)/natives_blob.bin',
}, '<(PRODUCT_DIR)/snapshot_blob.bin',
], ],
}], }],
], ['icu_use_data_file_flag==1', {
}, 'dependencies': ['<(DEPTH)/third_party/icu/icu.gyp:icudata'],
{ 'src_files': ['<(PRODUCT_DIR)/icudtl.dat'],
'target_name': 'content_v8_external_data', }],
'type': 'none', ],
'conditions': [ 'dest_path': '<(PRODUCT_DIR)/content_shell/assets',
['v8_use_external_startup_data==1', { 'clear': 1,
'copies': [ },
{ 'includes': [
'destination': '<(PRODUCT_DIR)/content_shell/assets', '../build/android/copy_ex.gypi',
'files': [
'<(PRODUCT_DIR)/natives_blob.bin',
'<(PRODUCT_DIR)/snapshot_blob.bin',
],
},
],
}],
], ],
}, },
], ],
......
...@@ -403,16 +403,6 @@ ...@@ -403,16 +403,6 @@
'browser/devtools/devtools_resources.gyp:devtools_resources', 'browser/devtools/devtools_resources.gyp:devtools_resources',
], ],
}], }],
['OS=="android"', {
'copies': [
{
'destination': '<(PRODUCT_DIR)',
'files': [
'<(PRODUCT_DIR)/content_shell/assets/content_shell.pak'
],
},
],
}],
['toolkit_views==1', { ['toolkit_views==1', {
'dependencies': [ 'dependencies': [
'<(DEPTH)/ui/views/resources/views_resources.gyp:views_resources' '<(DEPTH)/ui/views/resources/views_resources.gyp:views_resources'
...@@ -437,6 +427,7 @@ ...@@ -437,6 +427,7 @@
'<(SHARED_INTERMEDIATE_DIR)/ui/strings/app_locale_settings_en-US.pak', '<(SHARED_INTERMEDIATE_DIR)/ui/strings/app_locale_settings_en-US.pak',
'<(SHARED_INTERMEDIATE_DIR)/ui/strings/ui_strings_en-US.pak', '<(SHARED_INTERMEDIATE_DIR)/ui/strings/ui_strings_en-US.pak',
], ],
'pak_output': '<(PRODUCT_DIR)/content_shell.pak',
'conditions': [ 'conditions': [
['toolkit_views==1', { ['toolkit_views==1', {
'pak_inputs': [ 'pak_inputs': [
...@@ -445,9 +436,6 @@ ...@@ -445,9 +436,6 @@
}], }],
['OS!="android"', { ['OS!="android"', {
'pak_inputs': ['<(SHARED_INTERMEDIATE_DIR)/blink/devtools_resources.pak',], 'pak_inputs': ['<(SHARED_INTERMEDIATE_DIR)/blink/devtools_resources.pak',],
'pak_output': '<(PRODUCT_DIR)/content_shell.pak',
}, {
'pak_output': '<(PRODUCT_DIR)/content_shell/assets/content_shell.pak',
}], }],
], ],
}, },
...@@ -921,9 +909,8 @@ ...@@ -921,9 +909,8 @@
'target_name': 'content_shell_apk', 'target_name': 'content_shell_apk',
'type': 'none', 'type': 'none',
'dependencies': [ 'dependencies': [
'content.gyp:content_icudata', 'content.gyp:content_shell_assets_copy',
'content.gyp:content_java', 'content.gyp:content_java',
'content.gyp:content_v8_external_data',
'content_java_test_support', 'content_java_test_support',
'content_shell_java', 'content_shell_java',
'libcontent_shell_content_view', 'libcontent_shell_content_view',
...@@ -942,19 +929,19 @@ ...@@ -942,19 +929,19 @@
'java_in_dir': 'shell/android/shell_apk', 'java_in_dir': 'shell/android/shell_apk',
'resource_dir': 'shell/android/shell_apk/res', 'resource_dir': 'shell/android/shell_apk/res',
'native_lib_target': 'libcontent_shell_content_view', 'native_lib_target': 'libcontent_shell_content_view',
'additional_input_paths': ['<(PRODUCT_DIR)/content_shell/assets/content_shell.pak'], 'additional_input_paths': ['<(asset_location)/content_shell.pak'],
'asset_location': '<(PRODUCT_DIR)/content_shell/assets', 'asset_location': '<(PRODUCT_DIR)/content_shell/assets',
'extra_native_libs': ['<(SHARED_LIB_DIR)/libosmesa.so'], 'extra_native_libs': ['<(SHARED_LIB_DIR)/libosmesa.so'],
'conditions': [ 'conditions': [
['icu_use_data_file_flag==1', { ['icu_use_data_file_flag==1', {
'additional_input_paths': [ 'additional_input_paths': [
'<(PRODUCT_DIR)/icudtl.dat', '<(asset_location)/icudtl.dat',
], ],
}], }],
['v8_use_external_startup_data==1', { ['v8_use_external_startup_data==1', {
'additional_input_paths': [ 'additional_input_paths': [
'<(PRODUCT_DIR)/natives_blob.bin', '<(asset_location)/natives_blob.bin',
'<(PRODUCT_DIR)/snapshot_blob.bin', '<(asset_location)/snapshot_blob.bin',
], ],
}], }],
], ],
......
...@@ -1015,7 +1015,7 @@ ...@@ -1015,7 +1015,7 @@
'dependencies': [ 'dependencies': [
'../ui/android/ui_android.gyp:ui_android', '../ui/android/ui_android.gyp:ui_android',
'../ui/shell_dialogs/shell_dialogs.gyp:shell_dialogs', '../ui/shell_dialogs/shell_dialogs.gyp:shell_dialogs',
'content.gyp:content_v8_external_data', 'content.gyp:content_shell_assets_copy',
], ],
}], }],
['v8_use_external_startup_data==1 and OS!="ios"', { ['v8_use_external_startup_data==1 and OS!="ios"', {
...@@ -1872,15 +1872,15 @@ ...@@ -1872,15 +1872,15 @@
'dependencies': [ 'dependencies': [
'../v8/tools/gyp/v8.gyp:v8_external_snapshot', '../v8/tools/gyp/v8.gyp:v8_external_snapshot',
], ],
'copies': [ 'variables': {
{ 'dest_path': '<(asset_location)',
'destination': '<(asset_location)', 'src_files': [
'files': [ '<(PRODUCT_DIR)/natives_blob.bin',
'<(PRODUCT_DIR)/natives_blob.bin', '<(PRODUCT_DIR)/snapshot_blob.bin',
'<(PRODUCT_DIR)/snapshot_blob.bin', ],
], 'clear': 1,
}, },
], 'includes': ['../build/android/copy_ex.gypi'],
}], }],
], ],
'variables': { 'variables': {
...@@ -1928,9 +1928,8 @@ ...@@ -1928,9 +1928,8 @@
'target_name': 'content_browsertests_apk', 'target_name': 'content_browsertests_apk',
'type': 'none', 'type': 'none',
'dependencies': [ 'dependencies': [
'content.gyp:content_icudata', 'content.gyp:content_shell_assets_copy',
'content.gyp:content_java', 'content.gyp:content_java',
'content.gyp:content_v8_external_data',
'content_browsertests', 'content_browsertests',
'content_shell_browsertests_java', 'content_shell_browsertests_java',
'content_java_test_support', 'content_java_test_support',
...@@ -1996,9 +1995,8 @@ ...@@ -1996,9 +1995,8 @@
['target_arch != "x64"', { ['target_arch != "x64"', {
'dependencies': [ 'dependencies': [
'chromium_android_linker_test', 'chromium_android_linker_test',
'content.gyp:content_icudata', 'content.gyp:content_shell_assets_copy',
'content.gyp:content_java', 'content.gyp:content_java',
'content.gyp:content_v8_external_data',
'content_shell_java', 'content_shell_java',
], ],
'variables': { 'variables': {
......
...@@ -1523,15 +1523,15 @@ ...@@ -1523,15 +1523,15 @@
'dependencies': [ 'dependencies': [
'../v8/tools/gyp/v8.gyp:v8_external_snapshot', '../v8/tools/gyp/v8.gyp:v8_external_snapshot',
], ],
'copies': [ 'variables': {
{ 'dest_path': '<(asset_location)',
'destination': '<(asset_location)', 'src_files': [
'files': [ '<(PRODUCT_DIR)/natives_blob.bin',
'<(PRODUCT_DIR)/natives_blob.bin', '<(PRODUCT_DIR)/snapshot_blob.bin',
'<(PRODUCT_DIR)/snapshot_blob.bin', ],
], 'clear': 1,
}, },
], 'includes': ['../build/android/copy_ex.gypi'],
}], }],
], ],
'variables': { 'variables': {
......
...@@ -144,15 +144,15 @@ ...@@ -144,15 +144,15 @@
'dependencies': [ 'dependencies': [
'<(DEPTH)/v8/tools/gyp/v8.gyp:v8_external_snapshot', '<(DEPTH)/v8/tools/gyp/v8.gyp:v8_external_snapshot',
], ],
'copies': [ 'variables': {
{ 'dest_path': '<(asset_location)',
'destination': '<(asset_location)', 'src_files': [
'files': [ '<(PRODUCT_DIR)/natives_blob.bin',
'<(PRODUCT_DIR)/natives_blob.bin', '<(PRODUCT_DIR)/snapshot_blob.bin',
'<(PRODUCT_DIR)/snapshot_blob.bin', ],
], 'clear': 1,
}, },
], 'includes': ['../../../../build/android/copy_ex.gypi'],
}], }],
], ],
'variables': { 'variables': {
......
...@@ -141,28 +141,20 @@ ...@@ -141,28 +141,20 @@
'type': 'none', 'type': 'none',
'dependencies': [ 'dependencies': [
'<(DEPTH)/base/base.gyp:base_java', '<(DEPTH)/base/base.gyp:base_java',
'<(DEPTH)/content/content_shell_and_tests.gyp:content_shell_pak', '<(DEPTH)/content/content.gyp:content_shell_assets_copy',
'<(DEPTH)/net/net.gyp:net_java', '<(DEPTH)/net/net.gyp:net_java',
'webkit_unit_tests', 'webkit_unit_tests',
], ],
'conditions': [
['v8_use_external_startup_data==1', {
'dependencies': [
'<(DEPTH)/v8/tools/gyp/v8.gyp:v8_external_snapshot',
'<(DEPTH)/content/content.gyp:content_v8_external_data',
],
}],
],
'variables': { 'variables': {
'test_suite_name': 'webkit_unit_tests', 'test_suite_name': 'webkit_unit_tests',
'input_shlib_path': '<(SHARED_LIB_DIR)/<(SHARED_LIB_PREFIX)webkit_unit_tests<(SHARED_LIB_SUFFIX)', 'input_shlib_path': '<(SHARED_LIB_DIR)/<(SHARED_LIB_PREFIX)webkit_unit_tests<(SHARED_LIB_SUFFIX)',
'additional_input_paths': ['<(PRODUCT_DIR)/content_shell/assets/content_shell.pak'], 'additional_input_paths': ['<(asset_location)/content_shell.pak'],
'asset_location': '<(PRODUCT_DIR)/content_shell/assets', 'asset_location': '<(PRODUCT_DIR)/content_shell/assets',
'conditions': [ 'conditions': [
['v8_use_external_startup_data==1', { ['v8_use_external_startup_data==1', {
'additional_input_paths': [ 'additional_input_paths': [
'<(PRODUCT_DIR)/content_shell/assets/natives_blob.bin', '<(asset_location)/natives_blob.bin',
'<(PRODUCT_DIR)/content_shell/assets/snapshot_blob.bin', '<(asset_location)/snapshot_blob.bin',
], ],
}], }],
], ],
......
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