summaryrefslogtreecommitdiffstats
path: root/Tests
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2022-05-24 14:10:34 (GMT)
committerKitware Robot <kwrobot@kitware.com>2022-05-24 14:10:46 (GMT)
commitf791cd23d408ff7af104d119898c4dd8e1e87688 (patch)
tree1dd0e97bd5baf3a1f1be66e2f1316ac3b01c9b66 /Tests
parent60530da6f2d455b9344c9657166b30c9fe5f9ca3 (diff)
parentd9b4264cb848b61975fe7213183356961f0e0759 (diff)
downloadCMake-f791cd23d408ff7af104d119898c4dd8e1e87688.zip
CMake-f791cd23d408ff7af104d119898c4dd8e1e87688.tar.gz
CMake-f791cd23d408ff7af104d119898c4dd8e1e87688.tar.bz2
Merge topic 'findvulkan-moltenvk'
d9b4264cb8 FindVulkan: Add component for `MoltenVK` 10a6bb16bb FindVulkan: Mark test target with `cxx_std_11` to avoid AppleClang warnings Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !7286
Diffstat (limited to 'Tests')
-rw-r--r--Tests/FindVulkan/Test/CMakeLists.txt23
-rw-r--r--Tests/FindVulkan/Test/main-MoltenVK.cxx16
2 files changed, 35 insertions, 4 deletions
diff --git a/Tests/FindVulkan/Test/CMakeLists.txt b/Tests/FindVulkan/Test/CMakeLists.txt
index a492daa..42543ac 100644
--- a/Tests/FindVulkan/Test/CMakeLists.txt
+++ b/Tests/FindVulkan/Test/CMakeLists.txt
@@ -3,28 +3,37 @@ cmake_policy(SET CMP0091 NEW)
project(TestFindVulkan C CXX)
include(CTest)
+set(components
+ glslang
+ shaderc_combined
+ SPIRV-Tools
+)
+if(APPLE)
+ list(APPEND components MoltenVK)
+endif()
find_package(Vulkan REQUIRED
- COMPONENTS
- glslang
- shaderc_combined
- SPIRV-Tools)
+ COMPONENTS ${components})
add_executable(test_tgt main.c)
target_link_libraries(test_tgt Vulkan::Vulkan)
+target_compile_features(test_tgt PRIVATE cxx_std_11)
add_test(NAME test_tgt COMMAND test_tgt)
add_executable(test_var main.c)
target_include_directories(test_var PRIVATE ${Vulkan_INCLUDE_DIRS})
target_link_libraries(test_var PRIVATE ${Vulkan_LIBRARIES})
+target_compile_features(test_var PRIVATE cxx_std_11)
add_test(NAME test_var COMMAND test_var)
add_executable(test_tgt_dl main-dynamicVulkanLoading.cpp)
target_link_libraries(test_tgt_dl Vulkan::Headers ${CMAKE_DL_LIBS})
+target_compile_features(test_tgt_dl PRIVATE cxx_std_11)
add_test(NAME test_tgt_dl COMMAND test_tgt_dl)
add_executable(test_var_dl main-dynamicVulkanLoading.cpp)
target_include_directories(test_var_dl PRIVATE ${Vulkan_INCLUDE_DIRS})
target_link_libraries(test_var_dl ${CMAKE_DL_LIBS})
+target_compile_features(test_var_dl PRIVATE cxx_std_11)
add_test(NAME test_var_dl COMMAND test_var_dl)
add_executable(test_tgt_glslang main-glslang.cxx)
@@ -60,6 +69,12 @@ if(NOT SPIRV-Tools_debug_location)
MSVC_RUNTIME_LIBRARY "MultiThreadedDLL")
endif()
+if(APPLE)
+ add_executable(test_tgt_MoltenVK main-MoltenVK.cxx)
+ target_link_libraries(test_tgt_MoltenVK Vulkan::MoltenVK)
+ add_test(NAME test_tgt_MoltenVK COMMAND test_tgt_MoltenVK)
+endif()
+
if(Vulkan_GLSLC_EXECUTABLE)
add_test(NAME test_glslc
COMMAND ${CMAKE_COMMAND}
diff --git a/Tests/FindVulkan/Test/main-MoltenVK.cxx b/Tests/FindVulkan/Test/main-MoltenVK.cxx
new file mode 100644
index 0000000..3156979
--- /dev/null
+++ b/Tests/FindVulkan/Test/main-MoltenVK.cxx
@@ -0,0 +1,16 @@
+#include <iostream>
+
+#include <MoltenVK/vk_mvk_moltenvk.h>
+
+int main()
+{
+ char mvk_version[256];
+ char vk_version[256];
+ vkGetVersionStringsMVK(mvk_version, sizeof(mvk_version), vk_version,
+ sizeof(vk_version));
+
+ std::cout << "MoltenVK version: " << mvk_version << std::endl;
+ std::cout << "Vulkan version: " << vk_version << std::endl;
+
+ return 0;
+}