3 Commits

Author SHA1 Message Date
Jan Kuhlmann
7d7c25f9be
CMake: Added unified options for VulkanHpp and VulkanHppModule compile definitions (#2066)
* added compile definitions as cmake options

* use VulkanHpp dynamic dispatch setting for module

* adjusted comments

* adjusted dynamic loader tool option

* remove dynamic loader tool option

* removed non-boolean flags

* make VULKAN_HPP_DISPATCH_LOADER_DYNAMIC depend on VK_NO_PROTOTYPES

* added descriptions to options

* adjusted formatting

* fixed typo

* deprecated module-specific cmake flag VULKAN_HPP_CPP20_MODULE_DYNAMIC_DISPATCHER

* link to vulkan-1 on static dispatch loader

* typo fix

* only optionally find vulkan, warn in case it is missing
2025-02-13 07:56:23 +01:00
Andreas Süßenbach
cdfa83ab79
Add specializations of std::hash for all the structs and handles in the vk-namespace. (#1994) 2024-11-26 11:08:49 +01:00
Sharadh Rajaraman
6abd3f42a8
Use import std; guarded by macro (#1932)
* Initial build and tests setup

* Enable the `CppStdModule` test

* Snippets and generator changes

* Generated files changes

* Enable std module with macro

* Unconditionally use `import std` with C++23

* Add support for external `import std` control with `VULKAN_HPP_ENABLE_STD_MODULE`

- Rewrite `includes.hpp` and `macros.hpp`
- Unconditionally set `VULKAN_HPP_ENABLE_STD_MODULE` for `vulkan.cppm` to bug-fix
- Generated necessary files again

* Top-level CMake changes

* Reorganise logic, and propagate external macro correctly

* RAII: vulkan_hpp before ifdef

* Define `VK_USE_64_BIT_PTR_DEFINES` in `vulkan_hpp_macros.hpp`

* Generate the `VK_USE_64_BIT_PTR_DEFINES` clause from the XML instead of hardcoding it

* Refactored handling for `VK_USE_64_BIT_PTR_DEFINES`

- Updated condition to positive test for `#ifndef VK_USE_64_BIT_PTR_DEFINES` in `completeMacro`

* Added `#include <string.h>` to resolve `strnlen` missing in the module

* Use only `std.compat`

* FIx after rebase
2024-09-05 08:48:19 +02:00