|
6a1d2f93
|
2017-05-02T16:47:38
|
|
Fix compilation of the Vulkan loader / layers in standalone
This commit introduces a stamping mechanism to make sure the order of
build dependencies is correct.
In GYP there are the following build order dependencies (between others):
- A target link depends on previous target links
- A target source compile depends on that target actions outputs
- An action output depends on the action inputs
The problem was that there were actions in vulkan_layer_utils_static
that generated headers needed by vulkan_loader's sources (between others)
Making a "dependencies" relationship between the two was not enough to
ensure the headers were generated before the source were compiled.
Instead we replicated the "stamping" mechanism used in GN using GYP
actions that depend on the headers and output a dummy stamp file. This
completes the build order dependencies: the sources depend on the stamp
which depend on the action's input, i.e. the generated headers.
BUG=angleproject:1668
Change-Id: I2de15ac2ea8f838acdbf43da1f111b28b8cc2184
Reviewed-on: https://chromium-review.googlesource.com/493892
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Frank Henigman <fjhenigman@chromium.org>
|