|
|
@ -38,9 +38,13 @@ option(YUZU_USE_BUNDLED_OPUS "Compile bundled opus" ON) |
|
|
|
|
|
|
|
|
option(YUZU_TESTS "Compile tests" ON) |
|
|
option(YUZU_TESTS "Compile tests" ON) |
|
|
|
|
|
|
|
|
option(YUZU_USE_BUNDLED_VCPKG "Use vcpkg for yuzu dependencies" OFF) |
|
|
|
|
|
|
|
|
option(YUZU_USE_BUNDLED_VCPKG "Use vcpkg for yuzu dependencies" "${MSVC}") |
|
|
|
|
|
|
|
|
if (YUZU_USE_BUNDLED_VCPKG) |
|
|
if (YUZU_USE_BUNDLED_VCPKG) |
|
|
|
|
|
if (YUZU_TESTS) |
|
|
|
|
|
list(APPEND VCPKG_MANIFEST_FEATURES "yuzu-tests") |
|
|
|
|
|
endif() |
|
|
|
|
|
|
|
|
include(${CMAKE_SOURCE_DIR}/externals/vcpkg/scripts/buildsystems/vcpkg.cmake) |
|
|
include(${CMAKE_SOURCE_DIR}/externals/vcpkg/scripts/buildsystems/vcpkg.cmake) |
|
|
elseif(NOT "$ENV{VCPKG_TOOLCHAIN_FILE}" STREQUAL "") |
|
|
elseif(NOT "$ENV{VCPKG_TOOLCHAIN_FILE}" STREQUAL "") |
|
|
# Disable manifest mode (use vcpkg classic mode) when using a custom vcpkg installation |
|
|
# Disable manifest mode (use vcpkg classic mode) when using a custom vcpkg installation |
|
|
@ -160,7 +164,6 @@ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin) |
|
|
# ======================================================================= |
|
|
# ======================================================================= |
|
|
|
|
|
|
|
|
find_package(fmt 8.0.1 REQUIRED CONFIG) |
|
|
find_package(fmt 8.0.1 REQUIRED CONFIG) |
|
|
find_package(lz4 1.8 REQUIRED) |
|
|
|
|
|
find_package(nlohmann_json 3.8 REQUIRED CONFIG) |
|
|
find_package(nlohmann_json 3.8 REQUIRED CONFIG) |
|
|
find_package(ZLIB 1.2 REQUIRED) |
|
|
find_package(ZLIB 1.2 REQUIRED) |
|
|
|
|
|
|
|
|
@ -170,6 +173,12 @@ if (NOT zstd_FOUND) |
|
|
find_package(zstd 1.5 REQUIRED) |
|
|
find_package(zstd 1.5 REQUIRED) |
|
|
endif() |
|
|
endif() |
|
|
|
|
|
|
|
|
|
|
|
# lz4 1.8 is required, but vcpkg's lz4-config.cmake does not have version info |
|
|
|
|
|
find_package(lz4 CONFIG) |
|
|
|
|
|
if (NOT lz4_FOUND) |
|
|
|
|
|
find_package(lz4 1.8 REQUIRED) |
|
|
|
|
|
endif() |
|
|
|
|
|
|
|
|
if (YUZU_TESTS) |
|
|
if (YUZU_TESTS) |
|
|
find_package(Catch2 2.13.7 REQUIRED CONFIG) |
|
|
find_package(Catch2 2.13.7 REQUIRED CONFIG) |
|
|
endif() |
|
|
endif() |
|
|
@ -355,16 +364,10 @@ if (ENABLE_SDL2) |
|
|
endif() |
|
|
endif() |
|
|
endif() |
|
|
endif() |
|
|
|
|
|
|
|
|
# TODO(lat9nq): Determine what if any of this we still need |
|
|
|
|
|
# |
|
|
|
|
|
# Reexport some targets that are named differently when using the upstream CmakeConfig vs the generated Conan config |
|
|
|
|
|
|
|
|
# Reexport some targets that are named differently when using the upstream CmakeConfig |
|
|
# In order to ALIAS targets to a new name, they first need to be IMPORTED_GLOBAL |
|
|
# In order to ALIAS targets to a new name, they first need to be IMPORTED_GLOBAL |
|
|
# Dynarmic checks for target `boost` and so we want to make sure it can find it through our system instead of using their external |
|
|
# Dynarmic checks for target `boost` and so we want to make sure it can find it through our system instead of using their external |
|
|
if (TARGET Boost::Boost) |
|
|
|
|
|
set_target_properties(Boost::Boost PROPERTIES IMPORTED_GLOBAL TRUE) |
|
|
|
|
|
add_library(Boost::boost ALIAS Boost::Boost) |
|
|
|
|
|
add_library(boost ALIAS Boost::Boost) |
|
|
|
|
|
elseif (TARGET Boost::boost) |
|
|
|
|
|
|
|
|
if (TARGET Boost::boost) |
|
|
set_target_properties(Boost::boost PROPERTIES IMPORTED_GLOBAL TRUE) |
|
|
set_target_properties(Boost::boost PROPERTIES IMPORTED_GLOBAL TRUE) |
|
|
add_library(boost ALIAS Boost::boost) |
|
|
add_library(boost ALIAS Boost::boost) |
|
|
endif() |
|
|
endif() |
|
|
|