1 if(enable_smpi AND enable_smpi_MPICH3_testsuite)
3 set(CMAKE_C_FLAGS "-include ${CMAKE_HOME_DIRECTORY}/include/smpi/smpi_main.h")
5 set(CMAKE_C_COMPILER "${CMAKE_BINARY_DIR}/smpi_script/bin/smpicc")
6 set(CMAKE_Fortran_COMPILER "${CMAKE_BINARY_DIR}/smpi_script/bin/smpiff")
9 set(MPICH_FLAGS "-DHAVE_STDLIB_H=1 -DHAVE_UNISTD_H=1 -DHAVE_STRING_H=1 -DUSE_STDARG=1 -DHAVE_LONG_DOUBLE=1 -DHAVE_PROTOTYPES=1 -DHAVE_SIGNAL_H=1 -DHAVE_SIGACTION=1 -DHAVE_SLEEP=1 -DHAVE_SYSCONF=1 -Wno-error=unused-variable")
10 include_directories(BEFORE "${CMAKE_HOME_DIRECTORY}/include/smpi")
11 include_directories("${CMAKE_CURRENT_SOURCE_DIR}/../include/")
13 foreach(file accfence1 accfence2_am accfence2 accpscw1 allocmem epochtest getfence1 getgroup manyrma3 nullpscw lockcontention lockopts contig_displ
14 putfence1 putfidx putpscw1 test1_am test1 test1_dt test2_am test2 test3 test3_am test4 test4_am test5_am test5 transpose1 transpose2 lockcontention2
15 transpose3 transpose4 transpose5 transpose6 transpose7 window_creation selfrma locknull win_info
16 at_complete acc-pairtype manyget large-small-acc lock_dt win_dynamic_acc fetch_and_op flush
17 lock_nested winname attrorderwin baseattrwin fkeyvalwin strided_acc_indexed strided_getacc_indexed
18 lockall_dt lockall_dt_flushall lock_dt_flush lockall_dt_flush lockall_dt_flushlocalall lockall_dt_flushlocal lock_dt_flushlocal
19 strided_acc_onelock strided_get_indexed strided_putget_indexed contention_put contention_putget)
20 # not compiled files: acc-loc adlb_mimic1 badrma compare_and_swap contention_put
21 # contention_putget contig_displ fence_shm fetchandadd_am fetchandadd fetchandadd_tree_am fetchandadd_tree
22 # fkeyvalwin get_acc_local get_accumulate linked_list_bench_lock_all
23 # linked_list_bench_lock_excl linked_list_bench_lock_shr linked_list linked_list_fop linked_list_lockall
24 # manyrma2 mcs-mutex mixedsync mutex_bench lockcontention3
25 # pscw_ordering put_base put_bottom req_example reqops rmanull rmazero rma-contig selfrma
26 # strided_getacc_indexed_shared
27 # win_flavors win_shared win_shared_noncontig win_shared_noncontig_put
28 # win_large_shm win_zero wintest get-struct atomic_rmw_fop atomic_rmw_gacc rget-unlock atomic_get atomic_rmw_cas
29 # win_shared_zerobyte aint derived-acc-flush_local large-acc-flush_local
31 #racc_local_comp rput_local_comp win_shared_create win_shared_put_flush_get win_shared_rma_flush_load
33 add_executable(${file} ${file}.c)
34 target_link_libraries(${file} simgrid mtest_c)
35 set_target_properties(${file} PROPERTIES COMPILE_FLAGS "${MPICH_FLAGS}")
38 add_executable(transpose3_shm transpose3.c)
39 target_link_libraries(transpose3_shm simgrid mtest_c)
40 set_target_properties(transpose3_shm PROPERTIES COMPILE_FLAGS "${MPICH_FLAGS} -DUSE_WIN_ALLOCATE")
43 if (enable_smpi_MPICH3_testsuite AND HAVE_RAW_CONTEXTS)
44 ADD_TEST(test-smpi-mpich3-rma-raw ${CMAKE_COMMAND} -E chdir ${CMAKE_BINARY_DIR}/teshsuite/smpi/mpich3-test/rma ${PERL_EXECUTABLE} ${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/runtests ${TESH_OPTION} -mpiexec=${CMAKE_BINARY_DIR}/smpi_script/bin/smpirun -srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/rma -tests=testlist -execarg=--cfg=contexts/factory:raw -execarg=--cfg=smpi/privatize-global-variables:${HAVE_PRIVATIZATION})
45 SET_TESTS_PROPERTIES(test-smpi-mpich3-rma-raw PROPERTIES PASS_REGULAR_EXPRESSION "tests passed!")
48 foreach(file accfence1 accfence2_am accfence2 accpscw1 allocmem epochtest getfence1 getgroup manyrma3 nullpscw
49 putfence1 putfidx putpscw1 test1_am test1 test1_dt test2_am test2 test3 test5_am test5 transpose1 transpose2
50 transpose3 transpose6 transpose7 window_creation
51 acc-loc adlb_mimic1 attrorderwin badrma baseattrwin compare_and_swap contention_put contention_putget
52 contig_displ fence_shm fetchandadd_am fetchandadd fetchandadd_tree_am fetchandadd_tree fetch_and_op
53 fkeyvalwin flush get_acc_local get_accumulate linked_list_bench_lock_all linked_list_bench_lock_excl
54 linked_list_bench_lock_shr linked_list linked_list_fop linked_list_lockall lockcontention2 lockcontention3
55 lockcontention locknull lockopts manyrma2 mcs-mutex mixedsync mutex_bench pscw_ordering put_base put_bottom
56 req_example reqops rmanull rmazero rma-contig selfrma strided_acc_indexed strided_acc_onelock
57 strided_acc_subarray strided_getacc_indexed strided_getacc_indexed_shared strided_get_indexed
58 strided_putget_indexed strided_putget_indexed_shared test3_am test4_am test4 transpose4 transpose5 wincall
59 win_dynamic_acc win_flavors win_info winname win_shared win_shared_noncontig win_shared_noncontig_put
60 win_large_shm win_zero wintest win_shared_zerobyte get-struct
61 at_complete atomic_rmw_fop atomic_rmw_cas atomic_rmw_gacc atomic_get aint acc-pairtype manyget large-small-acc
62 rget-unlock overlap_wins_rma lock_nested derived-acc-flush_local large-acc-flush_local lockall_dt lockall_dt_flushall
63 lockall_dt_flush nb_test lockall_dt_flushlocal lockall_dt_flushlocalall lock_contention_dt lock_dt lock_dt_flush lock_dt_flushlocal
64 racc_local_comp rput_local_comp win_shared_create win_shared_put_flush_get win_shared_rma_flush_load
66 set(examples_src ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/${file}.c)
69 set(examples_src ${examples_src} PARENT_SCOPE)
70 set(txt_files ${txt_files} ${CMAKE_CURRENT_SOURCE_DIR}/testlist
71 ${CMAKE_CURRENT_SOURCE_DIR}/mcs-mutex.h
72 ${CMAKE_CURRENT_SOURCE_DIR}/squelch.h PARENT_SCOPE)