Commit 49a1a989 authored by simonb@chromium.org's avatar simonb@chromium.org

Fix race condition in gyp/ninja builds.

A race can exist where two build targets build the same libchrome.  It
can manifest as:
  .../arm-linux-androideabi-objcopy: error: the input file '.../libchrome.2085.0.so' is empty

Move the temporary directory used to transfer stripped files between the
strip and pack actions from <(SHARED_INTERMEDIATE_DIR) to <(intermediate_dir).
Also, remove nugatory inter-action dependency, and make actions previously
consuming <(strip_stamp) consume <(pack_arm_relocations_stamp) instead.

BUG=392417

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

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@282118 0039d316-1c4b-4281-b951-d872f2087c98
parent 93a9886b
...@@ -103,7 +103,7 @@ ...@@ -103,7 +103,7 @@
'obfuscate_stamp': '<(intermediate_dir)/obfuscate.stamp', 'obfuscate_stamp': '<(intermediate_dir)/obfuscate.stamp',
'pack_arm_relocations_stamp': '<(intermediate_dir)/pack_arm_relocations.stamp', 'pack_arm_relocations_stamp': '<(intermediate_dir)/pack_arm_relocations.stamp',
'strip_stamp': '<(intermediate_dir)/strip.stamp', 'strip_stamp': '<(intermediate_dir)/strip.stamp',
'stripped_libraries_dir': '<(SHARED_INTERMEDIATE_DIR)/stripped_libraries', 'stripped_libraries_dir': '<(intermediate_dir)/stripped_libraries',
'strip_additional_stamp': '<(intermediate_dir)/strip_additional.stamp', 'strip_additional_stamp': '<(intermediate_dir)/strip_additional.stamp',
'classes_dir': '<(intermediate_dir)/classes/2', 'classes_dir': '<(intermediate_dir)/classes/2',
'javac_includes': [], 'javac_includes': [],
...@@ -374,9 +374,6 @@ ...@@ -374,9 +374,6 @@
], ],
'stamp': '<(pack_arm_relocations_stamp)', 'stamp': '<(pack_arm_relocations_stamp)',
}, },
'dependencies': [
'strip_native_libraries',
],
'includes': ['../build/android/pack_arm_relocations.gypi'], 'includes': ['../build/android/pack_arm_relocations.gypi'],
}, },
{ {
...@@ -452,7 +449,7 @@ ...@@ -452,7 +449,7 @@
'variables': { 'variables': {
'inputs': [ 'inputs': [
'<(ordered_libraries_file)', '<(ordered_libraries_file)',
'<(strip_stamp)', '<(pack_arm_relocations_stamp)',
'<(strip_additional_stamp)', '<(strip_additional_stamp)',
], ],
'input_apk_path': '<(unsigned_apk_path)', 'input_apk_path': '<(unsigned_apk_path)',
...@@ -469,7 +466,7 @@ ...@@ -469,7 +466,7 @@
'variables': { 'variables': {
'libraries_source_dir': '<(apk_package_native_libs_dir)/<(android_app_abi)', 'libraries_source_dir': '<(apk_package_native_libs_dir)/<(android_app_abi)',
'package_input_paths': [ 'package_input_paths': [
'<(strip_stamp)', '<(pack_arm_relocations_stamp)',
'<(strip_additional_stamp)', '<(strip_additional_stamp)',
], ],
}, },
......
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