Roll build dependencies.

This is to pull in some python3 fixes from build/ and buildtools.
This commit also splits the clang-format hook for mac into two, one for x64
and one for arm64.

Roll build/ 555c8b467..c7876b5a4

https://chromium.googlesource.com/chromium/src/build/+log/555c8b467c21..c7876b5a44308b

$ git log 555c8b467..c7876b5a44308 --date=short --no-merges --format='%ad %ae %s'
2022-03-18 agrieve Android: Force resource ids to use 0x01 for type byte
2022-03-18 chromium-internal-autoroll Roll Fuchsia Internal Images from 7.20220318.1.1 to 7.20220318.3.1
2022-03-18 bsheedy Include bug component in render tests
2022-03-18 erikchen lacros: Match ash compile flags on linux.
2022-03-18 linxinan Revert "[infra] Generate Skylab filter files based on tast_control.gni"
2022-03-18 chromium-autoroll Roll Fuchsia SDK from 7.20220318.0.1 to 7.20220318.1.1
2022-03-18 agrieve Android: Remove unused disable_r8_outlining flag
2022-03-18 chromium-internal-autoroll Roll Fuchsia Internal Images from 7.20220318.0.1 to 7.20220318.1.1
2022-03-18 chromium-autoroll Roll Fuchsia SDK from 7.20220317.2.2 to 7.20220318.0.1
2022-03-18 chromium-internal-autoroll Roll Fuchsia Internal Images from 7.20220317.2.2 to 7.20220318.0.1
2022-03-18 hypan Remove unused field trial code from system_webview_shell_layout_test_apk
2022-03-18 sshrimp [infra] Generate Skylab filter files based on tast_control.gni
(...)
2022-01-09 chromium-autoroll Roll Fuchsia SDK from 7.20220108.1.1 to 7.20220108.3.1
2022-01-08 chromium-autoroll Roll Fuchsia SDK from 7.20220108.0.1 to 7.20220108.1.1
2022-01-08 chromium-internal-autoroll Roll Fuchsia Internal Images from 7.20220107.3.1 to 7.20220108.0.1
2022-01-08 chromium-autoroll Roll Fuchsia SDK from 7.20220107.2.5 to 7.20220108.0.1
2022-01-08 chromium-internal-autoroll Roll Fuchsia Internal Images from 7.20220107.2.4 to 7.20220107.3.1
2022-01-08 frankli media: Enable Dolby Vision scenario in MediaFoundationRenderer code path
2022-01-08 rdevlin.cronin Revert "[CodeHealth] Migrate multiple presubmit checks from Python2 to Python3"
2022-01-07 chromium-autoroll Roll Fuchsia SDK from 7.20220107.1.1 to 7.20220107.2.5
2022-01-07 chromium-internal-autoroll Roll Fuchsia Internal Images from 7.20220107.1.1 to 7.20220107.2.4
2022-01-07 xhwang build: Define OS build flags in build_config.h
2022-01-07 triploblastic Remove unused api flag GOOGLE_API_KEY_PHYSICAL_WEB_TEST and fix pylint errors
2022-01-07 chromium-autoroll Roll Fuchsia SDK from 7.20220106.3.1 to 7.20220107.1.1
2022-01-07 chromium-internal-autoroll Roll Fuchsia Internal Images from 7.20220107.0.1 to 7.20220107.1.1
2022-01-07 chromium-internal-autoroll Roll Fuchsia Internal Images from 7.20220106.3.1 to 7.20220107.0.1
2022-01-07 chromium-autoroll Roll Fuchsia SDK from 7.20220106.2.3 to 7.20220106.3.1
2022-01-06 chromium-internal-autoroll Roll Fuchsia Internal Images from 7.20220106.2.1 to 7.20220106.3.1
2022-01-06 chromium-autoroll Roll Fuchsia SDK from 7.20220106.1.1 to 7.20220106.2.3
2022-01-06 jdh [CodeHealth] Migrate multiple presubmit checks from Python2 to Python3
2022-01-06 hypan Support installing additional & privileged apks on android emulator.
2022-01-06 danakj Add a GN config that warns about unsafe integer narrowing.
2022-01-06 svenzheng Fix cipd rule using wrong inputs
2022-01-06 chromium-internal-autoroll Roll Fuchsia Internal Images from 7.20220106.1.1 to 7.20220106.2.1
2022-01-06 chromium-autoroll Roll Fuchsia SDK from 7.20220105.3.1 to 7.20220106.1.1
2022-01-06 chromium-internal-autoroll Roll Fuchsia Internal Images from 7.20220105.3.1 to 7.20220106.1.1
2022-01-06 tikuta build: remove windows version check
2022-01-06 chromium-autoroll Roll Fuchsia SDK from 7.20220105.2.1 to 7.20220105.3.1
2022-01-06 chromium-internal-autoroll Roll Fuchsia Internal Images from 7.20220105.2.3 to 7.20220105.3.1
2022-01-05 svenzheng Enable LacrosPrimary for tests
2022-01-05 rohpavone [fuchsia] Decrease size limit for fuchsia-binary-size differ to 12k.
2022-01-05 wnwen Android: Remove unnecessary runtime deps
2022-01-05 chromium-internal-autoroll Roll Fuchsia Internal Images from 7.20220105.1.1 to 7.20220105.2.3
2022-01-05 chromium-autoroll Roll Fuchsia SDK from 7.20220105.0.1 to 7.20220105.2.1
2022-01-05 ajuma [iOS] Enabled shared bundle id for test apps
2022-01-05 chromium-internal-autoroll Roll Fuchsia Internal Images from 7.20220105.0.1 to 7.20220105.1.1
2022-01-05 chromium-autoroll Roll Fuchsia SDK from 7.20220104.3.1 to 7.20220105.0.1
2022-01-05 chromium-internal-autoroll Roll Fuchsia Internal Images from 7.20220104.2.3 to 7.20220105.0.1
2022-01-05 lukasza [rust] Configure Rust FYI bots to run native Rust unit tests.
2022-01-05 chromium-autoroll Roll Fuchsia SDK from 7.20220104.1.1 to 7.20220104.3.1
2022-01-05 thomasanderson [Gtk] Remove libgtk from the link-line
2022-01-05 chonggu Revert "[fuchsia] Python cleanups in build/fuchsia."
2022-01-04 chromium-internal-autoroll Roll Fuchsia Internal Images from 7.20211216.0.1 to 7.20220104.2.3
2022-01-04 mark mac: Update toolchain to Xcode 13.2.1 13C100
2022-01-04 chonggu [Fuchsia] Code coverage builder fix
2022-01-04 chromium-autoroll Roll Fuchsia SDK from 7.20220104.0.1 to 7.20220104.1.1
2022-01-04 thakis build: Make it easier to set pgo_data_path
2022-01-04 grt [fuchsia] Python cleanups in build/fuchsia.
2022-01-04 chromium-autoroll Roll Fuchsia SDK from 7.20220103.3.1 to 7.20220104.0.1
2022-01-03 chromium-autoroll Roll Fuchsia SDK from 7.20220103.0.1 to 7.20220103.3.1
2022-01-03 estaab Add GN flag to switch to -MD instead of -MMD.
2022-01-03 chromium-autoroll Roll Fuchsia SDK from 7.20220102.3.1 to 7.20220103.0.1

