50 lines
1.6 KiB
CMake
50 lines
1.6 KiB
CMake
include(ExternalProject)
|
|
|
|
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)
|
|
find_package(LZ4 QUIET)
|
|
find_package(zstd QUIET)
|
|
find_package(BZip2 QUIET)
|
|
find_package(LibLZMA QUIET)
|
|
target_include_directories(${TARGET} PRIVATE ${LibArchive_INCLUDE_DIR})
|
|
target_link_libraries(${TARGET} PRIVATE ${LibArchive_LIBRARIES} ${ZLIB_LIBRARIES} ${zstd_LIBRARIES} ${LZ4_LIBRARIES} ${LIBLZMA_LIBRARIES} ${BZIP2_LIBRARIES})
|
|
endfunction() |