ef3f38da8b
KWin does an unconditional find_package(Vulkan REQUIRED), and CMake's
FindVulkan needs BOTH Vulkan_INCLUDE_DIR and Vulkan_LIBRARY. Mesa already
builds the Vulkan drivers (libvulkan_intel/_radeon/_lvp) but an ICD is not
the API surface a consumer links against, so kwin could not configure.
vulkan-headers: header-only, but VulkanHeadersConfig.cmake is GENERATED at
install time rather than shipped in the tarball, and Vulkan-Loader
hard-requires it -- a hand copy of include/ satisfies FindVulkan and then
fails the loader. Run upstream's cmake install instead.
vulkan-loader: one real port. vk_loader_platform.h gates the whole POSIX
arm (DIRECTORY_SYMBOL, the dlopen wrappers, manifest search) on an OS list
that predates Redox, so the build collapsed with 'DIRECTORY_SYMBOL'
undeclared. Redox provides dlopen/dlsym and POSIX paths via relibc, so it
belongs in the same arm as Linux; that header is the only file under
loader/ doing OS detection. WSI backends are left off: Red Bear is
Wayland-only and the compositor talks to Mesa's ICDs directly.
Both shadow the untested recipes/wip/libs/graphics/{vulkan-headers,
libvulkan} via the local-over-WIP mechanism, per the WIP ownership rule
that the shipping version lives in local/recipes/.
Verified: kwin now reports
-- Found Vulkan: .../sysroot/lib/libvulkan.so (found version 1.4.321)
kwin also gains its missing kf6-knewstuff dep -- its
find_package(KF6 COMPONENTS NewStuff) is REQUIRED, so without the dep the
framework was never staged into kwin's sysroot.
53 lines
1.9 KiB
Markdown
53 lines
1.9 KiB
Markdown
<!--
|
|
Copyright 2018-2023 The Khronos Group Inc.
|
|
|
|
SPDX-License-Identifier: Apache-2.0
|
|
-->
|
|
|
|
# Vulkan-Headers
|
|
|
|
Vulkan header files and API registry
|
|
|
|
This repository contains Vulkan header files, include files for C and C++,
|
|
and related scripts and tests.
|
|
|
|
Most of the files in this repository are sourced from, or generated from,
|
|
other repositories as described in [CONTRIBUTING.md](CONTRIBUTING.md).
|
|
Vulkan-Headers exists as a staging area for these files, most of which are
|
|
then consumed by downstream repositories used to build SDK components such
|
|
as the Vulkan Validation Layers and Conformance Test Suite.
|
|
|
|
Developers normally obtain headers from the official
|
|
[Vulkan-SDK](https://www.lunarg.com/vulkan-sdk/).
|
|
They can also use headers from, or packaged from, this repository.
|
|
|
|
In most cases, developers should only need the headers, not the scripts and
|
|
other material in this repository.
|
|
If you need to run the scripts, please use them from their canonical source
|
|
in the [Vulkan Specification
|
|
repository](https://github.com/KhronosGroup/Vulkan-Docs).
|
|
|
|
## Contributing
|
|
|
|
See the [CONTRIBUTING.md](CONTRIBUTING.md)
|
|
|
|
## Building
|
|
|
|
See [BUILD.md](BUILD.md)
|
|
|
|
## SDK Support
|
|
|
|
Vulkan-Headers are shipped as part of the official [Vulkan-SDK](https://www.lunarg.com/vulkan-sdk/)
|
|
|
|
## C/C++ Package Manager Support
|
|
|
|
`Vulkan-Headers` are also supported by both [conan](https://conan.io/) & [vcpkg](https://learn.microsoft.com/en-us/vcpkg/).
|
|
|
|
## Version Tagging Scheme
|
|
|
|
Updates to this repository which correspond to a new Vulkan specification release are tagged using the following format: `v<`_`version`_`>` (e.g., `v1.3.266`).
|
|
|
|
**Note**: Marked version releases have undergone thorough testing but do not imply the same quality level as SDK tags. SDK tags follow the `vulkan-sdk-<`_`version`_`>.<`_`patch`_`>` format (e.g., `vulkan-sdk-1.3.266.0`).
|
|
|
|
This scheme was adopted following the `1.3.266` Vulkan specification release.
|