Roll buildtools/ f78b4b9f3..e1471b21e (18 commits)

https://chromium.googlesource.com/chromium/src/buildtools/+log/f78b4b9f33bd..e1471b21ee9c

$ git log f78b4b9f3..e1471b21e --date=short --no-merges --format='%ad %ae %s'
2022-03-21 aeubanks [buildtools] Remove non-arch-specific mac clang-format
2022-03-17 aeubanks Reland Split mac clang-format sha1 per architecture
2022-03-17 phillis Revert "Split mac clang-format sha1 per architecture"
2022-03-16 aeubanks Split mac clang-format sha1 per architecture
2022-03-03 thakis Reland "Actually build libc++ and libc++abi with -std=c++20"
2022-02-23 thakis Make deps_revisions.gni *-owned
2022-02-18 rjkroege Revert "Actually build libc++ and libc++abi with -std=c++20"
2022-02-17 thakis stop defining _LIBCPP_ENABLE_CXX17_REMOVED_UNEXPECTED_FUNCTIONS when building libc++abi
2022-02-17 hans Define _LIBCPP_CONSTINIT when building libc++abi
2022-02-17 thakis Actually build libc++ and libc++abi with -std=c++20
2022-02-16 thakis Reland "Build libc++ and libc++abi with -std=c++20"
2022-02-16 thakis Define _LIBCPP_BUILDING_LIBRARY while building libc++abi
2022-02-16 mek Revert "Build libc++ and libc++abi with -std=c++20"
2022-02-16 thakis Build libc++ and libc++abi with -std=c++20
2022-02-09 dpranke Remove dpranke from OWNERS files.
2022-02-05 thakis fuchsia: Remove an unwind-related workaround for a bug that's been fixed upstream
2022-02-04 manojgupta reclient_cfgs: Remove input line from chroot compile cfg
2022-02-04 tikuta buildtools/reclient_cfgs: update OWNERS

