11add_executable (mpi_basic_C basic.c)
22target_link_libraries (mpi_basic_C PRIVATE MPI::MPI_C)
3- add_test (NAME mpi_basic_C COMMAND mpi_basic_C)
3+ add_test (NAME MPIbasicC COMMAND mpi_basic_C)
4+ test_mpi_launcher(mpi_basic_C MPIbasicC 1)
45
56add_executable (mpi_version_C mpivers.c)
67target_link_libraries (mpi_version_C PRIVATE MPI::MPI_C)
7- add_test (NAME mpi_version_C COMMAND mpi_version_C)
8+ add_test (NAME MPIversionC COMMAND mpi_version_C)
9+ test_mpi_launcher(mpi_version_C MPIversionC 1)
810
911# --- Fortran MPI-3
1012
1113add_executable (mpi_basic_Fortran basic.f90)
1214target_link_libraries (mpi_basic_Fortran PRIVATE MPI::MPI_Fortran)
13- add_test (NAME mpi_basic_Fortran COMMAND mpi_basic_Fortran)
15+ add_test (NAME MPIbasicFortran COMMAND mpi_basic_Fortran)
16+ test_mpi_launcher(mpi_basic_Fortran MPIbasicFortran 1)
1417
1518add_executable (mpi_version_Fortran mpivers.f90)
1619target_link_libraries (mpi_version_Fortran PRIVATE MPI::MPI_Fortran)
17- add_test (NAME mpi_version_Fortran COMMAND mpi_version_Fortran)
20+ add_test (NAME MPIversionFortran COMMAND mpi_version_Fortran)
21+ test_mpi_launcher(mpi_version_Fortran MPIversionFortran 1)
1822
1923# --- more than one MPI image
2024
2125add_executable (mpi_hello helloworld.f90)
2226target_link_libraries (mpi_hello PRIVATE MPI::MPI_Fortran)
23- add_test (NAME mpi_hello COMMAND mpi_hello)
24- set_property (TEST mpi_hello PROPERTY FIXTURES_SETUP mpi_fxt)
27+ add_test (NAME MPIhello COMMAND mpi_hello)
28+ test_mpi_launcher(mpi_hello MPIhello ${MPIEXEC_MAX_NUMPROCS} )
29+ set_property (TEST MPIhello PROPERTY FIXTURES_SETUP mpi_fxt)
2530
2631# --- actual message passing
2732
@@ -30,37 +35,17 @@ target_link_libraries(mpi_pass PRIVATE MPI::MPI_Fortran)
3035
3136if (MPIEXEC_MAX_NUMPROCS GREATER_EQUAL 2)
3237
33- add_test (NAME mpi_pass COMMAND mpi_pass)
34- set_property (TEST mpi_pass PROPERTY FIXTURES_REQUIRED mpi_fxt)
38+ add_test (NAME MPIpass COMMAND mpi_pass)
39+ test_mpi_launcher(mpi_pass MPIpass 2)
40+ set_property (TEST MPIpass PROPERTY FIXTURES_REQUIRED mpi_fxt)
3541
3642endif ()
3743
3844# --- test properties
3945
4046get_property (tests DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY TESTS)
4147
42- set_property (TEST ${tests} PROPERTY cpu_mpi)
43-
44- set_property (TEST ${tests} PROPERTY SKIP_REGULAR_EXPRESSION "No host list provided" )
45-
46- # convenience vars
47- set (single mpi_basic_C mpi_version_C mpi_basic_Fortran mpi_version_Fortran)
48- set (_m ${MPIEXEC_EXECUTABLE} ${MPIEXEC_NUMPROC_FLAG} )
49-
50- if (CMAKE_VERSION VERSION_GREATER_EQUAL 3.29)
51-
52- set_property (TEST ${single} PROPERTY TEST_LAUNCHER ${_m} 1)
53- set_property (TEST mpi_hello PROPERTY TEST_LAUNCHER ${_m} ${MPIEXEC_MAX_NUMPROCS} )
54- set_property (TEST mpi_pass PROPERTY TEST_LAUNCHER ${_m} 2)
55-
56- else ()
57-
58- set_property (TARGET ${single} PROPERTY CROSSCOMPILING_EMULATOR ${_m} 1)
59- set_property (TARGET mpi_hello PROPERTY CROSSCOMPILING_EMULATOR ${_m} ${MPIEXEC_MAX_NUMPROCS} )
60- set_property (TARGET mpi_pass PROPERTY CROSSCOMPILING_EMULATOR ${_m} 2)
61-
62- endif ()
63-
64- if (DEFINED mpi_tmpdir)
65- set_property (TEST ${tests} PROPERTY ENVIRONMENT TMPDIR=${mpi_tmpdir} )
66- endif ()
48+ set_tests_properties (${tests} PROPERTIES
49+ RESOURCE_LOCK mpi
50+ SKIP_REGULAR_EXPRESSION "No host list provided"
51+ )
0 commit comments