cmake: Add VK_BOOTSTRAP_VULKAN_HEADER_DIR build option

This commit is contained in:
Charles Giessen 2021-03-01 20:59:49 -07:00 committed by Charles Giessen
parent 07ae8845a7
commit 4211068f10

View File

@ -2,9 +2,16 @@ cmake_minimum_required(VERSION 3.10 FATAL_ERROR)
project(VulkanBootstrap)
add_library(vk-boostrap-vulkan-headers INTERFACE)
find_package(Vulkan QUIET)
if(${Vulkan_INCLUDE_DIR} STREQUAL "Vulkan_INCLUDE_DIR-NOTFOUND")
set(VK_BOOTSTRAP_VULKAN_HEADER_DIR "" CACHE STRING "Specify the location of the Vulkan-Headers include directory.")
mark_as_advanced(VK_BOOTSTRAP_VULKAN_HEADER_DIR)
if(NOT "${VK_BOOTSTRAP_VULKAN_HEADER_DIR}" STREQUAL "")
target_include_directories(vk-boostrap-vulkan-headers INTERFACE ${VK_BOOTSTRAP_VULKAN_HEADER_DIR})
else ()
find_package(Vulkan QUIET)
if(${Vulkan_INCLUDE_DIR} STREQUAL "Vulkan_INCLUDE_DIR-NOTFOUND")
include(FetchContent)
FetchContent_Declare(
VulkanHeaders
@ -13,8 +20,9 @@ if(${Vulkan_INCLUDE_DIR} STREQUAL "Vulkan_INCLUDE_DIR-NOTFOUND")
)
FetchContent_MakeAvailable(VulkanHeaders)
target_link_libraries(vk-boostrap-vulkan-headers INTERFACE Vulkan::Headers)
else()
else()
set_target_properties(vk-boostrap-vulkan-headers PROPERTIES INTERFACE_INCLUDE_DIRECTORIES ${Vulkan_INCLUDE_DIR})
endif()
endif()
add_library(vk-bootstrap src/VkBootstrap.h src/VkBootstrap.cpp)