commit | f300040e47599d3fc49cdc5aa2a7799db56c2b1e | [log] [tgz] |
---|---|---|
author | David Greenaway <dgreenaway@google.com> | Mon May 27 00:42:49 2019 +0000 |
committer | CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org> | Mon May 27 00:42:49 2019 +0000 |
tree | feb9c166ef63a962ebf9f773df33f4282c33ddaf | |
parent | dbf36a64f67e5bf80d91d21152a655900a1cfc71 [diff] |
[virtualization] Avoid rebuilding guest images when nothing changed. Currently, a "fx build" involving the "prebuilt_image" target will always execute the target (and all of its downstream actions), even if nothing has changed. The reason is as follows: The "guest_prebuilt" action needs to perform some trickery to allow a build to succeed even if no prebuilt image is available. It does this by dynamically generating a depfile linking the prebuilt image to a copy of the image in the output directory. (See added comments in this CL for details). The current depfile is in an incorrect format, however: GN (or, more precisely, Ninja) expects the LHS of the depfile to have a path relative to the output directory, while the current depfile has an absolute path. Ninja becomes confused, and makes the conservative decision to just execute the action again. This CL updates the depfile to be relative to the out directory, as is expected by Ninja. We also add some additional comments explaining some of the tricks being carried out by the "prebuilt_image" action. After this CL, a "fx build" on an unmodified tree performs no actions, as expected. Change-Id: I789a7ba7154ee40350278bcea8ad048a587ca857
Pink + Purple == Fuchsia (a new operating system)
Fuchsia is a modular, capability-based operating system. Fuchsia runs on modern 64-bit Intel and ARM processors.
Fuchsia is an open source project with a code of conduct that we expect everyone who interacts with the project to respect.
See Getting Started.
See the documentation.