[DEPS] Add mesa + meson behind a config flag

Also rolls libdrm

Roll third_party/libdrm/src/ ad78bb591..369990d96 (78 commits)

https://chromium.googlesource.com/chromiumos/third_party/libdrm.git/+log/ad78bb591d02..369990d9660a

$ git log ad78bb591..369990d96 --date=short --no-merges --format='%ad %ae %s'
2025-12-19 ilya.zl amdgpu: update marketing names for strix point revisions
2025-12-11 contact build: bump version to 2.4.131
2025-12-09 sergio.costas amdgpu: NetBSD lacks secure_getenv
2025-12-01 samuel.pitoiset amdgpu: add Steam Machine marketing name
2025-12-08 contact build: bump version to 2.4.130
2025-12-04 contact Sync headers with drm-next
2025-12-07 val headers: drm: Sync virtgpu_drm.h with Linux v6.16
2022-07-08 afd omap: fix omap_bo_size for tiled buffers
2025-12-03 sergio.costas amdgpu: Fix envar name in documentation
2025-11-17 sergio.costas Support multiple paths in AMDGPU_ASIC_ID_TABLE_PATH envar
2022-11-02 sergio.costas amdgpu: add env support for amdgpu.ids path
2025-11-17 contact build: bump version to 2.4.128
2025-11-16 contact Sync headers with drm-next
2025-11-10 alexander.deucher amdgpu: update marketing names
2025-11-03 samuel.pitoiset amdgpu: update marketing names
2025-11-01 marek.olsak Bump version to 2.4.128
2025-11-01 marek.olsak Revert ABI breakage "drm/amdgpu: Add user queue HQD count to hw_ip info"
2025-10-16 christian.koenig test/amdgpu: remove amdgpu unit tests
2025-10-16 mario.limonciello amdgpu: Only read /proc/cpuinfo as a fallback
2025-10-16 superm1 amdgpu: Slice and dice the string for APUs
2025-10-21 Jesse.Zhang amdgpu: Add parameter validation to amdgpu_bo functions to fix SIGSEGV
2025-10-14 mario.limonciello amdgpu: Read model name from /proc/cpuinfo for APUs
2025-10-14 contact build: bump version to 2.4.127
2025-10-14 vlad.zahorodnii xf86drm: Drop drmFauxDeviceInfo
2025-10-09 vlad.zahorodnii xf86drm: Fix drmDevicesEqual() for nodes on the faux bus
2025-10-14 vlad.zahorodnii xf86drm: Trim traling whitespace in xf86drm.h
2025-10-01 contact build: bump version to 2.4.126
2025-07-30 alexander.deucher amdgpu: update marketing names
2025-08-01 jose.exposito89 xf86drm: Add faux bus
2025-07-14 ray.huang modetest: fix build error on is_power_of_two()
2025-07-01 Jesse.Zhang drm/amdgpu: Add user queue HQD count to hw_ip info
2024-08-03 emas modetest: util: add seed argument for noise patterns
2024-05-17 emas modetest: util: pattern: add new patterns
2025-06-08 contact build: bump version to 2.4.125
2025-06-08 contact Sync headers with drm-next
2025-05-20 contact Switch URLs to mesa/libdrm
2025-05-22 contact ci: fix arm32v7 Debian container preparation
2025-05-22 contact ci: upgrade FreeBSD to version 14.2
2025-05-22 contact ci: upgrade ci-templates to latest commit
2025-05-20 corentin.noel meson: Do not check for meson version >=0.54
2025-05-05 alexander.deucher amdgpu: update marketing names
2025-04-28 sunil.khatri drm/amdgpu: add UAPI to query if user queues are supported
2025-04-12 Arunpravin.PaneerSelvam amdgpu: Add queue id support to the user queue wait IOCTL
2025-04-11 jesse.zhang amdgpu: Add queue priority and secure flags support for user queues
2024-08-13 Arvind.Yadav amdgpu: Add amdgpu userqueue IOCTL functions
2024-08-13 Arvind.Yadav amdgpu: UAPI for AMDGPU usermode queues
2024-11-05 shashank.sharma drm/amdgpu: add new AMDGPU_INFO subquery for userqueue metadata
2025-03-27 daniel.van.vugt xf86drm: Handle NULL in drmCopyVersion
2025-01-17 alexander.deucher amdgpu: add new marketing names
2024-12-17 contact xf86drm: deprecate drmAvailable()
2024-12-18 alexander.deucher amdgpu: add new marketing names
2024-12-18 alexander.deucher amdgpu: add new marketing names
2024-12-04 mattst88 build: bump version to 2.4.124
2024-10-29 robbarnes modetest: Make modetest availble to vendor on Android
2021-07-11 issor.oruam android: add genrule for generated_static_table_fourcc.h
2024-09-23 marek.olsak xf86drm: print AMD modifiers properly
2024-09-29 alan.coopersmith include/drm/README: update drm-next link to use gitlab instead of cgit
2024-02-22 dmitry.baryshkov modetest: add support for YUV422 and YUV444 plane format
2024-09-08 dmitry.baryshkov modetest: simplify planar YUV handling
2024-06-26 contact build: simplify Linux system check
2024-05-08 marijn.suijten tests/util: Call `drmGetDevices2()` instead of `drmOpen()`ing all modules
2024-08-26 mattst88 build: bump version to 2.4.123
2024-08-22 mark Disable ioctl signed overload for Bionic libc
2024-08-01 sukoo tests: Make modetest and proptest cc_binary in Android.bp
2024-07-17 daniels libs: Tie DSO minor versions to libdrm version
2023-10-12 jiyong Enable GPU in crosvm
2020-12-07 jiyong add crosvm to com.android.virt
2020-11-16 natsu Adds libdrm_headers
2020-06-11 inseob Export include dirs with -isystem
2019-12-02 natsu Makes libdrm available on host
2018-07-17 zhangjerry Make libdrm recovery_available
2018-04-13 john.stultz Android.bp: Add include exports for android dir
2018-01-11 enh readdir_r is deprecated.
2024-07-29 sukoo Delete all Makefile.sources files
2017-10-19 dwillemsen Convert to Android.bp
2024-07-11 alexander.deucher amdgpu: add new marketing names
2024-03-07 alexander.deucher amdgpu: add new marketing names
2024-06-21 info Fix FTBS on undefined clock_gettime() and asprintf()

