CMake: Add SAMPLES_BUILD_ONLY_DYNAMIC option

This commit is contained in:
mocabe
2020-01-29 15:12:22 +09:00
committed by Markus Tavenrath
parent bb40388d34
commit a7e2cf152e
7 changed files with 131 additions and 104 deletions

View File

@@ -14,22 +14,26 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(01_InitInstance) if(NOT SAMPLES_BUILD_ONLY_DYNAMIC)
set(HEADERS project(01_InitInstance)
)
set(SOURCES set(HEADERS
01_InitInstance.cpp )
)
source_group(headers FILES ${HEADERS}) set(SOURCES
source_group(sources FILES ${SOURCES}) 01_InitInstance.cpp
)
add_executable(01_InitInstance source_group(headers FILES ${HEADERS})
${HEADERS} source_group(sources FILES ${SOURCES})
${SOURCES}
)
set_target_properties(01_InitInstance PROPERTIES FOLDER "Samples") add_executable(01_InitInstance
target_link_libraries(01_InitInstance "${Vulkan_LIBRARIES}") ${HEADERS}
${SOURCES}
)
set_target_properties(01_InitInstance PROPERTIES FOLDER "Samples")
target_link_libraries(01_InitInstance "${Vulkan_LIBRARIES}")
endif()

View File

@@ -14,11 +14,14 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
find_package(Vulkan REQUIRED)
project(Vulkan-Hpp_Samples) project(Vulkan-Hpp_Samples)
option (SAMPLES_BUILD_WITH_LOCAL_VULKAN_HPP "Build with local Vulkan headers" OFF) option (SAMPLES_BUILD_WITH_LOCAL_VULKAN_HPP "Build with local Vulkan headers" OFF)
option (SAMPLES_BUILD_ONLY_DYNAMIC "Build only dynamic" OFF)
if(NOT (SAMPLES_BUILD_ONLY_DYNAMIC AND SAMPLES_BUILD_WITH_LOCAL_VULKAN_HPP))
find_package(Vulkan REQUIRED)
endif()
if (CMAKE_SYSTEM_NAME MATCHES "Windows") if (CMAKE_SYSTEM_NAME MATCHES "Windows")
add_definitions(-DNOMINMAX -DVK_USE_PLATFORM_WIN32_KHR) add_definitions(-DNOMINMAX -DVK_USE_PLATFORM_WIN32_KHR)

View File

@@ -14,22 +14,26 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(CreateDebugUtilsMessenger) if(NOT SAMPLES_BUILD_ONLY_DYNAMIC)
set(HEADERS project(CreateDebugUtilsMessenger)
)
set(SOURCES set(HEADERS
CreateDebugUtilsMessenger.cpp )
)
source_group(headers FILES ${HEADERS}) set(SOURCES
source_group(sources FILES ${SOURCES}) CreateDebugUtilsMessenger.cpp
)
add_executable(CreateDebugUtilsMessenger source_group(headers FILES ${HEADERS})
${HEADERS} source_group(sources FILES ${SOURCES})
${SOURCES}
)
set_target_properties(CreateDebugUtilsMessenger PROPERTIES FOLDER "Samples") add_executable(CreateDebugUtilsMessenger
target_link_libraries(CreateDebugUtilsMessenger PUBLIC "${Vulkan_LIBRARIES}") ${HEADERS}
${SOURCES}
)
set_target_properties(CreateDebugUtilsMessenger PROPERTIES FOLDER "Samples")
target_link_libraries(CreateDebugUtilsMessenger "${Vulkan_LIBRARIES}")
endif()

View File

