OSDN Git Service

Create static archives in temporary file
authorColin Cross <ccross@android.com>
Fri, 3 Feb 2017 23:10:05 +0000 (15:10 -0800)
committerColin Cross <ccross@android.com>
Fri, 3 Feb 2017 23:16:59 +0000 (15:16 -0800)
commite14d9b7f7e699fce137c6914cb61533c38812852
tree768b30c50370802c1ba95d30d97bcd2bcb403eb0
parentd12816b100c035da17310dfd4b94c5a235eccd5e
Create static archives in temporary file

Creating static archives is often a multi-command process due to
adding whole static libraires or hitting command line length limits.
If one of the intermediate commands fails, the output file may
already exist.  Unlike make, ninja has no option to delete output
files on failed builds, instead assuming all build commands will
produce their output file atomically
(https://github.com/ninja-build/ninja/issues/1135).

Change the static library rules to generate to a temporary file
that is then atomically moved into place as the output file.

Test: m -j checkbuild tests cts
Change-Id: I4faf269f0c8e313c738154870a5aa0b4774a72bc
core/definitions.mk