diff --git a/scripts/cmake/test/AddTest.cmake b/scripts/cmake/test/AddTest.cmake index 23661e1070b344fcee704e974f5b055d738358bd..0a4bb755c93893f9f72bb680c39a10a444792894 100644 --- a/scripts/cmake/test/AddTest.cmake +++ b/scripts/cmake/test/AddTest.cmake @@ -112,6 +112,9 @@ function (AddTest) set(AddTest_WRAPPER_ARGS ${AddTest_WRAPPER_ARGS} --mca btl_openib_allow_ib 1) endif() set(WRAPPER_COMMAND ${MPIRUN_TOOL_PATH}) + if("${AddTest_WRAPPER_ARGS}" MATCHES "-np;([0-9]*)") + set(MPI_PROCESSORS ${CMAKE_MATCH_1}) + endif() else() message(STATUS "ERROR: mpirun was not found but is required for ${AddTest_NAME}!") return() @@ -266,6 +269,9 @@ Use six arguments version of AddTest with absolute and relative tolerances") endif() set_tests_properties(${TEST_NAME} PROPERTIES ENVIRONMENT "PYTHONPATH=${PYTHONPATH}") endif() + if(DEFINED MPI_PROCESSORS) + set_tests_properties(${TEST_NAME} PROPERTIES PROCESSORS ${MPI_PROCESSORS}) + endif() if(TARGET ${AddTest_EXECUTABLE}) add_dependencies(ctest ${AddTest_EXECUTABLE})