commit | 5bd57050e50f0480d7753e9589cd4f28328185fa | [log] [tgz] |
---|---|---|
author | Antonio Maiorano <amaiorano@google.com> | Thu May 02 13:58:52 2024 +0000 |
committer | Antonio Maiorano <amaiorano@google.com> | Thu May 02 13:58:52 2024 +0000 |
tree | 9e83a5dccd0052934648e4cfe89963ee37eeb153 | |
parent | 5350eb99d6d11d3f4d2bf1942d176277eb043621 [diff] |
tint: make FindExecutable look in explicit CWD-prefixed path first When FindExecutable tests to see if the input executable file exists, it first checks the input path as-is. If the input path is a relative one, the existence check will, by definition, look in the cwd implicitly, and if it exists, returns true, and we return the relative path as-is. This seems fine, except when the executable is a shared object (.so/.dylib), where dlopen'ing by relative path may fail if RPATH wasn't set to look in relative paths. To mitigate this, we explicitly search in an absolute path made up of the input path prefixed by the CWD. If found, we return this absolute path, and are able to load the shared object regardless of RPATH. Note that I added the same behaviour to command_windows, although it's not really necessary there, since DLL loading by relative path always succeeds (there's no RPATH on Windows). However, adding this to Windows means the path we get back from FindExecutable will be absolute like on posix, which is better for consistency between the platforms. Bug: tint:2234 Change-Id: I53d4f9ec79ee593db8ab4e92415321e6d2e8f0ed Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/186563 Reviewed-by: Ryan Harrison <rharrison@chromium.org> Reviewed-by: Ben Clayton <bclayton@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.