Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
47d8b72e13f13495533fc1465a5d21470fddc938
[simgrid.git] / teshsuite / smpi / mpich3-test / rma / CMakeLists.txt
1 if(enable_smpi AND enable_smpi_MPICH3_testsuite)
2   if(WIN32)
3     set(CMAKE_C_FLAGS "-include ${CMAKE_HOME_DIRECTORY}/include/smpi/smpi_main.h")
4   else()
5     set(CMAKE_C_COMPILER "${CMAKE_BINARY_DIR}/smpi_script/bin/smpicc")
6     set(CMAKE_Fortran_COMPILER "${CMAKE_BINARY_DIR}/smpi_script/bin/smpiff")
7   endif()
8
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/")
12
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 req_example rmanull rmazero badrma
17           lock_nested winname attrorderwin baseattrwin fkeyvalwin strided_acc_indexed strided_getacc_indexed compare_and_swap
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      adlb_mimic1 lock_contention_dt acc-loc get_acc_local get_accumulate put_base put_bottom
21      linked_list_bench_lock_all linked_list_bench_lock_excl manyrma2 pscw_ordering rma-contig get-struct
22      rput_local_comp racc_local_comp rget-testall win_shared)
23     # fence_shm fetchandadd_am fetchandadd fetchandadd_tree_am fetchandadd_tree 
24     #  linked_list_bench_lock_shr linked_list linked_list_fop linked_list_lockall 
25     #   mcs-mutex mixedsync mutex_bench lockcontention3 reqops
26     # strided_getacc_indexed_shared rget-unlock 
27     # win_flavors  win_shared_noncontig win_shared_noncontig_put 
28     # win_large_shm win_zero wintest  atomic_rmw_fop atomic_rmw_gacc  atomic_get atomic_rmw_cas
29     # win_shared_zerobyte aint derived-acc-flush_local large-acc-flush_local
30     #  win_shared_create win_shared_put_flush_get win_shared_rma_flush_load
31     # wrma_flush_get
32     add_executable(${file} ${file}.c)
33     target_link_libraries(${file} simgrid mtest_c)
34     set_target_properties(${file} PROPERTIES COMPILE_FLAGS "${MPICH_FLAGS}")
35   endforeach()
36
37     add_executable(transpose3_shm transpose3.c)
38     target_link_libraries(transpose3_shm simgrid mtest_c)
39     set_target_properties(transpose3_shm PROPERTIES COMPILE_FLAGS "${MPICH_FLAGS} -DUSE_WIN_ALLOCATE")
40 endif()
41
42 if (enable_smpi_MPICH3_testsuite AND HAVE_RAW_CONTEXTS)
43   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 "-wrapper=${TESH_WRAPPER}" -mpiexec=${CMAKE_BINARY_DIR}/smpi_script/bin/smpirun -srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/mpich3-test/rma -tests=testlist -execarg=--cfg=contexts/factory:raw)
44   SET_TESTS_PROPERTIES(test-smpi-mpich3-rma-raw PROPERTIES PASS_REGULAR_EXPRESSION "tests passed!")
45   if (enable_thread_sanitizer)
46     SET_TESTS_PROPERTIES(test-smpi-mpich3-rma-raw PROPERTIES TIMEOUT 1500)
47   endif()
48 endif()
49
50 foreach(file accfence1 accfence2_am accfence2 accpscw1 allocmem epochtest getfence1 getgroup manyrma3 nullpscw
51           putfence1 putfidx putpscw1 test1_am test1 test1_dt test2_am test2 test3 test5_am test5 transpose1 transpose2
52           transpose3 transpose6 transpose7 window_creation
53           acc-loc adlb_mimic1 attrorderwin badrma baseattrwin compare_and_swap contention_put contention_putget 
54           contig_displ fence_shm fetchandadd_am fetchandadd fetchandadd_tree_am fetchandadd_tree fetch_and_op
55           fkeyvalwin flush get_acc_local get_accumulate linked_list_bench_lock_all linked_list_bench_lock_excl
56           linked_list_bench_lock_shr linked_list linked_list_fop linked_list_lockall lockcontention2 lockcontention3 
57           lockcontention locknull lockopts manyrma2 mcs-mutex mixedsync mutex_bench pscw_ordering put_base put_bottom 
58           req_example reqops rmanull rmazero rma-contig selfrma strided_acc_indexed strided_acc_onelock 
59           strided_acc_subarray strided_getacc_indexed strided_getacc_indexed_shared strided_get_indexed 
60           strided_putget_indexed strided_putget_indexed_shared test3_am test4_am test4 transpose4 transpose5 wincall 
61           win_dynamic_acc win_flavors win_info winname win_shared win_shared_noncontig win_shared_noncontig_put 
62           win_large_shm win_zero wintest win_shared_zerobyte get-struct
63           at_complete atomic_rmw_fop atomic_rmw_cas atomic_rmw_gacc atomic_get aint acc-pairtype manyget large-small-acc  
64           rget-unlock overlap_wins_rma lock_nested derived-acc-flush_local large-acc-flush_local lockall_dt lockall_dt_flushall
65           lockall_dt_flush nb_test lockall_dt_flushlocal lockall_dt_flushlocalall lock_contention_dt lock_dt lock_dt_flush lock_dt_flushlocal 
66           racc_local_comp rput_local_comp win_shared_create win_shared_put_flush_get win_shared_rma_flush_load
67           wrma_flush_get rget-testall)
68   set(examples_src  ${examples_src} ${CMAKE_CURRENT_SOURCE_DIR}/${file}.c)
69 endforeach()
70
71 set(examples_src  ${examples_src}                                           PARENT_SCOPE)
72 set(txt_files     ${txt_files}     ${CMAKE_CURRENT_SOURCE_DIR}/testlist  
73                                    ${CMAKE_CURRENT_SOURCE_DIR}/mcs-mutex.h
74                                    ${CMAKE_CURRENT_SOURCE_DIR}/squelch.h    PARENT_SCOPE)