From 3e1a13590a97f14ca07761dec132bae49ddc1d40 Mon Sep 17 00:00:00 2001 From: timoreo Date: Fri, 30 Dec 2022 21:13:54 +0100 Subject: [PATCH] Fix CMake --- CMakeLists.txt | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 8945e70..1e66d40 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,18 @@ -set(CMAKE_TOOLCHAIN_FILE /opt/devkitpro/cmake/3DS.cmake) +set(CMAKE_TOOLCHAIN_FILE "${DEVKITPRO}/cmake/3DS.cmake") +list(APPEND CMAKE_PREFIX_PATH "${DEVKITPRO}/portlibs/3ds/lib/pkgconfig/") cmake_minimum_required(VERSION 3.24) project(matrix-3ds-sdk) add_library(matrix-3ds-sdk source/matrixclient.cpp source/memorystore.cpp source/util.cpp) -target_include_directories(matrix-3ds-sdk PUBLIC source include /opt/devkitpro/portlibs/3ds/include/) \ No newline at end of file +find_package(PkgConfig REQUIRED) +pkg_check_modules(jansson REQUIRED IMPORTED_TARGET jansson) + +# libtool usage forcing this little hack +file(READ "${DEVKITPRO}/portlibs/3ds/lib/libcurl.la" contents) +if (contents MATCHES "dependency_libs *= *'([^']*)'") + string(STRIP "${CMAKE_MATCH_1}" deps) + string(REGEX REPLACE " +" ";" deps "${deps}") + target_link_libraries(matrix-3ds-sdk PRIVATE curl PkgConfig::jansson ${deps}) +endif() + +target_include_directories(matrix-3ds-sdk PUBLIC source include "${DEVKITPRO}/portlibs/3ds/include/")