Files
filament/third_party/dawn/scripts/roll_chromium_deps.py.vpython3
T
Powei Feng bbc3ddea33 webgpu: update dawn to chromium/7792 (#9916)
Includes the following updates to Filament and Dawn to support the new version:
- CMake Configuration: Enabled OBJC/OBJCXX and set C++ standard to 20 for
  Apple targets to support Dawn's Metal backend.
- WebGPU Backend API: Replaced `wgpu::ShaderModuleWGSLDescriptor` with
  `wgpu::ShaderSourceWGSL`, updated compilation info callbacks to use
  `wgpu::CompilationInfoRequestStatus`, and removed deprecated
  `wgpu::TextureFormat::External`.
- Tint Integration (`GLSLPostProcessor.cpp`): Migrated to `ReadIR` and
  `WgslFromIR`. Enabled `allow_non_uniform_derivatives` and
  `disable_unreachable_code_warning` to bypass strict uniformity analysis on
  UBOs, and allowlisted `gl_ClipDistance` for stereoscopic materials.
- Dawn Patches: Manually re-applied and updated
  `remove-vk-macos-restriction.patch` to account for upstream refactoring in
  `BackendVk.cpp`.
- AppleClang 17 RTTI Workaround: Added
  `tint-texture-gather-unwrap-pointer.patch` to conditionally bypass an
  AppleClang 17 optimizer bug causing RTTI dynamic cast failures in Tint
  (`TINT_ASSERT(tex_ty)`).
  Turns out this workaround is necessary for linux clang as well.
2026-04-22 22:24:25 +00:00

60 lines
2.3 KiB
Plaintext

# This is a vpython "spec" file.
#
# It describes patterns for python wheel dependencies of the python scripts in
# the chromium repo, particularly for dependencies that have compiled components
# (since pure-python dependencies can be easily vendored into third_party).
#
# When vpython is invoked, it finds this file and builds a python VirtualEnv,
# containing all of the dependencies described in this file, fetching them from
# CIPD (the "Chrome Infrastructure Package Deployer" service). Unlike `pip`,
# this never requires the end-user machine to have a working python extension
# compilation environment. All of these packages are built using:
# https://chromium.googlesource.com/infra/infra/+/main/infra/tools/dockerbuild/
#
# All python scripts in the repo share this same spec, to avoid dependency
# fragmentation.
#
# If you have depot_tools installed in your $PATH, you can invoke python scripts
# in this repo by running them as you normally would run them, except
# substituting `vpython` instead of `python` on the command line, e.g.:
# vpython path/to/script.py some --arguments
#
# Read more about `vpython` and how to modify this file here:
# https://chromium.googlesource.com/infra/infra/+/main/doc/users/vpython.md
python_version: "3.11"
# The default set of platforms vpython checks does not yet include mac-arm64.
# Setting `verify_pep425_tag` to the list of platforms we explicitly must support
# allows us to ensure that vpython specs stay mac-arm64-friendly
verify_pep425_tag: [
{python: "cp311", abi: "cp311", platform: "manylinux1_x86_64"},
{python: "cp311", abi: "cp311", platform: "linux_arm64"},
{python: "cp311", abi: "cp311", platform: "macosx_10_10_intel"},
{python: "cp311", abi: "cp311", platform: "macosx_11_0_arm64"},
{python: "cp311", abi: "cp311", platform: "win32"},
{python: "cp311", abi: "cp311", platform: "win_amd64"}
]
wheel: <
name: "infra/python/wheels/requests-py3"
version: "version:2.32.5"
>
wheel: <
name: "infra/python/wheels/charset_normalizer-py3"
version: "version:2.0.12"
>
wheel: <
name: "infra/python/wheels/idna-py3"
version: "version:3.10"
>
wheel: <
name: "infra/python/wheels/urllib3-py3"
version: "version:2.5.0"
>
wheel: <
name: "infra/python/wheels/certifi-py3"
version: "version:2025.8.3"
>