X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/05bdf500677b6406e385802991fe48cb168859a6..8e2e7ec8fe8054bcfb087492e8a9379508fa6e82:/buildtools/Cmake/AddTests.cmake diff --git a/buildtools/Cmake/AddTests.cmake b/buildtools/Cmake/AddTests.cmake index 792c96a63a..c5060126af 100644 --- a/buildtools/Cmake/AddTests.cmake +++ b/buildtools/Cmake/AddTests.cmake @@ -1,9 +1,27 @@ ### Be sure we can execut some launch file exec_program("chmod a=rwx ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh" OUTPUT_VARIABLE "OKITOKI") if(enable_smpi) - exec_program("chmod a=rwx ${PROJECT_DIRECTORY}/src/smpi/smpicc" OUTPUT_VARIABLE "OKITOKI") - exec_program("chmod a=rwx ${PROJECT_DIRECTORY}/src/smpi/smpirun" OUTPUT_VARIABLE "OKITOKI") + exec_program("chmod a=rwx ${CMAKE_BINARY_DIR}/bin/smpicc" OUTPUT_VARIABLE "OKITOKI") + exec_program("chmod a=rwx ${CMAKE_BINARY_DIR}/bin/smpirun" OUTPUT_VARIABLE "OKITOKI") endif(enable_smpi) + +if(enable_memcheck) + include(FindPerl) + exec_program("valgrind --version " OUTPUT_VARIABLE "VALGRIND_VERSION") + if(VALGRIND_VERSION AND PERL_EXECUTABLE) + string(REGEX MATCH "[0-9].[0-9].[0-9]" NEW_VALGRIND_VERSION "${VALGRIND_VERSION}") + if(NEW_VALGRIND_VERSION) + exec_program("${PROJECT_DIRECTORY}/buildtools/Cmake/generate_memcheck_tests.pl ${PROJECT_DIRECTORY} ${PROJECT_DIRECTORY}/buildtools/Cmake/AddTests.cmake > ${PROJECT_DIRECTORY}/buildtools/Cmake/memcheck_tests.cmake") + else(NEW_VALGRIND_VERSION) + set(enable_memcheck false) + message("Command valgrind not found --> enable_memcheck autoset to false.") + endif(NEW_VALGRIND_VERSION) + else(VALGRIND_VERSION AND PERL_EXECUTABLE) + set(enable_memcheck false) + message(FATAL_ERROR "Command valgrind or perl not found --> enable_memcheck autoset to false.") + endif(VALGRIND_VERSION AND PERL_EXECUTABLE) +endif(enable_memcheck) + ### For code coverage ### Set some variables SET(UPDATE_TYPE "svn") @@ -13,23 +31,11 @@ SET(DROP_LOCATION "/submit.php?project=${PROJECT_NAME}") SET(DROP_SITE_CDASH TRUE) SET(TRIGGER_SITE "http://cdash.inria.fr/CDash/cgi-bin/Submit-Random-TestingResults.cgi") SET(COVERAGE_COMMAND "${GCOV_PATH}/gcov") -#SET(VALGRIND_COMMAND "${VALGRIND_PATH}/valgrind") -#SET(MEMORYCHECK_COMMAND "${VALGRIND_PATH}/valgrind") -#set(MEMORYCHECK_COMMAND_OPTIONS "--trace-children=yes --leak-check=full --show-reachable=yes --track-origins=yes --read-var-info=no") -set(MEMORYCHECK_COMMAND_OPTIONS "--trace-children=yes --leak-check=full --show-reachable=yes --track-origins=yes --read-var-info=no --valgrind ${VALGRIND_PATH}") +set(MEMORYCHECK_COMMAND_OPTIONS "--trace-children=yes --leak-check=full --show-reachable=yes --track-origins=yes --read-var-info=no") SET(VALGRIND_COMMAND "${PROJECT_DIRECTORY}/buildtools/Cmake/my_valgrind.pl") SET(MEMORYCHECK_COMMAND "${PROJECT_DIRECTORY}/buildtools/Cmake/my_valgrind.pl") #If you use the --read-var-info option Memcheck will run more slowly but may give a more detailed description of any illegal address. -### Check 32bits or 64bits -INCLUDE (CheckTypeSize) -CHECK_TYPE_SIZE("long" SIZEOF_LONG) -IF(SIZEOF_LONG EQUAL 4) - SET(ARCH_32_BITS 1) -ELSE(SIZEOF_LONG EQUAL 4) - SET(ARCH_32_BITS 0) -ENDIF(SIZEOF_LONG EQUAL 4) - INCLUDE(CTest) ENABLE_TESTING() @@ -132,6 +138,7 @@ ADD_TEST(msg-priority ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/ex ADD_TEST(msg-properties ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg properties/msg_prop.tesh) ADD_TEST(msg-trace ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg trace/trace.tesh) ADD_TEST(msg-masterslave_cpu_ti ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg masterslave/masterslave_cpu_ti.tesh) +ADD_TEST(msg_icomms ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg/icomms peer.tesh) IF(HAVE_TRACING) ADD_TEST(tracing-ms ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg tracing/ms.tesh) @@ -180,8 +187,10 @@ ENDIF(${ARCH_32_BITS}) # simdag examples ADD_TEST(simdag-test_simdag ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/simdag test_simdag.tesh) ADD_TEST(simdag-test_simdag2 ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/simdag test_simdag2.tesh) +ADD_TEST(simdag-test_simdag_seq_access ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/simdag test_simdag_seq_access.tesh) ADD_TEST(simdag-test_prop ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/simdag properties/test_prop.tesh) ADD_TEST(simdag-metaxml_test ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/simdag metaxml/metaxml_test.tesh) +ADD_TEST(simdag-minmin_test ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/simdag/scheduling test_minmin.tesh) if(enable_smpi) # smpi examples @@ -199,8 +208,9 @@ endif(HAVE_GTNETS) # Lua examples if(HAVE_LUA) -ADD_TEST(lua-masterslave ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/lua master_slave.tesh) -ADD_TEST(lua-mult_matrix ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/lua mult_matrix.tesh) +ADD_TEST(lua-masterslave ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/lua master_slave.tesh) +ADD_TEST(lua-mult_matrix ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/lua mult_matrix.tesh) +ADD_TEST(lua-masterslave_bypass ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/lua master_slave_bypass.tesh) endif(HAVE_LUA) # Ruby examples @@ -212,16 +222,18 @@ endif(HAVE_RUBY) # END TESH TESTS +if(HAVE_MC) ADD_TEST(mc-bugged1 ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg/mc bugged1.tesh) ADD_TEST(mc-bugged2 ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg/mc bugged2.tesh) ADD_TEST(mc-centralized ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg/mc centralized.tesh) +endif(HAVE_MC) if(HAVE_JAVA) # java examples -ADD_TEST(java-basic ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh ${PROJECT_DIRECTORY}/examples/java/basic BasicTest ${PROJECT_DIRECTORY}) -ADD_TEST(java-pingpong ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh ${PROJECT_DIRECTORY}/examples/java/ping_pong PingPongTest ${PROJECT_DIRECTORY}) -ADD_TEST(java-comm_time ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh ${PROJECT_DIRECTORY}/examples/java/comm_time CommTimeTest ${PROJECT_DIRECTORY}) -ADD_TEST(java-suspend ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh ${PROJECT_DIRECTORY}/examples/java/suspend SuspendTest ${PROJECT_DIRECTORY}) +ADD_TEST(java-basic ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh ${PROJECT_DIRECTORY}/examples/java/basic BasicTest ${CMAKE_BINARY_DIR}) +ADD_TEST(java-pingpong ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh ${PROJECT_DIRECTORY}/examples/java/ping_pong PingPongTest ${CMAKE_BINARY_DIR}) +ADD_TEST(java-comm_time ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh ${PROJECT_DIRECTORY}/examples/java/comm_time CommTimeTest ${CMAKE_BINARY_DIR}) +ADD_TEST(java-suspend ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh ${PROJECT_DIRECTORY}/examples/java/suspend SuspendTest ${CMAKE_BINARY_DIR}) endif(HAVE_JAVA) ### @@ -260,6 +272,6 @@ add_test(test-simdag-1 ${PROJECT_DIRECTORY}/testsuite/simdag/sd_test --cfg=path: add_test(test-simdag-2 ${PROJECT_DIRECTORY}/testsuite/simdag/sd_test --cfg=path:${PROJECT_DIRECTORY}/testsuite/simdag ${PROJECT_DIRECTORY}/examples/msg/small_platform.xml) add_test(test-simdag-3 ${PROJECT_DIRECTORY}/testsuite/simdag/sd_test --cfg=path:${PROJECT_DIRECTORY}/testsuite/simdag ${PROJECT_DIRECTORY}/examples/msg/msg_platform.xml) -add_test(testall ${CMAKE_BUILD_DIR}/src/testall) +add_test(testall ${PROJECT_DIRECTORY}/src/testall) include(${PROJECT_DIRECTORY}/buildtools/Cmake/memcheck_tests.cmake)