Add runtime search paths to Instance descriptor

So that Chrome can configure Dawn to load SwiftShader from
the bundled/module directory. The shared libraries and ICD
are packaged in a separate directory while dawn::native is
linked statically into the Chrome executable.

Change the Vulkan backend to use these paths for loading
Vulkan.

Bug: chromium:1266550
Change-Id: I40468b481881f6c249694c1c61137bc0c9b8fe76
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/78840
Reviewed-by: Loko Kung <lokokung@google.com>
Commit-Queue: Austin Eng <enga@chromium.org>
This commit is contained in:
Austin Eng
2022-02-02 21:00:52 +00:00
committed by Dawn LUCI CQ
parent 6806a61a26
commit 2fbc170827
10 changed files with 156 additions and 96 deletions

View File

@@ -136,7 +136,7 @@ namespace dawn::native {
// for this instance.
class DAWN_NATIVE_EXPORT Instance {
public:
Instance();
explicit Instance(const WGPUInstanceDescriptor* desc = nullptr);
~Instance();
Instance(const Instance& other) = delete;