Skip to content

Commit 73c076f

Browse files
committed
Use separate libraries per helper part to avoid CI parallel build OOM
1 parent 65d3796 commit 73c076f

1 file changed

Lines changed: 21 additions & 14 deletions

File tree

CMakeLists.txt

Lines changed: 21 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -234,38 +234,45 @@ if(FASTMCPP_BUILD_TESTS)
234234
add_test(NAME fastmcpp_server_patterns COMMAND fastmcpp_server_patterns)
235235

236236
# Server interactions helpers library (compiled separately to avoid MSVC heap exhaustion)
237-
add_library(fastmcpp_interactions_helpers STATIC
238-
tests/server/interactions_helpers_p1.cpp
239-
tests/server/interactions_helpers_p2.cpp
240-
tests/server/interactions_helpers_p3.cpp
241-
tests/server/interactions_helpers_p4.cpp
242-
tests/server/interactions_helpers_p5.cpp
243-
)
244-
target_link_libraries(fastmcpp_interactions_helpers PRIVATE fastmcpp_core)
237+
# Each helper part as separate library to avoid MSVC heap exhaustion in parallel builds
238+
add_library(fastmcpp_helpers_p1 STATIC tests/server/interactions_helpers_p1.cpp)
239+
target_link_libraries(fastmcpp_helpers_p1 PRIVATE fastmcpp_core)
240+
241+
add_library(fastmcpp_helpers_p2 STATIC tests/server/interactions_helpers_p2.cpp)
242+
target_link_libraries(fastmcpp_helpers_p2 PRIVATE fastmcpp_core)
243+
244+
add_library(fastmcpp_helpers_p3 STATIC tests/server/interactions_helpers_p3.cpp)
245+
target_link_libraries(fastmcpp_helpers_p3 PRIVATE fastmcpp_core)
246+
247+
add_library(fastmcpp_helpers_p4 STATIC tests/server/interactions_helpers_p4.cpp)
248+
target_link_libraries(fastmcpp_helpers_p4 PRIVATE fastmcpp_core)
249+
250+
add_library(fastmcpp_helpers_p5 STATIC tests/server/interactions_helpers_p5.cpp)
251+
target_link_libraries(fastmcpp_helpers_p5 PRIVATE fastmcpp_core)
245252

246253
# Server interactions split into 6 parts
247254
add_executable(fastmcpp_server_interactions_p1 tests/server/interactions_p1.cpp)
248-
target_link_libraries(fastmcpp_server_interactions_p1 PRIVATE fastmcpp_core fastmcpp_interactions_helpers)
255+
target_link_libraries(fastmcpp_server_interactions_p1 PRIVATE fastmcpp_core fastmcpp_helpers_p1 fastmcpp_helpers_p2 fastmcpp_helpers_p3 fastmcpp_helpers_p4 fastmcpp_helpers_p5)
249256
add_test(NAME fastmcpp_server_interactions_p1 COMMAND fastmcpp_server_interactions_p1)
250257

251258
add_executable(fastmcpp_server_interactions_p2 tests/server/interactions_p2.cpp)
252-
target_link_libraries(fastmcpp_server_interactions_p2 PRIVATE fastmcpp_core fastmcpp_interactions_helpers)
259+
target_link_libraries(fastmcpp_server_interactions_p2 PRIVATE fastmcpp_core fastmcpp_helpers_p1 fastmcpp_helpers_p2 fastmcpp_helpers_p3 fastmcpp_helpers_p4 fastmcpp_helpers_p5)
253260
add_test(NAME fastmcpp_server_interactions_p2 COMMAND fastmcpp_server_interactions_p2)
254261

255262
add_executable(fastmcpp_server_interactions_p3 tests/server/interactions_p3.cpp)
256-
target_link_libraries(fastmcpp_server_interactions_p3 PRIVATE fastmcpp_core fastmcpp_interactions_helpers)
263+
target_link_libraries(fastmcpp_server_interactions_p3 PRIVATE fastmcpp_core fastmcpp_helpers_p1 fastmcpp_helpers_p2 fastmcpp_helpers_p3 fastmcpp_helpers_p4 fastmcpp_helpers_p5)
257264
add_test(NAME fastmcpp_server_interactions_p3 COMMAND fastmcpp_server_interactions_p3)
258265

259266
add_executable(fastmcpp_server_interactions_p4 tests/server/interactions_p4.cpp)
260-
target_link_libraries(fastmcpp_server_interactions_p4 PRIVATE fastmcpp_core fastmcpp_interactions_helpers)
267+
target_link_libraries(fastmcpp_server_interactions_p4 PRIVATE fastmcpp_core fastmcpp_helpers_p1 fastmcpp_helpers_p2 fastmcpp_helpers_p3 fastmcpp_helpers_p4 fastmcpp_helpers_p5)
261268
add_test(NAME fastmcpp_server_interactions_p4 COMMAND fastmcpp_server_interactions_p4)
262269

263270
add_executable(fastmcpp_server_interactions_p5 tests/server/interactions_p5.cpp)
264-
target_link_libraries(fastmcpp_server_interactions_p5 PRIVATE fastmcpp_core fastmcpp_interactions_helpers)
271+
target_link_libraries(fastmcpp_server_interactions_p5 PRIVATE fastmcpp_core fastmcpp_helpers_p1 fastmcpp_helpers_p2 fastmcpp_helpers_p3 fastmcpp_helpers_p4 fastmcpp_helpers_p5)
265272
add_test(NAME fastmcpp_server_interactions_p5 COMMAND fastmcpp_server_interactions_p5)
266273

267274
add_executable(fastmcpp_server_interactions_p6 tests/server/interactions_p6.cpp)
268-
target_link_libraries(fastmcpp_server_interactions_p6 PRIVATE fastmcpp_core fastmcpp_interactions_helpers)
275+
target_link_libraries(fastmcpp_server_interactions_p6 PRIVATE fastmcpp_core fastmcpp_helpers_p1 fastmcpp_helpers_p2 fastmcpp_helpers_p3 fastmcpp_helpers_p4 fastmcpp_helpers_p5)
269276
add_test(NAME fastmcpp_server_interactions_p6 COMMAND fastmcpp_server_interactions_p6)
270277

271278
add_executable(fastmcpp_server_context_meta tests/server/context_meta.cpp)

0 commit comments

Comments
 (0)