* add windows ci testing clang and ninja
* attempt to use multi-config builds on msvc ci
* install deps for windows ci
* temporarily disable ci portions
* try clang-cl
* test x64 only
* try x64 for clang-cl
* specify clang-cl as C compiler
* attempt clang-cl with dep install
* ignore unused variable warning in sample02
* need to specify c compiler as glfw install is not being found
* try to ignore warning in standard clang fashion
* syntax fix
* cast procaddress to void* before final func type cast
* added more windows clang warning suppressions
* disable normal windows ci
* suppress warnings in raii samples
* suppress more warnings for tests
* more unused var suppressions for tests
* disable preinstall of deps in clang to prevent _ITERATOR_DEBUG_LEVEL mismatch
* suppress unused var warnings triggered in release mode
* add warning suppression to flags test
* fixed strided array proxy test
* fix structure chain test
* fix extension inspection test
* reenable all ci workflows
* enabled arrayproxy test for cxxmodule, except for gcc15
* include missing array header
* exclude gcc <16 from ArrayProxy cxxmodule test
* updated exclusion comment for ArrayProxy test
* move vulkan module setup function to global scope
* use the vulkan include setup func for module setups instead of manual linking
* test setup function extended to allow for modules
* create std module variant for each test
* remove the obsolete NO_UTILS from test setup
* commented some TODOs
* only enable module tests when VULKAN_HPP_ENABLE_CPP20_MODULES is set
* reenable handles.cpp test
* remove use nested namespaces
* include array header for ArrayProxyNoTemporaries test
* include <compare> in enums for spaceship operator
* manually added <compare> to Flags.cpp test
* properly guarded <string_view> with c++17 requirement
* reuse generated headers inbetween runs
* properly access env var
* fix windows compiler arg
* reintroduce ubuntu24 ci compilers
* fixed CXX_MODULES flag logic
* echoing build parameters, removing use of Ninja from windows CI
* fixed echo and temporarily disabled all but windows CI
* reenabled all ci
* compile glm, glfw and glslang once, fixed SPIRV include path
* remove usage of Ninja from windows ci (again)
* fixed glfw name to glfw3
* removed.. debug things
* remove dep install step from windows, enforce correct linking in utils
* compiling generators in debug mode without running them
* Add support for vulkan_video.cppm module
Fix#2151
* Add a module version for the Video test
Currently this add vulkan_video.cppm to the VulkanHppModule target,
which might not be what we want (maybe guard this by an option(), or add
another target like VulkanVideoHppModule, etc.).
* Add a separate target for `vulkan_video.cppm`
* Extract common logic to `vulkan_hpp__setup_module`
* Fix several CMakeLists.txt issues
- Add `vulkan_video.cppm` to `VK_GENERATED_VULKAN_HEADERS`.
- Remove unnecessary ${ARGN} quotes.
- Move version checks out of `vulkan_hpp__setup_module`.
- Separate `FILE_SET_NAME` from `FILE_SET`.
* added module compilation to ubuntu ci
* added ubuntu 24.04 with clang++-19
* exclude g++-10 from module testing
* exclude clang++-19
* only perform module tests for c++20 and up
* added module option to ci matrix
* added module ci tests for windows, trying out ci ternary
* exclude windows-2019
* ubuntu ci module tests via ternary
* enabled module testing for c++23 in ubuntu
* properly negate c++23 filter
* more concise module flag
* re-trigger ci
* spread out excluded compilers for modules over multiple lines
* fixed json escape sequence
* enable module testing in ci-ubuntu-24
* revert accidental commit of testing opts
* properly convert compiler array to json
* merge Vulkan-Headers submodule version from main
* split up macos runners similar to windows and ubuntu, also enable module compilation
* added macos-15 runner for module testing
* trigger ci
* only test modules for cpp_standard >= 20
* attempt to fix macos module compilation
* revert module attempts on macos
* macos rename + clang++-18 removal, equalized module compilation flag for windows and ubuntu
* cleanup of vulkan target
* fixed cpp module test
* extend ubuntu ci to compile cpp modules
* only test cpp modules on ubuntu 24.04
* fixed condition syntax
* exclude gcc <=14
* revert ci for ubuntu
* 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
Correctly handle a zero max image count in VkSurfaceCapabilitiesKHR
which indicates no upper limit to the number of images in a swapchain.
Fixes validation error VUID-VkSwapchainCreateInfoKHR-minImageCount-01271