Skip to content

Commit d4a5bb9

Browse files
committed
only include CPM when needed
1 parent bc557f0 commit d4a5bb9

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

CMakeLists.txt

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ cmake_minimum_required(VERSION 3.21)
33
project(discord-rpc)
44

55
set(CMAKE_CXX_STANDARD 23)
6-
include(cmake/CPM.cmake)
76

87
add_library(${PROJECT_NAME} STATIC src/discord-rpc.cpp src/serialization.cpp src/command-queue.cpp)
98
target_include_directories(${PROJECT_NAME} PUBLIC include)
@@ -14,11 +13,16 @@ if (WIN32)
1413
target_link_libraries(${PROJECT_NAME} PRIVATE ws2_32.lib)
1514
endif()
1615

17-
if (NOT TARGET fmt::fmt)
18-
CPMAddPackage("gh:fmtlib/fmt#11.2.0")
19-
endif()
20-
if (NOT TARGET glaze::glaze)
21-
CPMAddPackage("gh:stephenberry/glaze@5.5.4")
16+
if (NOT TARGET fmt::fmt OR NOT TARGET glaze::glaze)
17+
if (NOT COMMAND CPMAddPackage)
18+
include(cmake/CPM.cmake)
19+
endif()
20+
if (NOT TARGET fmt::fmt)
21+
CPMAddPackage("gh:fmtlib/fmt#11.2.0")
22+
endif()
23+
if (NOT TARGET glaze::glaze)
24+
CPMAddPackage("gh:stephenberry/glaze@5.5.4")
25+
endif()
2226
endif()
2327

2428
target_link_libraries(${PROJECT_NAME} PRIVATE fmt glaze::glaze)

0 commit comments

Comments
 (0)