From 53c364deec979e1928207617df4678f5de3d1b26 Mon Sep 17 00:00:00 2001 From: Chris Thrasher Date: Tue, 3 Sep 2024 11:43:04 -0600 Subject: [PATCH] Copy SFML DLLs alongside test executables --- CMakePresets.json | 1 + test/CMakeLists.txt | 9 ++++++--- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/CMakePresets.json b/CMakePresets.json index bf63c50..b067181 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -9,6 +9,7 @@ "CMAKE_C_EXTENSIONS": "OFF", "CMAKE_CXX_EXTENSIONS": "OFF", "CMAKE_EXPORT_COMPILE_COMMANDS": "ON", + "CMAKE_RUNTIME_OUTPUT_DIRECTORY": "${sourceDir}/build/bin", "CSFML_BUILD_EXAMPLES": "ON", "CSFML_BUILD_TEST_SUITE": "ON", "CSFML_WARNINGS_AS_ERRORS": "ON" diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 5b4fda4..adfd804 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -51,7 +51,10 @@ catch_discover_tests(test-csfml-network) # Copy DLLs into the same directory if(SFML_OS_WINDOWS AND NOT CSFML_LINK_SFML_STATICALLY) - add_custom_command(TARGET test-csfml-system POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy $ $ COMMAND_EXPAND_LISTS) - add_custom_command(TARGET test-csfml-window POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy $ $ COMMAND_EXPAND_LISTS) - add_custom_command(TARGET test-csfml-network POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy $ $ COMMAND_EXPAND_LISTS) + foreach(SFML_TARGET SFML::System SFML::Window SFML::Graphics SFML::Audio SFML::Network) + add_custom_command( + TARGET test-csfml-system PRE_BUILD + COMMAND ${CMAKE_COMMAND} -E copy $ $ COMMAND_EXPAND_LISTS + ) + endforeach() endif()