[D3D12] Always compile Dawn against Agility SDK headers To minimize #ifdefs in Dawn's D3D12 backend, unconditionally compile Dawn with AgilitySDK headers while keeping Dawn's public API on Windows SDK headers. The dawn_use_agility_sdk GN arg and DAWN_USE_AGILITY_SDK CMake flag now control whether to the Agility SDK is used at runtime. A follow up change will remove these flags and replace them with a runtime toggle. Update the Agility SDK include path to the root 'src' directory, allowing Dawn to include Agility headers via "build/native/include/d3d12.h" to avoid shadowing system headers. Fix the CMake build to use DAWN_AGILITY_SDK_DIR to locate SDK files while keeping build definitions in third_party/agility-sdk, enabling the use of SDKs located outside the Dawn source tree. Bug: 519934394 Change-Id: I6c808b1368c89e5971ee1a4430f8494dac1b1de7 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/313836 Reviewed-by: Corentin Wallez <cwallez@chromium.org> Commit-Queue: Antonio Maiorano <amaiorano@google.com> Reviewed-by: Antonio Maiorano <amaiorano@google.com>
Dawn is an open-source and cross-platform implementation of the WebGPU standard. More precisely it implements webgpu.h that is a one-to-one mapping with the WebGPU IDL. Dawn is meant to be integrated as part of a larger system and is the underlying implementation of WebGPU in Chromium.
Dawn provides several WebGPU building blocks:
webgpu.h version that Dawn implements.webgpu.h.Helpful links:
Developer documentation:
User documentation: (TODO, figure out what overlaps with the webgpu.h docs)
BSD 3-Clause License, please see LICENSE.
This is not an officially supported Google product.