Created with:
  roll-dep third_party/libdrm/src

Bug: 475840954

Change-Id: I493da338597db21eec1ac56ca9011bca4199b2fa
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/285175
Reviewed-by: dan sinclair <dsinclair@chromium.org>
Commit-Queue: dan sinclair <dsinclair@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Reviewed-by: James Price <jrprice@google.com>
Commit-Queue: James Price <jrprice@google.com>
Auto-Submit: Ryan Harrison <rharrison@chromium.org>
5 files changed
tree: 891d03212a6b238df48e70c3555683c9c638d3e6
  1. .github/
  2. .vscode/
  3. build_overrides/
  4. docs/
  5. generator/
  6. include/
  7. infra/
  8. scripts/
  9. src/
  10. test/
  11. third_party/
  12. tools/
  13. webgpu-cts/
  14. .bazelrc
  15. .clang-format
  16. .clang-format-ignore
  17. .clang-tidy
  18. .git-blame-ignore-revs
  19. .gitattributes
  20. .gitignore
  21. .gitmodules
  22. .gn
  23. .style.yapf
  24. .vpython3
  25. AUTHORS
  26. BUILD.bazel
  27. BUILD.gn
  28. CMakeLists.txt
  29. CMakeSettings.json
  30. CODE_OF_CONDUCT.md
  31. codereview.settings
  32. CONTRIBUTING.md
  33. CPPLINT.cfg
  34. DEPS
  35. DIR_METADATA
  36. go.mod
  37. go.sum
  38. go_presubmit_support.py
  39. LICENSE
  40. OWNERS
  41. PRESUBMIT.py
  42. README.chromium
  43. README.md
  44. test_spec_presubmit_support.py
  45. unsafe_buffers_paths.txt
  46. WATCHLISTS
  47. WORKSPACE.bazel
README.md

Build Status Matrix Space

Dawn, a WebGPU implementation

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 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, Metal, Vulkan and OpenGL. See per API support for more details.
  • A client-server implementation of WebGPU for applications that are in a sandbox without access to native drivers
  • Tint is a compiler for the WebGPU Shader Language (WGSL) that can be used in standalone to convert shaders from and to WGSL.

Helpful links:

Documentation table of content

Developer documentation:

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

License

BSD 3-Clause License, please see LICENSE.

Disclaimer

This is not an officially supported Google product.