Files
OpenVulkano/3rdParty/CMakeLists.txt
2024-05-27 08:50:31 +02:00

48 lines
1.5 KiB
CMake

add_subdirectory(glm)
if (NOT ANDROID AND NOT IOS)
add_subdirectory(glfw)
add_subdirectory(ftxui)
endif()
add_subdirectory(assimp)
add_subdirectory(fmt)
add_subdirectory(spdlog)
add_subdirectory(yaml-cpp)
add_subdirectory(magic-enum)
add_subdirectory(pugixml)
add_subdirectory(stb)
add_subdirectory(eigen)
add_subdirectory(utfcpp)
add_subdirectory(imgui)
add_subdirectory(tracy)
add_subdirectory(libstud-uuid)
add_subdirectory(rapidyaml)
#TODO move into a different file
find_package(LibArchive QUIET)
if (NOT LibArchive_FOUND)
file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/deps)
execute_process(
COMMAND ${CMAKE_COMMAND} -G ${CMAKE_GENERATOR} -DTOOLCHAIN_FILE=${TOOLCHAIN_FILE} ${CMAKE_CURRENT_SOURCE_DIR}/libarchive
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/deps
)
execute_process(
COMMAND ${CMAKE_COMMAND} --build ${CMAKE_BINARY_DIR}/deps
)
list(APPEND CMAKE_PREFIX_PATH ${CMAKE_BINARY_DIR}/deps/INSTALL)
else ()
message("Using system LibArchive")
set(USING_SYSTEM_LIBARCHIVE ON PARENT_SCOPE)
endif ()
function(LinkLibArchive TARGET)
find_package(LibArchive REQUIRED)
set(ZLIB_USE_STATIC_LIBS ON)
find_package(ZLIB REQUIRED)
if (NOT USING_SYSTEM_LIBARCHIVE)
find_package(LZ4 REQUIRED)
find_package(zstd REQUIRED)
endif ()
target_include_directories(${TARGET} PRIVATE ${LibArchive_INCLUDE_DIR})
target_link_libraries(${TARGET} PRIVATE ${LibArchive_LIBRARIES} ${ZLIB_LIBRARIES} ${zstd_LIBRARIES} ${LZ4_LIBRARIES})
endfunction()