52 lines
1.9 KiB
CMake
52 lines
1.9 KiB
CMake
cmake_minimum_required(VERSION 3.8)
|
|
|
|
get_filename_component(WICKED_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
|
include(CMakeFindDependencyMacro)
|
|
|
|
|
|
if (WIN32)
|
|
# TODO: Choose whether to use SDL2 on windows as well
|
|
set(TARGET_NAME WickedEngine::WickedEngine_Windows)
|
|
set(LIBDXCOMPILER "dxcompiler.dll")
|
|
else ()
|
|
set(TARGET_NAME WickedEngine::WickedEngine_Linux)
|
|
find_package(Vulkan REQUIRED)
|
|
find_package(SDL2 REQUIRED)
|
|
find_package(OpenImageDenoise QUIET)
|
|
find_package(Threads REQUIRED)
|
|
if(NOT ${OpenImageDenoise_FOUND})
|
|
message("OpenImageDenoise not found, it will be disabled.")
|
|
else()
|
|
message("OpenImageDenoise Found.")
|
|
endif()
|
|
|
|
if(NOT TARGET SDL2::SDL2)
|
|
# using old SDL2 cmake, lets create a SDL2 target ourselves
|
|
find_library(SDL2_LIBRARY_FILE_LOCATION SDL2 REQUIRED)
|
|
|
|
add_library(SDL2::SDL2 SHARED IMPORTED)
|
|
set_target_properties(SDL2::SDL2 PROPERTIES
|
|
INTERFACE_INCLUDE_DIRECTORIES ${SDL2_INCLUDE_DIRS}
|
|
INTERFACE_LINK_LIBRARIES ${SDL2_LIBRARIES}
|
|
IMPORTED_LOCATION ${SDL2_LIBRARY_FILE_LOCATION}
|
|
)
|
|
|
|
unset(SDL2_LIBRARY_FILE_LOCATION)
|
|
endif()
|
|
set(LIBDXCOMPILER "libdxcompiler.so")
|
|
endif()
|
|
|
|
if (NOT TARGET WickedEngine::WickedEngine)
|
|
include("${WICKED_CMAKE_DIR}/WickedEngineTargets.cmake")
|
|
add_library(WickedEngine::WickedEngine ALIAS ${TARGET_NAME})
|
|
|
|
set(WickedEngine_SHADER_DIR "@_CONFIG_INSTALL_DIR_INCLUDE@/WickedEngine/shaders/")
|
|
target_compile_definitions(${TARGET_NAME} INTERFACE "WickedEngine_SHADER_DIR=\"${WickedEngine_SHADER_DIR}\"")
|
|
|
|
add_library(WickedEngine::dxcompiler SHARED IMPORTED)
|
|
set_property(TARGET WickedEngine::dxcompiler PROPERTY
|
|
IMPORTED_LOCATION "@_CONFIG_INSTALL_DIR_LIB@/WickedEngine/${LIBDXCOMPILER}" )
|
|
endif()
|
|
|
|
set(WickedEngine_LIBRARIES WickedEngine::WickedEngine ${TARGET_NAME})
|