Austin Eng 6ef39372f8 Don't enable GL backends by default if build_with_chromium
This is the simplest change necessary to remove GL backends from
the build in Chrome. The backends will still be enabled on bots
that test Dawn. A more proper fix might be to update the dawn.py
recipe to explicitly enable the GLES backend (we don't test the
GL backend on bots using dawn.py, but we do test GLES), and then
defaulting both dawn_enable_desktop_gl and dawn_enable_opengles
to false.

For now, stick with the most minimal change for two reasons:
 1. Defaulting to false would lose automatically enabling the
    backends in Dawn standalone builds where they're supported.
 2. LUCI changes have changed the permissions to trigger tryjobs
    on recipe changes, so testing a recipe change is not possible
    right now. See crbug.com/1168315.

Bug: dawn:1036
Change-Id: I7f4977fbd271200f1d6161d2e2b3438cdb4db1ca
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/61600
Reviewed-by: Stephen White <senorblanco@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
2021-08-11 20:03:41 +00:00
2021-07-20 17:57:20 +00:00
2017-11-28 16:18:39 -05:00
2018-07-18 22:54:06 +02:00
2021-02-02 17:03:30 +00:00
2021-06-30 15:06:43 +00:00
2021-07-20 17:57:20 +00:00
2021-04-21 18:05:01 +00:00

Dawn, a WebGPU implementation

Dawn is an open-source and cross-platform implementation of the work-in-progress 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 C/C++ headers that applications and other building blocks use.
    • The webgpu.h version that Dawn implements.
    • A C++ wrapper for the webgpu.h.
  • A "native" implementation of WebGPU using platforms' GPU APIs:
    • D3D12 on Windows 10
    • Metal on macOS and iOS
    • Vulkan on Windows, Linux, ChromeOS, Android and Fuchsia
    • OpenGL as best effort where available
  • A client-server implementation of WebGPU for applications that are in a sandbox without access to native drivers

Helpful links:

Documentation table of content

Developer documentation:

User documentation: (TODO, figure out what overlaps with the webgpu.h docs)

Status

(TODO)

License

Apache 2.0 Public License, please see LICENSE.

Disclaimer

This is not an officially supported Google product.

Description
CMake-only fork of https://dawn.googlesource.com/dawn with cleaned, vendored dependencies
Readme Multiple Licenses 145 MiB
Languages
C++ 59.9%
HLSL 18.2%
GLSL 17.3%
Go 2.1%
Objective-C++ 0.8%
Other 1.6%