From a5f5d14538fcfa3d077b039ecc993aba0c07d710 Mon Sep 17 00:00:00 2001 From: seth Date: Mon, 5 May 2025 11:54:20 -0400 Subject: [PATCH] build(cmake): fallback to pkg-config discovery for tomlplusplus Some distributions of it (like in vcpkg *wink*) won't contain CMake files Signed-off-by: seth --- CMakeLists.txt | 8 ++++++++ launcher/CMakeLists.txt | 6 +++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index a4d6df243..10b0fcd08 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -348,6 +348,14 @@ endif() if(NOT Launcher_FORCE_BUNDLED_LIBS) # Find toml++ find_package(tomlplusplus 3.2.0 QUIET) + # Fallback to pkg-config (if available) if CMake files aren't found + if(NOT tomlplusplus_FOUND) + find_package(PkgConfig) + if(PkgConfig_FOUND) + pkg_check_modules(tomlplusplus IMPORTED_TARGET tomlplusplus>=3.2.0) + endif() + endif() + # Find cmark find_package(cmark QUIET) diff --git a/launcher/CMakeLists.txt b/launcher/CMakeLists.txt index 6204acabd..7d96ffc38 100644 --- a/launcher/CMakeLists.txt +++ b/launcher/CMakeLists.txt @@ -1309,12 +1309,16 @@ target_link_libraries(Launcher_logic Launcher_murmur2 nbt++ ${ZLIB_LIBRARIES} - tomlplusplus::tomlplusplus qdcss BuildConfig Qt${QT_VERSION_MAJOR}::Widgets qrcodegenerator ) +if(TARGET PkgConfig::tomlplusplus) + target_link_libraries(Launcher_logic PkgConfig::tomlplusplus) +else() + target_link_libraries(Launcher_logic tomlplusplus::tomlplusplus) +endif() if (UNIX AND NOT CYGWIN AND NOT APPLE) target_link_libraries(Launcher_logic