Roll buildtools/third_party/libc++abi/trunk/ 2715a6c0d..edde7bbc4 (58 commits)

https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git/+log/2715a6c0de8d..edde7bbc4049

$ git log 2715a6c0d..edde7bbc4 --date=short --no-merges --format='%ad %ae %s'
2022-01-26 nathan [demangler] Add support for C++20 modules
2022-03-15 ldionne.2 [libc++][tests] Use CMake provided paths for includes and libdir instead of hardcoding them
2022-03-14 rprichard [ARM] __cxa_end_cleanup: avoid clobbering r4
2022-03-07 martin [libcxxabi] Fix cmake order dependency wrt dllexporting
2022-03-03 nathan [demangler] Make OutputBuffer non-copyable
2022-03-03 nikolasklauser [libc++] Use -I instead of -isystem to include headers in the test suite
2021-10-12 ldionne.2 [runtimes] Remove FOO_TARGET_TRIPLE, FOO_SYSROOT and FOO_GCC_TOOLCHAIN
2022-02-28 ldionne.2 [libc++] Revert "Protect users from relying on detail headers" & related changes
2022-02-18 nathan [demangler] Add co_await demangling
2022-01-27 nathan [demangler][NFC] Tabularize operator name parsing
2022-02-16 nathan [demangler] Improve buffer hysteresis
2022-02-28 nathan [demangler] Simplify SwapAndRestore
2022-02-17 ldionne.2 [libc++abi] Install the libc++abi headers from libc++abi
2022-02-25 cjdb [libcxx][modules] protects users from relying on detail headers
2022-02-18 nathan [demangler][NFC] Reformatting
2022-02-16 ldionne.2 [libc++abi] Bump the libc++abi version and add it to the post-release list
2022-02-11 mgorny [libcxxabi] [test] Depend on unwind only if available
2022-02-16 ldionne.2 [runtimes] Move warning messages for FOO_SYSROOT & friends above their default value
2022-02-16 nathan [demangler] Fix build breakage
2022-02-15 ldionne.2 [runtimes] Deprecate FOO_SYSROOT & friends
2022-01-25 nathan [demangler] Reorder parseNestedName loop
2022-02-15 nikolasklauser [libc++] Granularize algorithm includes
2022-02-08 arthur.j.odwyer [libc++] Rename *SAFE_STATIC to *CONSTINIT, and normalize its uses.
2022-02-10 ldionne.2 [libc++abi] Add a from-scratch testing config for Apple backdeployment
2022-02-11 nathan [demangler][NFC] Tweak legacy uuidof handling
2022-02-07 nathan [demangler] Fix buffer growth
2022-01-25 nathan [demangler] Adjust unqualified name parsing
2022-01-28 nathan [demangler] Fix new/delete demangling
2022-02-08 ldionne.2 [runtimes] Remove support for standalone builds
2022-02-07 nathan [demangler][NFC] Utility header cleanups
2022-01-28 nathan [demangler] Improve ->* & .* demangling
2022-01-21 nathan [demangler] Stricter NestedName parsing
2022-01-28 nathan [demangler] Fix unresolvedname demangling
2022-01-21 nathan [demangler] Remove StdQualifiedName
2022-01-24 nathan [demangler] Preserve line numbering in copied demangler sources
2022-01-24 nathan [demangler] refactor SpecialSubKind
2022-01-24 nathan [demangler] improve test harness
2022-01-24 nathan [demangler][NFC] Refactor some parsing
2022-01-24 nathan [demangler] write-protect non-canonical source
2022-01-24 nathan [demangler] Resync demangler sources
2022-01-20 nathan [demangler][NFC] Small cleanups and sync
2022-01-19 John.Ericson [cmake] Make include(GNUInstallDirs) always below project(..)
2022-01-18 John.Ericson [cmake] Move HandleOutOfTreeLLVM to common cmake utils
2022-01-16 John.Ericson [libcxx][libcxxabi][libunwind][cmake] Use `GNUInstallDirs` to support custom installation dirs
2022-01-16 John.Ericson Revert "[cmake] Use `GNUInstallDirs` to support custom installation dirs."
2022-01-15 John.Ericson [cmake] Use `GNUInstallDirs` to support custom installation dirs.
2022-01-15 John.Ericson Revert "[cmake] Use `GNUInstallDirs` to support custom installation dirs."
2022-01-11 John.Ericson [cmake] Use `GNUInstallDirs` to support custom installation dirs.
2022-01-14 muiez [SystemZ][z/OS] ASCII/EBCDIC support with no coexistence
2022-01-10 ldionne.2 [libc++] Modularize <chrono>
2021-12-08 Daniel.McIntosh [libcxxabi] Added convenience classes to cxa_guard
2021-12-08 Daniel.McIntosh [libcxxabi] Re-organized inheritance structure to remove CRTP in cxa_guard
2021-12-08 Daniel.McIntosh [libcxxabi] Pulled guard byte code out of GuardObject
2021-08-16 Daniel.McIntosh [libcxxabi] Make InitByteGlobalMutex check GetThreadID instead of PlatformThreadID
2021-08-11 Daniel.McIntosh [NFC][libcxxabi] Rename GlobalLock to GlobalMutex
2022-01-11 John.Ericson [libc++][libc++abi][libunwind] Dedup install path var definitions
2022-01-07 bungeman [libc++] Disable coverage with sanitize-coverage=0
2022-01-01 John.Ericson [CMake] Use `LLVM_COMMON_CMAKE_UTILS` in runtimes just for clarity

