src/vulkan_support/vulkan.gypi


Log

Author Commit Date CI Message
Geoff Lang 5e4343a1 2017-05-05T10:56:12 Add msvs_cygwin_shell to all actions in vulkan.gypi. BUG=angleproject:1668 Change-Id: I93bc7584ff7d945f9efde25c3379a282ee246b53 Reviewed-on: https://chromium-review.googlesource.com/497328 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Corentin Wallez 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>
Frank Henigman f231232b 2017-05-02T15:46:18 vulkan: assume secure_getenv(). Vulkan's cmake files check for the availability of secure_getenv() but we just assume it exists. BUG=chromium:717558 Change-Id: I22054c3967f543d163dde37b9a6b13e896da7a50 Reviewed-on: https://chromium-review.googlesource.com/494126 Commit-Queue: Frank Henigman <fjhenigman@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Frank Henigman 29f148b0 2016-11-23T21:05:36 Support Vulkan on Linux as well as Windows. Refactor display and surface classes into Win32 and Linux parts and add Linux parts to gn and gyp builds. BUG=angleproject:1668 Change-Id: I2a7d29c35f4f42fa0035bd97938d3770f3627672 Reviewed-on: https://chromium-review.googlesource.com/412426 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Frank Henigman f5841774 2017-04-19T16:31:11 Move Vulkan layer json files. Put the Vulkan layer JSON files in the same place as the gn build puts them, for consistency. Change-Id: I6294372ce34ed20da357a8b8ea83018c4e748c37 Reviewed-on: https://chromium-review.googlesource.com/475074 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
Jamie Madill 9cb2c262 2017-04-03T10:12:04 Re-land: Roll vulkan-validation-layers. (2/2) https://android.googlesource.com/platform/external/vulkan-validation-layers.git/+log/bcb80d06bbdc09..f47c534fee2f26f This CL re-enables Vulkan with the new build files. In particular, this roll contains a fix for a vs2017 signed/unsigned mismatch warning as error. Re-land fixes build dependencies. BUG=chromium:683729 Change-Id: If2b1bc7250037c33402965eae354ca550ecd36c0 Reviewed-on: https://chromium-review.googlesource.com/466106 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Geoff Lang 795e7573 2017-03-28T15:47:21 Revert "Roll vulkan-validation-layers. (2/2)" This reverts commit 2feaa5e0ac6b779e13254c84b41de436f5d14765. Reason for revert: Broke the Chrome Windows builders. Build: https://build.chromium.org/p/chromium/builders/Win/builds/53432 Error: src\third_party\vulkan-validation-layers\src\include\vulkan\vk_layer.h(39): fatal error C1083: Cannot open include file: 'vk_layer_dispatch_table.h': No such file or directory Original change's description: > Roll vulkan-validation-layers. (2/2) > > https://android.googlesource.com/platform/external/vulkan-validation-layers.git/+log/bcb80d06bbdc09..f47c534fee2f26f > > This CL re-enables Vulkan with the new build files. > > In particular, this roll contains a fix for a vs2017 signed/unsigned > mismatch warning as error. > > BUG=chromium:683729 > > Change-Id: Id38e10f97702cac5a51ee194c81972861f15db21 > Reviewed-on: https://chromium-review.googlesource.com/457278 > Commit-Queue: Jamie Madill <jmadill@chromium.org> > Reviewed-by: Jamie Madill <jmadill@chromium.org> > TBR=geofflang@chromium.org,jmadill@chromium.org,bungeman@chromium.org,cwallez@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. BUG=chromium:683729 Change-Id: Ic60f22496fc57904132d574a2fb2c1ca4d875b3e Reviewed-on: https://chromium-review.googlesource.com/461999 Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 2feaa5e0 2017-03-24T13:04:21 Roll vulkan-validation-layers. (2/2) https://android.googlesource.com/platform/external/vulkan-validation-layers.git/+log/bcb80d06bbdc09..f47c534fee2f26f This CL re-enables Vulkan with the new build files. In particular, this roll contains a fix for a vs2017 signed/unsigned mismatch warning as error. BUG=chromium:683729 Change-Id: Id38e10f97702cac5a51ee194c81972861f15db21 Reviewed-on: https://chromium-review.googlesource.com/457278 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>
Jamie Madill 94d8222f 2017-02-03T12:45:21 Vulkan: Disable layer deps for libANGLE in GYP. This prevents a multiply defined symbol error in ninja. Unforunately I'm not aware of how to do the equivalent of GN's data_deps in GYP. BUG=angleproject:1709 Change-Id: I9c616337c668a5fa652b6c084b2a64d83d526e4a Reviewed-on: https://chromium-review.googlesource.com/437646 Reviewed-by: Geoff Lang <geofflang@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 8ecf7f9b 2017-01-13T17:29:52 Vulkan: Implement shader compilation. This hooks up the Vulkan GLSL, decorated with locations, to glslang, and then pipes the SPIRV back to the Program implementation for later use when making pipelines to run draw calls. The program compilation tests work now, but don't really test anything other than not generating Vulkan validation layer errors during compilation and shader object generation. BUG=angleproject:1576 Change-Id: I625e42219f4b4d1433dd3109b94e1a2f666ba4bd Reviewed-on: https://chromium-review.googlesource.com/408519 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill ef9e30eb 2017-02-01T15:02:05 Vulkan: Fix JSON generation in GYP. This isn't tested on the bots, but fails in standalone. BUG=angleproject:1810 Change-Id: Ia1743352e236966abf321d312a8beb47a4cff336 Reviewed-on: https://chromium-review.googlesource.com/435012 Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Jamie Madill 7cc14ee8 2017-01-13T09:33:37 Vulkan: Update build files after roll. They have consolidated to one helper script generator. Simplifies the GN build. This also re-enables the Vulkan back-end after the roll. BUG=angleproject:1319 Change-Id: Ie98568ae5d1dc46932ea8d698809561da7591836 Reviewed-on: https://chromium-review.googlesource.com/427307 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 2a9ef3ea 2017-01-10T13:17:06 Vulkan: Fix GYP layer dependencies. The GYP project wasn't correctly depending on the various layer targets, like the GN was. BUG=angleproject:1319 Change-Id: I54794c71be899fe5ba40cb999ecf2ce7c4a972b5 Reviewed-on: https://chromium-review.googlesource.com/425941 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill a1325179 2017-01-03T10:01:39 Vulkan: Fix struct helper output list. Some files were removed from the Vulkan build, so we should also remove them. They were triggering work on incremental builds. BUG=angleproject:1319 Change-Id: Ia179eb6d96ea2f41175c85cc8ae6313c39f68647 Reviewed-on: https://chromium-review.googlesource.com/424592 Reviewed-by: Jamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
Jamie Madill 0448ec84 2016-12-23T13:41:47 Vulkan: Enable validation layers on request. Also adds the build files for the Vulkan layers. The layers are enabled by default for the tests. BUG=angleproject:1319 Change-Id: I0b442b36312a1299a932922e1c4e39f00801de49 Reviewed-on: https://chromium-review.googlesource.com/367751 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>
Jamie Madill 327ba857 2016-11-30T12:38:28 Vulkan: Hook up loader code. This integrates the build files for the loader SDK, and tests the compilation by calling InitInstance. There's no current way to test the runtime behaviour since there's no way for the tests to initialize the Vulkan back-end, that will come in the next CL. BUG=angleproject:1319 Change-Id: Ia8bf96ca068eaf40744c9753b59ffaaa5ada8a73 Reviewed-on: https://chromium-review.googlesource.com/367519 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: Geoff Lang <geofflang@chromium.org>