Avoid mutation target collisions when embedded
This commit is contained in:
@@ -99,9 +99,16 @@ set_tests_properties(
|
||||
# notices. This is a meta-check on the tests themselves, so it is a manual
|
||||
# target (it rebuilds and re-runs the whole suite many times), not a CTest test.
|
||||
# cmake --build build --target mutation
|
||||
# When embedded in another project, use a namespaced target to avoid collisions
|
||||
# with mutation targets provided by sibling dependencies.
|
||||
find_package(Python3 COMPONENTS Interpreter)
|
||||
if(Python3_FOUND)
|
||||
add_custom_target(mutation
|
||||
if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
|
||||
set(AKERR_MUTATION_TARGET mutation)
|
||||
else()
|
||||
set(AKERR_MUTATION_TARGET akerror_mutation)
|
||||
endif()
|
||||
add_custom_target(${AKERR_MUTATION_TARGET}
|
||||
COMMAND ${Python3_EXECUTABLE}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/scripts/mutation_test.py
|
||||
--source-root ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
|
||||
Reference in New Issue
Block a user