From 3b84f2ca2a8d124c4d0c99c44a0f4ef7fac0d855 Mon Sep 17 00:00:00 2001 From: Frederic Suter Date: Tue, 26 Apr 2016 22:04:02 +0200 Subject: [PATCH 1/1] couple cleanups --- CMakeLists.txt | 172 ++++++++++++++----------------- tools/cmake/DefinePackages.cmake | 31 ++---- tools/cmake/Tests.cmake | 74 ++++++------- 3 files changed, 114 insertions(+), 163 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index fa02471cee..eced82507b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -16,63 +16,55 @@ endif() ## ## Check the C/C++ standard that we need ## See also tools/cmake/GCCFlags.cmake that sets our paranoid warning flags -if (MSVC) - message("-- You are compiling SimGrid with MicroSoft Visual C. Good luck.") - - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D_SCL_SECURE_NO_WARNINGS") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_SCL_SECURE_NO_WARNINGS") -else() # gcc or clang - INCLUDE(CheckCCompilerFlag) - CHECK_C_COMPILER_FLAG(-fstack-cleaner HAVE_C_STACK_CLEANER) - - ## Request full debugging flags - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g3") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3") - set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -g") - - if (CMAKE_COMPILER_IS_GNUCC) - if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.7") - message(FATAL_ERROR - "SimGrid needs at least g++ version 4.7 to compile but you have ${CMAKE_CXX_COMPILER_VERSION}." - "You need a sufficient support of c++11 to compile SimGrid.") - endif() +INCLUDE(CheckCCompilerFlag) +CHECK_C_COMPILER_FLAG(-fstack-cleaner HAVE_C_STACK_CLEANER) + +## Request full debugging flags +set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g3") +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3") +set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -g") + +if (CMAKE_COMPILER_IS_GNUCC) + if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.7") + message(FATAL_ERROR + "SimGrid needs at least g++ version 4.7 to compile but you have ${CMAKE_CXX_COMPILER_VERSION}." + "You need a sufficient support of c++11 to compile SimGrid.") endif() +endif() - ## We need a decent support of the c++11 standard - include(CheckCXXCompilerFlag) - CHECK_CXX_COMPILER_FLAG("-std=gnu++11" COMPILER_SUPPORTS_CXX11) - if(COMPILER_SUPPORTS_CXX11) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11") - else() - message(FATAL_ERROR - "The compiler ${CMAKE_CXX_COMPILER} (v${CMAKE_CXX_COMPILER_VERSION}) has no C++11 support. " - "Please use a decent C++ compiler.") - endif() +## We need a decent support of the c++11 standard +include(CheckCXXCompilerFlag) +CHECK_CXX_COMPILER_FLAG("-std=gnu++11" COMPILER_SUPPORTS_CXX11) +if(COMPILER_SUPPORTS_CXX11) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11") +else() + message(FATAL_ERROR + "The compiler ${CMAKE_CXX_COMPILER} (v${CMAKE_CXX_COMPILER_VERSION}) has no C++11 support. " + "Please use a decent C++ compiler.") +endif() - ### And we need C11 standard, too - include(CheckCCompilerFlag) - CHECK_C_COMPILER_FLAG("-std=gnu11" COMPILER_SUPPORTS_C11) - if(COMPILER_SUPPORTS_C11) - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu11") - else() - message(FATAL_ERROR - "The compiler ${CMAKE_C_COMPILER} (v${CMAKE_C_COMPILER_VERSION}) has no C11 support. " - "Please use a decent C compiler " - "(note that c++11 support of ${CMAKE_CXX_COMPILER} seems ok).") - endif() - if(APPLE AND (CMAKE_C_COMPILER_VERSION VERSION_LESS "4.6")) - ### gcc 4.[1-5] cannot compile ucontext on OSX - message(STATUS "Ucontext can't be used with this version of gcc (must be greater than 4.5)") - set(HAVE_UCONTEXT_H 0) - endif() -endif() # NOT MSVC +### And we need C11 standard, too +include(CheckCCompilerFlag) +CHECK_C_COMPILER_FLAG("-std=gnu11" COMPILER_SUPPORTS_C11) +if(COMPILER_SUPPORTS_C11) + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu11") +else() + message(FATAL_ERROR + "The compiler ${CMAKE_C_COMPILER} (v${CMAKE_C_COMPILER_VERSION}) has no C11 support. " + "Please use a decent C compiler " + "(note that c++11 support of ${CMAKE_CXX_COMPILER} seems ok).") +endif() +if(APPLE AND (CMAKE_C_COMPILER_VERSION VERSION_LESS "4.6")) + ### gcc 4.[1-5] cannot compile ucontext on OSX + message(STATUS "Ucontext can't be used with this version of gcc (must be greater than 4.5)") + set(HAVE_UCONTEXT_H 0) +endif() ### SMPI vs. Fortran if ((NOT DEFINED enable_smpi OR enable_smpi) AND NOT APPLE) # smpi is enabled by default - # Call enable_language(Fortran) in order to load the build rules for - # this language, needed by teshsuite/smpi/mpich-test/. Use - # CMAKE_FORCE_Fortran_COMPILER to bypass checks for a working - # compiler (smpiff don't exist at configure time). + # Call enable_language(Fortran) in order to load the build rules for this language, needed by + # teshsuite/smpi/mpich-test/. Use CMAKE_FORCE_Fortran_COMPILER to bypass checks for a working compiler (smpiff + # doesn't exist at configure time). include(CMakeForceCompiler) if(NOT COMMAND CMAKE_FORCE_Fortran_COMPILER) MACRO(CMAKE_FORCE_Fortran_COMPILER compiler id) @@ -126,8 +118,7 @@ else() endif() endif() -execute_process(COMMAND ${CMAKE_LINKER} --version - OUTPUT_VARIABLE LINKER_VERSION) +execute_process(COMMAND ${CMAKE_LINKER} --version OUTPUT_VARIABLE LINKER_VERSION) string(REGEX MATCH "[0-9].[0-9]*" LINKER_VERSION "${LINKER_VERSION}") ### Find programs and paths @@ -164,14 +155,12 @@ ELSE() ENDIF() if(WIN32) - set(CMAKE_INCLUDE_WIN "${CMAKE_C_COMPILER}") set(CMAKE_LIB_WIN "${CMAKE_C_COMPILER}") string(REGEX REPLACE "/bin/gcc.*" "/include" CMAKE_INCLUDE_WIN "${CMAKE_INCLUDE_WIN}") string(REGEX REPLACE "/bin/gcc.*" "/lib" CMAKE_LIB_WIN "${CMAKE_LIB_WIN}") set(INCLUDES ${INCLUDES} ${CMAKE_INCLUDE_WIN}) unset(CMAKE_INCLUDE_WIN) - endif() include_directories(${INCLUDES}) @@ -392,41 +381,38 @@ endif() ### Check for GNU dynamic linker CHECK_INCLUDE_FILE("dlfcn.h" HAVE_DLFCN_H) if (HAVE_DLFCN_H) - execute_process(COMMAND ${CMAKE_C_COMPILER} ${CMAKE_HOME_DIRECTORY}/tools/cmake/test_prog/prog_gnu_dynlinker.c -ldl -o test_gnu_ld - WORKING_DIRECTORY ${CMAKE_BINARY_DIR} - OUTPUT_VARIABLE HAVE_GNU_LD_compil - ) - if(HAVE_GNU_LD_compil) - set(HAVE_GNU_LD 0) - message(STATUS "Warning: test program toward GNU ld failed to compile:") - message(STATUS "${HAVE_GNU_LD_comp_output}") + execute_process(COMMAND ${CMAKE_C_COMPILER} ${CMAKE_HOME_DIRECTORY}/tools/cmake/test_prog/prog_gnu_dynlinker.c -ldl -o test_gnu_ld + WORKING_DIRECTORY ${CMAKE_BINARY_DIR} + OUTPUT_VARIABLE HAVE_GNU_LD_compil + ) + if(HAVE_GNU_LD_compil) + set(HAVE_GNU_LD 0) + message(STATUS "Warning: test program toward GNU ld failed to compile:") + message(STATUS "${HAVE_GNU_LD_comp_output}") + else() + execute_process(COMMAND ./test_gnu_ld + WORKING_DIRECTORY ${CMAKE_BINARY_DIR} + RESULT_VARIABLE HAVE_GNU_LD_run + OUTPUT_VARIABLE var_exec + ) + + if(NOT HAVE_GNU_LD_run) + set(HAVE_GNU_LD 1) + message(STATUS "We are using GNU dynamic linker") else() - - execute_process(COMMAND ./test_gnu_ld - WORKING_DIRECTORY ${CMAKE_BINARY_DIR} - RESULT_VARIABLE HAVE_GNU_LD_run - OUTPUT_VARIABLE var_exec - ) - - if(NOT HAVE_GNU_LD_run) - set(HAVE_GNU_LD 1) - message(STATUS "We are using GNU dynamic linker") - else() - set(HAVE_GNU_LD 0) - message(STATUS "Warning: error while checking for GNU ld:") - message(STATUS "Test output: '${var_exec}'") - message(STATUS "Exit status: ${HAVE_GNU_LD_run}") - endif() - file(REMOVE test_gnu_ld) + set(HAVE_GNU_LD 0) + message(STATUS "Warning: error while checking for GNU ld:") + message(STATUS "Test output: '${var_exec}'") + message(STATUS "Exit status: ${HAVE_GNU_LD_run}") endif() + file(REMOVE test_gnu_ld) + endif() endif() - #-------------------------------------------------------------------------------------------------- ### Initialize of CONTEXT THREADS set(HAVE_THREAD_CONTEXTS 0) - if(HAVE_PTHREAD) ### Test that we have a way to create semaphores @@ -469,7 +455,6 @@ if(HAVE_PTHREAD) endif() endif() file(REMOVE sem_open) - else() set(HAVE_SEM_OPEN 0) endif() @@ -523,7 +508,6 @@ if(HAVE_PTHREAD) message("-- Support for thread context factory ok.") endif() - set(HAVE_UCONTEXT_CONTEXTS 0) if(NOT HAVE_UCONTEXT_H) message("-- No ucontext factory: not found.") @@ -533,7 +517,7 @@ elseif(APPLE) else() try_compile(compile_makecontext ${CMAKE_BINARY_DIR} ${CMAKE_HOME_DIRECTORY}/tools/cmake/test_prog/prog_makecontext.c OUTPUT_VARIABLE compile_makecontext_output) - + #If can have both context if(compile_makecontext) set(HAVE_UCONTEXT_CONTEXTS 1) @@ -611,14 +595,14 @@ if(EXISTS ${CMAKE_HOME_DIRECTORY}/.git/) OUTPUT_VARIABLE GIT_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE) message(STATUS "Git version: ${GIT_VERSION}") - + execute_process(COMMAND git --git-dir=${CMAKE_HOME_DIRECTORY}/.git log -n 1 --pretty=format:%ai . WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}/.git/ OUTPUT_VARIABLE GIT_DATE OUTPUT_STRIP_TRAILING_WHITESPACE) message(STATUS "Git date: ${GIT_DATE}") string(REGEX REPLACE " .*" "" GIT_VERSION "${GIT_VERSION}") - + execute_process(COMMAND git --git-dir=${CMAKE_HOME_DIRECTORY}/.git log --pretty=format:%H -1 WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}/.git/ OUTPUT_VARIABLE SIMGRID_GITHASH @@ -628,7 +612,6 @@ elseif(EXISTS ${CMAKE_HOME_DIRECTORY}/.gitversion) FILE(STRINGS ${CMAKE_HOME_DIRECTORY}/.gitversion GIT_VERSION) endif() - ### Generate the required headers and scripts ############################################# @@ -638,10 +621,9 @@ endif() # So we include only where needed, and compile with -Wundef to notice the missing includes. # But cmake sometimes defines to the empty definition (#define HAVE_VALGRIND_H). # So we have to make sure that everything got a decent value before generating the files. -foreach(var HAVE_EXECINFO_H HAVE_FUTEX_H HAVE_GETDTABLESIZE HAVE_GETTIMEOFDAY HAVE_MMAP - HAVE_NANOSLEEP HAVE_POPEN HAVE_POSIX_GETTIME HAVE_PROCESS_VM_READV HAVE_SIGNAL_H - HAVE_SYS_PARAM_H HAVE_SYS_SYSCTL_H HAVE_SYSCONF HAVE_UCONTEXT_H HAVE_UNISTD_H - HAVE_VALGRIND_H HAVE_VASPRINTF) +foreach(var HAVE_EXECINFO_H HAVE_FUTEX_H HAVE_GETDTABLESIZE HAVE_GETTIMEOFDAY HAVE_MMAP HAVE_NANOSLEEP HAVE_POPEN + HAVE_POSIX_GETTIME HAVE_PROCESS_VM_READV HAVE_SIGNAL_H HAVE_SYS_PARAM_H HAVE_SYS_SYSCTL_H HAVE_SYSCONF + HAVE_UCONTEXT_H HAVE_UNISTD_H HAVE_VALGRIND_H HAVE_VASPRINTF) if(${var}) set(${var} 1) else() @@ -706,9 +688,7 @@ set(generated_headers_to_install ${CMAKE_CURRENT_BINARY_DIR}/include/simgrid_config.h ) -set(generated_headers - ${CMAKE_CURRENT_BINARY_DIR}/src/internal_config.h - ) +set(generated_headers ${CMAKE_CURRENT_BINARY_DIR}/src/internal_config.h ) set(generated_files_to_clean ${generated_headers} @@ -737,7 +717,7 @@ if(NOT "${CMAKE_BINARY_DIR}" STREQUAL "${CMAKE_HOME_DIRECTORY}") configure_file(${CMAKE_HOME_DIRECTORY}/examples/smpi/replay/actions_gather.txt ${CMAKE_BINARY_DIR}/examples/smpi/replay/actions_gather.txt COPYONLY) configure_file(${CMAKE_HOME_DIRECTORY}/examples/smpi/replay/actions_allgatherv.txt ${CMAKE_BINARY_DIR}/examples/smpi/replay/actions_allgatherv.txt COPYONLY) configure_file(${CMAKE_HOME_DIRECTORY}/teshsuite/smpi/hostfile ${CMAKE_BINARY_DIR}/teshsuite/smpi/hostfile COPYONLY) - + configure_file(${CMAKE_HOME_DIRECTORY}/examples/smpi/replay_multiple/description_file ${CMAKE_BINARY_DIR}/examples/smpi/replay_multiple/description_file COPYONLY) configure_file(${CMAKE_HOME_DIRECTORY}/examples/smpi/replay_multiple/README ${CMAKE_BINARY_DIR}/examples/smpi/replay_multiple/README COPYONLY) configure_file(${CMAKE_HOME_DIRECTORY}/examples/smpi/replay_multiple/smpi_replay.txt ${CMAKE_BINARY_DIR}/examples/smpi/replay_multiple/smpi_replay.txt COPYONLY) diff --git a/tools/cmake/DefinePackages.cmake b/tools/cmake/DefinePackages.cmake index 683a623f27..6924941e92 100644 --- a/tools/cmake/DefinePackages.cmake +++ b/tools/cmake/DefinePackages.cmake @@ -270,20 +270,14 @@ set(XBT_SRC src/xbt/xbt_strbuff.c src/xbt/xbt_virtu.c src/xbt_modinter.h - ) if(HAVE_MMALLOC) - set(XBT_SRC - ${XBT_SRC} - src/xbt/mmalloc/mm.c - ) + set(XBT_SRC ${XBT_SRC} src/xbt/mmalloc/mm.c ) endif() -set(NS3_SRC - src/surf/network_ns3.cpp - src/surf/ns3/ns3_simulator.cc - ) +set(NS3_SRC src/surf/network_ns3.cpp + src/surf/ns3/ns3_simulator.cc ) set(SURF_SRC src/surf/AsImpl.cpp @@ -331,13 +325,12 @@ set(SURF_SRC src/surf/ptask_L07.cpp ) -set(SIMIX_GENERATED_SRC - src/simix/popping_generated.cpp - ) +set(SIMIX_GENERATED_SRC src/simix/popping_generated.cpp ) set(SIMIX_SRC src/simix/libsmx.cpp src/simix/smx_context.cpp src/simix/Context.cpp + src/simix/RawContext.cpp src/simix/smx_deployment.cpp src/simix/smx_environment.cpp src/simix/smx_global.cpp @@ -352,17 +345,6 @@ set(SIMIX_SRC ${SIMIX_GENERATED_SRC} ) -# Don't try to compile our inline assembly with MSVC -if (MSVC) - set(EXTRA_DIST - ${EXTRA_DIST} - src/simix/RawContext.cpp) -else() - set(SIMIX_SRC - ${SIMIX_SRC} - src/simix/RawContext.cpp) -endif() - # Boost context may not be available if (HAVE_BOOST_CONTEXTS) set(SIMIX_SRC @@ -620,8 +602,7 @@ set(MC_SRC src/mc/Transition.hpp ) -set(MC_SIMGRID_MC_SRC - src/mc/simgrid_mc.cpp) +set(MC_SIMGRID_MC_SRC src/mc/simgrid_mc.cpp) set(headers_to_install include/msg/msg.h diff --git a/tools/cmake/Tests.cmake b/tools/cmake/Tests.cmake index fae88f1e73..65c928f59c 100644 --- a/tools/cmake/Tests.cmake +++ b/tools/cmake/Tests.cmake @@ -46,52 +46,42 @@ MACRO(ADD_TESH_FACTORIES NAME FACTORIES) ENDFOREACH() ENDMACRO() -#IF(NOT enable_memcheck) - ### GENERIC ### - ### MC ### - IF(HAVE_MC) - ADD_TESH_FACTORIES(mc-bugged1 "ucontext;raw" --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/mc --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/mc bugged1.tesh) - ADD_TESH_FACTORIES(mc-bugged2 "ucontext;raw" --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/mc --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/mc bugged2.tesh) - IF(HAVE_UCONTEXT_CONTEXTS AND PROCESSOR_x86_64) # liveness model-checking works only on 64bits (for now ...) - ADD_TESH(mc-bugged1-liveness-ucontext --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/mc --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/mc bugged1_liveness.tesh) - ADD_TESH(mc-bugged1-liveness-ucontext-sparse --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/mc --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/mc bugged1_liveness_sparse.tesh) - ADD_TESH(mc-bugged1-liveness-visited-ucontext --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/mc --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/mc bugged1_liveness_visited.tesh) - ADD_TESH(mc-bugged1-liveness-visited-ucontext-sparse --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/mc --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/mc bugged1_liveness_visited_sparse.tesh) - if(HAVE_C_STACK_CLEANER) - # This test checks if the stack cleaner is making a difference: - add_test(mc-bugged1-liveness-stack-cleaner ${CMAKE_HOME_DIRECTORY}/examples/msg/mc/bugged1_liveness_stack_cleaner ${CMAKE_HOME_DIRECTORY}/examples/msg/mc/ ${CMAKE_BINARY_DIR}/examples/msg/mc/) - endif() - ENDIF() +IF(enable_java) + IF(WIN32) + SET(TESH_CLASSPATH "${CMAKE_BINARY_DIR}/examples/java/\;${CMAKE_BINARY_DIR}/teshsuite/java/\;${SIMGRID_JAR}") + STRING(REPLACE "\;" "§" TESH_CLASSPATH "${TESH_CLASSPATH}") + ELSE() + SET(TESH_CLASSPATH "${CMAKE_BINARY_DIR}/examples/java/:${CMAKE_BINARY_DIR}/teshsuite/java/:${SIMGRID_JAR}") ENDIF() +ENDIF() - ### SMPI ### - IF(enable_smpi_MPICH3_testsuite AND SMPI_FORTRAN AND HAVE_THREAD_CONTEXTS) - ADD_TEST(test-smpi-mpich3-thread-f77 ${CMAKE_COMMAND} -E chdir ${CMAKE_BINARY_DIR}/teshsuite/smpi/mpich3-test/f77/ ${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/f77/ -tests=testlist -execarg=--cfg=contexts/stack_size:8000 -execarg=--cfg=smpi/privatize-global-variables:${HAVE_PRIVATIZATION}) - SET_TESTS_PROPERTIES(test-smpi-mpich3-thread-f77 PROPERTIES PASS_REGULAR_EXPRESSION "tests passed!") - ADD_TEST(test-smpi-mpich3-thread-f90 ${CMAKE_COMMAND} -E chdir ${CMAKE_BINARY_DIR}/teshsuite/smpi/mpich3-test/f90/ ${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/f90/ -tests=testlist -execarg=--cfg=smpi/privatize-global-variables:${HAVE_PRIVATIZATION}) - SET_TESTS_PROPERTIES(test-smpi-mpich3-thread-f90 PROPERTIES PASS_REGULAR_EXPRESSION "tests passed!") +IF(HAVE_MC) + ADD_TESH_FACTORIES(mc-bugged1 "ucontext;raw" --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/mc --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/mc bugged1.tesh) + ADD_TESH_FACTORIES(mc-bugged2 "ucontext;raw" --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/mc --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/mc bugged2.tesh) + IF(HAVE_UCONTEXT_CONTEXTS AND PROCESSOR_x86_64) # liveness model-checking works only on 64bits (for now ...) + ADD_TESH(mc-bugged1-liveness-ucontext --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/mc --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/mc bugged1_liveness.tesh) + ADD_TESH(mc-bugged1-liveness-ucontext-sparse --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/mc --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/mc bugged1_liveness_sparse.tesh) + ADD_TESH(mc-bugged1-liveness-visited-ucontext --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/mc --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/mc bugged1_liveness_visited.tesh) + ADD_TESH(mc-bugged1-liveness-visited-ucontext-sparse --setenv bindir=${CMAKE_BINARY_DIR}/examples/msg/mc --cd ${CMAKE_HOME_DIRECTORY}/examples/msg/mc bugged1_liveness_visited_sparse.tesh) + IF(HAVE_C_STACK_CLEANER) + # This test checks if the stack cleaner is making a difference: + ADD_TEST(mc-bugged1-liveness-stack-cleaner ${CMAKE_HOME_DIRECTORY}/examples/msg/mc/bugged1_liveness_stack_cleaner ${CMAKE_HOME_DIRECTORY}/examples/msg/mc/ ${CMAKE_BINARY_DIR}/examples/msg/mc/) + ENDIF() ENDIF() +ENDIF() - ## BINDINGS ## - ### LUA ### - IF(HAVE_LUA) - # Tests testing simulation from C but using lua for platform files. Executed like this - # ~$ ./masterslave platform.lua deploy.lua - ADD_TESH(lua-platform-masterslave --setenv srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/lua --cd ${CMAKE_BINARY_DIR}/examples/lua ${CMAKE_HOME_DIRECTORY}/teshsuite/lua/lua_platforms.tesh) - SET_TESTS_PROPERTIES(lua-platform-masterslave PROPERTIES ENVIRONMENT "LUA_CPATH=${CMAKE_BINARY_DIR}/examples/lua/?.so") - ENDIF() +IF(enable_smpi_MPICH3_testsuite AND SMPI_FORTRAN AND HAVE_THREAD_CONTEXTS) + ADD_TEST(test-smpi-mpich3-thread-f77 ${CMAKE_COMMAND} -E chdir ${CMAKE_BINARY_DIR}/teshsuite/smpi/mpich3-test/f77/ ${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/f77/ -tests=testlist -execarg=--cfg=contexts/stack_size:8000 -execarg=--cfg=smpi/privatize-global-variables:${HAVE_PRIVATIZATION}) + SET_TESTS_PROPERTIES(test-smpi-mpich3-thread-f77 PROPERTIES PASS_REGULAR_EXPRESSION "tests passed!") + ADD_TEST(test-smpi-mpich3-thread-f90 ${CMAKE_COMMAND} -E chdir ${CMAKE_BINARY_DIR}/teshsuite/smpi/mpich3-test/f90/ ${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/f90/ -tests=testlist -execarg=--cfg=smpi/privatize-global-variables:${HAVE_PRIVATIZATION}) + SET_TESTS_PROPERTIES(test-smpi-mpich3-thread-f90 PROPERTIES PASS_REGULAR_EXPRESSION "tests passed!") +ENDIF() - ### JAVA ### - IF(enable_java) - IF(WIN32) - SET(TESH_CLASSPATH "${CMAKE_BINARY_DIR}/examples/java/\;${CMAKE_BINARY_DIR}/teshsuite/java/\;${SIMGRID_JAR}") - STRING(REPLACE "\;" "§" TESH_CLASSPATH "${TESH_CLASSPATH}") - ELSE() - SET(TESH_CLASSPATH "${CMAKE_BINARY_DIR}/examples/java/:${CMAKE_BINARY_DIR}/teshsuite/java/:${SIMGRID_JAR}") - ENDIF() - ENDIF() -#ENDIF() +IF(HAVE_LUA) + # Tests testing simulation from C but using lua for platform files. Executed like this + # ~$ ./masterslave platform.lua deploy.lua + ADD_TESH(lua-platform-masterslave --setenv srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/lua --cd ${CMAKE_BINARY_DIR}/examples/lua ${CMAKE_HOME_DIRECTORY}/teshsuite/lua/lua_platforms.tesh) + SET_TESTS_PROPERTIES(lua-platform-masterslave PROPERTIES ENVIRONMENT "LUA_CPATH=${CMAKE_BINARY_DIR}/examples/lua/?.so") +ENDIF() - ## OTHER ## ADD_TEST(testall ${CMAKE_BINARY_DIR}/testall) - -- 2.20.1