Roll tools/clang/ 8b7330592..df9b14e26 (65 commits)

https://chromium.googlesource.com/chromium/src/tools/clang/+log/8b7330592cb8..df9b14e26c16

$ git log 8b7330592..df9b14e26 --date=short --no-merges --format='%ad %ae %s'
2022-03-23 keishi Update raw_ptr exclusions with new fields used by ELEMENT()
2022-03-21 hans Revert "Clang build script: set LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN"
2022-03-17 aeubanks Remove libstdc++.so dependency from reclient deps
2022-03-17 aeubanks Create a clang-format package when building clang
2022-03-16 zequanwu Update clang OWNERS file
2022-03-15 aeubanks [clang] Link against libstdc++ statically
2022-03-10 ayzhao Roll clang llvmorg-15-init-3540-g85c53c70-1 : llvmorg-15-init-3677-g8133778d-1
2022-03-07 hans Roll clang llvmorg-15-init-1995-g5bec1ea7-4 : llvmorg-15-init-3540-g85c53c70-1
2022-03-03 adetaylor [rust] Build libclang.a.
2022-02-28 aeubanks [clang] Run clang plugins before codegen
2022-02-25 collinbaker Link rustc against native LLVM libs, not LTO libs
2022-02-17 thakis Roll clang llvmorg-15-init-1464-gbf7f8d6f-1 : llvmorg-15-init-1995-g5bec1ea7-1
2022-02-17 ayzhao Fix typos in tools/clang/scripts/*.py
2022-02-16 thakis clang tot bots: remove no-longer needed code now that pinned clang is 15.0 prerelease
2022-02-15 omerkatz heap: Remove stack allocated annotation
2022-02-14 aeubanks Roll clang llvmorg-14-init-18258-g9477a308-1 : llvmorg-15-init-1464-gbf7f8d6f-1
2022-02-14 thomasanderson Reland "Reland "Move non-GTK select file dialog implementations out of //ui/gtk""
2022-02-14 keishi Add mac support to rewrite_raw_ptr_fields
2022-02-10 zequanwu Roll clang llvmorg-14-init-17086-g38e16e1c-4 : llvmorg-14-init-18258-g9477a308-1
2022-02-09 keishi Introduce RAW_PTR_EXCLUSION macro
2022-02-08 bikineev blink-gc-plugin: Fix plugin checks for mixin-like templated types
2022-02-08 keishi Unrewrite raw_ptr for fields related to TrackingStarted()
2022-02-04 thakis clang script: Include a x86_64-cros-linux-gnu symlink
2022-02-03 thakis clang: Include crtbegin/end and compiler-rt builtins lib on Linux
2022-02-03 findit-for-me Revert "Reland "Move non-GTK select file dialog implementations out of //ui/gtk""
2022-02-03 thomasanderson Reland "Move non-GTK select file dialog implementations out of //ui/gtk"
2022-02-02 hans Clang: the tip-of-tree version is now 15.0.0
2022-02-01 chikamune Revert "Move non-GTK select file dialog implementations out of //ui/gtk"
2022-02-01 thomasanderson Move non-GTK select file dialog implementations out of //ui/gtk
2022-01-31 collinbaker Package LLVM libs and headers for Rust build
2022-01-31 hans Clang build script: set LLVM_TEMPORARILY_ALLOW_OLD_TOOLCHAIN
2022-01-27 hans Revert "Clean up uses of (void)"
2022-01-27 aeubanks Add Fuchsia libclang_rt.asan_static.a to Clang package
2022-01-27 cassew Clang-Plugin: Enable use-classify-type unconditionally
2022-01-26 avi Clean up uses of (void)
2022-01-26 hans Roll clang llvmorg-14-init-12719-gc4b45eeb-5 : llvmorg-14-init-17086-g38e16e1c-2
2022-01-25 collinbaker Add experimental in-tree Rust build
2022-01-24 aeubanks [BlinkGCPlugin] Make test.py more py3 compatible
2022-01-24 andre.kempe Enable PAC and BTI for compiler-rt.
2022-01-24 hans Revert "Reland "Roll clang llvmorg-14-init-12719-gc4b45eeb-3 : llvmorg-14-init-16347-g53a51acc-2""
2022-01-24 aeubanks Reland "Roll clang llvmorg-14-init-12719-gc4b45eeb-3 : llvmorg-14-init-16347-g53a51acc-2"
2022-01-24 apotapchuk Revert "Roll clang llvmorg-14-init-12719-gc4b45eeb-3 : llvmorg-14-init-16347-g53a51acc-2"
2022-01-24 aeubanks Roll clang llvmorg-14-init-12719-gc4b45eeb-3 : llvmorg-14-init-16347-g53a51acc-2
2022-01-21 xhwang *.py: Use BUILDFLAG for OS checking
2022-01-21 gflegar Filter out additional flags from compilation db
2022-01-21 thestig Tighten the compile command regexp in analyze_includes.py.
2022-01-20 omerkatz Reland "heap: Clang plugin warms against using members on stack"
2022-01-20 dsanders11 [include analysis] Add root filter option
2022-01-18 keishi Revert raw_ptr rewrites based on sampling profiler data
2022-01-18 dsanders11 [include analysis] Add reversed sorting
2022-01-18 dsanders11 [include analysis] Fix sorting by filename
2022-01-18 dsanders11 [include analysis] Customizable display limit
2022-01-18 dsanders11 [include analysis] Minor script cleanup
2022-01-17 leszeks Revert "Roll clang llvmorg-14-init-12719-gc4b45eeb-3 : llvmorg-14-init-14241-ged3a4a49-1"
2022-01-17 keishi Avoid using raw_ptr in Unretained in some performance sensitive code
2022-01-14 pierre.langlois clang: Set LLVM_DEFAULT_TARGET_TRIPLE correctly on a AArch64 host
2022-01-11 thakis Roll clang llvmorg-14-init-12719-gc4b45eeb-3 : llvmorg-14-init-14241-ged3a4a49-1
2022-01-10 thakis clang scripts: Make DownloadUrl() understand gzip encoding
2022-01-07 yukiy Layout: Update check_layout_object_methods plugin
2022-01-07 hans Revert "heap: Clang plugin warms against using members on stack"
2022-01-06 cassew Clang Plugin: Refactor `CountType` into `ClassifyType`
2022-01-05 omerkatz heap: Clang plugin warms against using members on stack
2022-01-05 chonggu Update the clang package to include Fuchsia's asan-preinit runtime
2022-01-05 omerkatz heap: Plugin warns against persistent held by unique_ptr in GCed
2022-01-04 chonggu [Fuchsia] Build Fuchsia asan-preinit runtime

Change-Id: Idc74c50be38119fb28341375bf3ca9c8c6cab490
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/84480
Auto-Submit: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: James Price <jrprice@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
1 file changed
tree: 3e8363e547943e86bdd8f6c80b183a062fd052a8
  1. .vscode/
  2. build_overrides/
  3. docs/
  4. generator/
  5. include/
  6. infra/
  7. samples/
  8. scripts/
  9. src/
  10. third_party/
  11. tools/
  12. webgpu-cts/
  13. .clang-format
  14. .gitattributes
  15. .gitignore
  16. .gn
  17. AUTHORS
  18. BUILD.gn
  19. CMakeLists.txt
  20. codereview.settings
  21. dawn.json
  22. dawn_wire.json
  23. DEPS
  24. DIR_METADATA
  25. LICENSE
  26. OWNERS
  27. PRESUBMIT.py
  28. README.chromium
  29. README.md
README.md

Dawn's logo: a sun rising behind a stylized mountain inspired by the WebGPU logo. The text Dawn is written below it.

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.