mirror of
https://git.suyu.dev/suyu/suyu
synced 2024-11-02 05:17:52 +00:00
e29492d114
Likewise, we also only want to link in the libraries that we actually make use of (so we don't need to worry about linking in test targets).
103 lines
2.4 KiB
CMake
Vendored
103 lines
2.4 KiB
CMake
Vendored
# Definitions for all external bundled libraries
|
|
|
|
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/CMakeModules)
|
|
include(DownloadExternals)
|
|
|
|
# Catch
|
|
add_library(catch-single-include INTERFACE)
|
|
target_include_directories(catch-single-include INTERFACE catch/single_include)
|
|
|
|
# libfmt
|
|
add_subdirectory(fmt)
|
|
add_library(fmt::fmt ALIAS fmt)
|
|
|
|
# Dynarmic
|
|
if (ARCHITECTURE_x86_64)
|
|
set(DYNARMIC_TESTS OFF)
|
|
set(DYNARMIC_NO_BUNDLED_FMT ON)
|
|
add_subdirectory(dynarmic)
|
|
endif()
|
|
|
|
# getopt
|
|
if (MSVC)
|
|
add_subdirectory(getopt)
|
|
endif()
|
|
|
|
# Glad
|
|
add_subdirectory(glad)
|
|
|
|
# inih
|
|
add_subdirectory(inih)
|
|
|
|
# lz4
|
|
set(LZ4_BUNDLED_MODE ON)
|
|
add_subdirectory(lz4/contrib/cmake_unofficial EXCLUDE_FROM_ALL)
|
|
target_include_directories(lz4_static INTERFACE ./lz4/lib)
|
|
|
|
# mbedtls
|
|
add_subdirectory(mbedtls EXCLUDE_FROM_ALL)
|
|
target_include_directories(mbedtls PUBLIC ./mbedtls/include)
|
|
|
|
# MicroProfile
|
|
add_library(microprofile INTERFACE)
|
|
target_include_directories(microprofile INTERFACE ./microprofile)
|
|
|
|
# Open Source Archives
|
|
add_subdirectory(open_source_archives EXCLUDE_FROM_ALL)
|
|
|
|
# Unicorn
|
|
add_library(unicorn-headers INTERFACE)
|
|
target_include_directories(unicorn-headers INTERFACE ./unicorn/include)
|
|
|
|
# Zstandard
|
|
add_subdirectory(zstd/build/cmake EXCLUDE_FROM_ALL)
|
|
target_include_directories(libzstd_static INTERFACE ./zstd/lib)
|
|
|
|
# SoundTouch
|
|
add_subdirectory(soundtouch)
|
|
|
|
# Opus
|
|
add_subdirectory(opus)
|
|
target_include_directories(opus INTERFACE ./opus/include)
|
|
|
|
# Cubeb
|
|
if(ENABLE_CUBEB)
|
|
set(BUILD_TESTS OFF CACHE BOOL "")
|
|
add_subdirectory(cubeb EXCLUDE_FROM_ALL)
|
|
endif()
|
|
|
|
# DiscordRPC
|
|
if (USE_DISCORD_PRESENCE)
|
|
add_subdirectory(discord-rpc EXCLUDE_FROM_ALL)
|
|
target_include_directories(discord-rpc INTERFACE ./discord-rpc/include)
|
|
endif()
|
|
|
|
# Sirit
|
|
if (ENABLE_VULKAN)
|
|
add_subdirectory(sirit)
|
|
endif()
|
|
|
|
# zlib
|
|
add_subdirectory(zlib EXCLUDE_FROM_ALL)
|
|
|
|
# libzip
|
|
add_subdirectory(libzip EXCLUDE_FROM_ALL)
|
|
|
|
if (ENABLE_WEB_SERVICE)
|
|
# LibreSSL
|
|
set(LIBRESSL_SKIP_INSTALL ON CACHE BOOL "")
|
|
add_subdirectory(libressl EXCLUDE_FROM_ALL)
|
|
target_include_directories(ssl INTERFACE ./libressl/include)
|
|
target_compile_definitions(ssl PRIVATE -DHAVE_INET_NTOP)
|
|
|
|
# lurlparser
|
|
add_subdirectory(lurlparser EXCLUDE_FROM_ALL)
|
|
|
|
# httplib
|
|
add_library(httplib INTERFACE)
|
|
target_include_directories(httplib INTERFACE ./httplib)
|
|
|
|
# JSON
|
|
add_library(json-headers INTERFACE)
|
|
target_include_directories(json-headers INTERFACE ./json)
|
|
endif()
|