diff --git a/CMakeLists.txt b/CMakeLists.txt index 32fdea7..77892c6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -286,62 +286,30 @@ endif() include("cmake/nuget.cmake") include("cmake/module.cmake") -CPMFindPackage( - NAME lockpp - VERSION 3.0 - GIT_REPOSITORY "https://github.com/Curve/lockpp" -) - -CPMFindPackage( - NAME boost_callable_traits - GIT_TAG boost-1.87.0 - GIT_REPOSITORY "https://github.com/boostorg/callable_traits" -) - -CPMFindPackage( - NAME ereignis - VERSION 4.3 - GIT_REPOSITORY "https://github.com/Soundux/ereignis" -) - -CPMFindPackage( - NAME fmt - GIT_TAG 11.1.1 - GIT_REPOSITORY "https://github.com/fmtlib/fmt" -) - -CPMFindPackage( - NAME flagpp - VERSION 3.0 - GIT_REPOSITORY "https://github.com/Curve/flagpp" -) - -CPMFindPackage( - NAME rebind - VERSION 5.1.1 - GIT_REPOSITORY "https://github.com/Curve/rebind" -) - -CPMFindPackage( - NAME poolparty - VERSION 3.0.1 - GIT_REPOSITORY "https://github.com/Curve/poolparty" -) - -CPMFindPackage( - NAME eraser - VERSION 2.2.1 - GIT_REPOSITORY "https://github.com/Curve/eraser" -) - -CPMFindPackage( - NAME boost_preprocessor - GIT_TAG boost-1.87.0 - GIT_REPOSITORY "https://github.com/boostorg/preprocessor" -) - -target_link_libraries(${PROJECT_NAME} ${saucer_linkage} boost_preprocessor cr::lockpp cr::flagpp) -target_link_libraries(${PROJECT_NAME} PUBLIC boost_callable_traits cr::ereignis fmt::fmt cr::rebind cr::poolparty cr::eraser) +find_path(LOCKPP_INCLUDE_DIRS "lockpp") +add_library(cr::lockpp INTERFACE IMPORTED) +target_include_directories(cr::lockpp INTERFACE ${LOCKPP_INCLUDE_DIRS}) +find_path(FLAGPP_INCLUDE_DIRS "flagpp") +add_library(cr::flagpp INTERFACE IMPORTED) +target_include_directories(cr::flagpp INTERFACE ${FLAGPP_INCLUDE_DIRS}) +find_path(EREIGNIS_INCLUDE_DIRS "ereignis") +add_library(cr::ereignis INTERFACE IMPORTED) +target_include_directories(cr::ereignis INTERFACE ${EREIGNIS_INCLUDE_DIRS}) +find_path(REBIND_INCLUDE_DIRS "rebind") +add_library(cr::rebind INTERFACE IMPORTED) +target_include_directories(cr::rebind INTERFACE ${REBIND_INCLUDE_DIRS}) +find_path(POOLPARTY_INCLUDE_DIRS "poolparty") +add_library(cr::poolparty INTERFACE IMPORTED) +target_include_directories(cr::poolparty INTERFACE ${POOLPARTY_INCLUDE_DIRS}) +find_path(ERASER_INCLUDE_DIRS "eraser") +add_library(cr::eraser INTERFACE IMPORTED) +target_include_directories(cr::eraser INTERFACE ${ERASER_INCLUDE_DIRS}) + +find_package(fmt CONFIG REQUIRED) +find_package(Boost REQUIRED COMPONENTS callable_traits preprocessor) + +target_link_libraries(${PROJECT_NAME} ${saucer_linkage} Boost::preprocessor cr::lockpp cr::flagpp) +target_link_libraries(${PROJECT_NAME} PUBLIC Boost::callable_traits cr::ereignis fmt::fmt cr::rebind cr::poolparty cr::eraser) # -------------------------------------------------------------------------------------------------------- # Setup Backends @@ -405,7 +373,7 @@ if (saucer_backend STREQUAL "WebView2") target_compile_definitions(${PROJECT_NAME} PRIVATE UNICODE=1 _UNICODE=1 NOMINMAX=1) include("cmake/webview2.cmake") - target_link_libraries(${PROJECT_NAME} ${saucer_linkage} Shlwapi gdiplus webview2::webview2) + target_link_libraries(${PROJECT_NAME} ${saucer_linkage} Dwmapi Shcore Shlwapi gdiplus webview2::webview2) endif() # -------------------------------------------------------------------------------------------------------- @@ -418,12 +386,8 @@ if (saucer_serializer STREQUAL "Glaze") ) target_sources(${PROJECT_NAME} PRIVATE ${glaze_sources}) - - CPMFindPackage( - NAME glaze - VERSION 4.2.4 - GIT_REPOSITORY "https://github.com/stephenberry/glaze" - ) + + find_package(glaze CONFIG REQUIRED) target_link_libraries(${PROJECT_NAME} PUBLIC glaze::glaze) endif() diff --git a/cmake/webview2.cmake b/cmake/webview2.cmake index 9ee3dbc..7ec2d9f 100644 --- a/cmake/webview2.cmake +++ b/cmake/webview2.cmake @@ -1,7 +1,8 @@ include("cmake/nuget.cmake") if (NOT saucer_prefer_remote) - find_package(webview2 CONFIG REQUIRED) + find_package(unofficial-webview2 CONFIG REQUIRED) + add_library(webview2::webview2 ALIAS unofficial::webview2::webview2) return() endif()