- It hasn't been handling windows (so it's been half implemented)
- It's a suboptimal method for exporting symbols for vulkan layers
since `--version-script` and `.def` files exists. Both of these
methods also don't risk name mangling.
- `--version-script` also has perf benefits since you can silence
exports from code you didn't intend to export
Vulkan::Registry behaves differently in `add_subdirectory` vs
`find_package` builds. Which can result in build failures.
Also Vulkan::Registry never made sense as a CMake target and
was very brittle in numerous ways.
Better to provide a `VULKAN_HEADERS_REGISTRY_DIRECTORY` to users
instead and remove Vulkan::Registry completely.
closes#351
If an ICD supports any of the following functions, they must be
queryable with vk_icdGetInstanceProcAddr:
vk_icdNegotiateLoaderICDInterfaceVersion
vk_icdGetPhysicalDeviceProcAddr
vk_icdEnumerateAdapterPhysicalDevices (Windows only)
In addition, these functions no longer need to be exported directly.
These changes allow drivers to no longer export the 'loader-icd interface'
functions which previously had to be exported. This change aids in future
extension work which aims to provide the ability to load drivers without
installing them to the system.
Currently the include directory is arch-dependent.
However, the location where the *.cmake files are installed
is arch-independent. This difference causes an issue with
cross compile environments.
When trying to update the version of Vulkan-Headers used in Dawn/Tint,
I encountered errors like this:
Target "Vulkan-Headers" contains relative path in its
INTERFACE_INCLUDE_DIRECTORIES:
""/home/foo/workspace/dawn/third_party/vulkan-deps/vulkan-headers/src/include""
This PR removes the offending quotes