@@ -14,22 +14,26 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(InstanceExtensionProperties) if(NOT SAMPLES_BUILD_ONLY_DYNAMIC)
set(HEADERS project(InstanceExtensionProperties)
)
set(SOURCES set(HEADERS
InstanceExtensionProperties.cpp )
)
source_group(headers FILES ${HEADERS}) set(SOURCES
source_group(sources FILES ${SOURCES}) InstanceExtensionProperties.cpp
)
add_executable(InstanceExtensionProperties source_group(headers FILES ${HEADERS})
${HEADERS} source_group(sources FILES ${SOURCES})
${SOURCES}
)
set_target_properties(InstanceExtensionProperties PROPERTIES FOLDER "Samples") add_executable(InstanceExtensionProperties
target_link_libraries(InstanceExtensionProperties PUBLIC "${Vulkan_LIBRARIES}") ${HEADERS}
${SOURCES}
)
set_target_properties(InstanceExtensionProperties PROPERTIES FOLDER "Samples")
target_link_libraries(InstanceExtensionProperties "${Vulkan_LIBRARIES}")
endif()

View File

@@ -14,22 +14,26 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(InstanceLayerExtensionProperties) if(NOT SAMPLES_BUILD_ONLY_DYNAMIC)
set(HEADERS project(InstanceLayerExtensionProperties)
)
set(SOURCES set(HEADERS
InstanceLayerExtensionProperties.cpp )
)
source_group(headers FILES ${HEADERS}) set(SOURCES
source_group(sources FILES ${SOURCES}) InstanceLayerExtensionProperties.cpp
)
add_executable(InstanceLayerExtensionProperties source_group(headers FILES ${HEADERS})
${HEADERS} source_group(sources FILES ${SOURCES})
${SOURCES}
)
set_target_properties(InstanceLayerExtensionProperties PROPERTIES FOLDER "Samples") add_executable(InstanceLayerExtensionProperties
target_link_libraries(InstanceLayerExtensionProperties PUBLIC "${Vulkan_LIBRARIES}") ${HEADERS}
${SOURCES}
)
set_target_properties(InstanceLayerExtensionProperties PROPERTIES FOLDER "Samples")
target_link_libraries(InstanceLayerExtensionProperties "${Vulkan_LIBRARIES}")
endif()

View File

@@ -14,22 +14,26 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(InstanceLayerProperties) if(NOT SAMPLES_BUILD_ONLY_DYNAMIC)
set(HEADERS project(InstanceLayerProperties)
)
set(SOURCES set(HEADERS
InstanceLayerProperties.cpp )
)
source_group(headers FILES ${HEADERS}) set(SOURCES
source_group(sources FILES ${SOURCES}) InstanceLayerProperties.cpp
)
add_executable(InstanceLayerProperties source_group(headers FILES ${HEADERS})
${HEADERS} source_group(sources FILES ${SOURCES})
${SOURCES}
)
set_target_properties(InstanceLayerProperties PROPERTIES FOLDER "Samples") add_executable(InstanceLayerProperties
target_link_libraries(InstanceLayerProperties "${Vulkan_LIBRARIES}") ${HEADERS}
${SOURCES}
)
set_target_properties(InstanceLayerProperties PROPERTIES FOLDER "Samples")
target_link_libraries(InstanceLayerProperties "${Vulkan_LIBRARIES}")
endif()

View File

@@ -14,22 +14,26 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(InstanceVersion) if(NOT SAMPLES_BUILD_ONLY_DYNAMIC)
set(HEADERS project(InstanceVersion)
)
set(SOURCES set(HEADERS
InstanceVersion.cpp )
)
source_group(headers FILES ${HEADERS}) set(SOURCES
source_group(sources FILES ${SOURCES}) InstanceVersion.cpp
)
add_executable(InstanceVersion source_group(headers FILES ${HEADERS})
${HEADERS} source_group(sources FILES ${SOURCES})
${SOURCES}
)
set_target_properties(InstanceVersion PROPERTIES FOLDER "Samples") add_executable(InstanceVersion
target_link_libraries(InstanceVersion PUBLIC "${Vulkan_LIBRARIES}") ${HEADERS}
${SOURCES}
)
set_target_properties(InstanceVersion PROPERTIES FOLDER "Samples")
target_link_libraries(InstanceVersion "${Vulkan_LIBRARIES}")
endif()