From: navarrop Date: Tue, 25 May 2010 14:29:28 +0000 (+0000) Subject: Generate tests for memcheck. X-Git-Tag: v3_5~1013 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/a83769229c16e7cb7293c762be1d5ce432d0aefb Generate tests for memcheck. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@7795 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- diff --git a/buildtools/Cmake/AddTests.cmake b/buildtools/Cmake/AddTests.cmake index 957ab168ab..5436bb5f2f 100644 --- a/buildtools/Cmake/AddTests.cmake +++ b/buildtools/Cmake/AddTests.cmake @@ -11,6 +11,7 @@ if(enable_memcheck) 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.") diff --git a/buildtools/Cmake/generate_memcheck_tests.pl b/buildtools/Cmake/generate_memcheck_tests.pl index 312d8e493a..c4b6db63a2 100755 --- a/buildtools/Cmake/generate_memcheck_tests.pl +++ b/buildtools/Cmake/generate_memcheck_tests.pl @@ -26,20 +26,25 @@ while(defined($line=)) { last; } if($dump) { - if($line =~ /ADD_TEST/) { - if($line =~ /ADD_TEST\(([\S]+)\s+.*\/tools\/tesh\/tesh\s*--cd\s*(\S+)\s+(.*)\)$/) { + if($line =~ /ADD_TEST/) + { + if($line =~ /ADD_TEST\(([\S]+)\s+.*\$\{CMAKE_BINARY_DIR\}\/bin\/tesh\s*--cd\s*(\S+)\s+(.*)\)$/) + { my($name_test,$path,$tesh_file)=($1,$2,$3); $path=~ s/\"//g; my($complete_tesh_file)=$path."/".$tesh_file; my($count)=0; my($count_first)=0; my($count_second)=0; - $complete_tesh_file =~ s/\${PROJECT_DIRECTORY}/$proj_dir/g; + $complete_tesh_file =~ s/\$\{CMAKE_BINARY_DIR\}/$proj_dir/g; + $complete_tesh_file =~ s/\$\{PROJECT_DIRECTORY\}/$proj_dir/g; open TESH_FILE, $complete_tesh_file or die "Unable to open $complete_tesh_file $!\n"; my($l); - while(defined($l=)) { + while(defined($l=)) + { chomp $l; - if($l =~ /^\$ (.*)$/) { + if($l =~ /^\$ (.*)$/) + { my($command) = $1; $command =~ s/\${srcdir:=.}/./g; $command =~ s/\${EXEEXT:=}//g; @@ -47,22 +52,29 @@ while(defined($line=)) { $command =~ s/\$SG_TEST_ENV //g; $command =~ s/\$SG_EXENV_TEST //g; $command =~ s/\$EXEEXT//g; + $command =~ s/\${EXEEXT}//g; $command =~ s/\${srcdir}/\${PROJECT_DIRECTORY}\/src/g; $command =~ s/ \$ARGS//g; $command =~ s/ \$@ //g; + $command =~ s/..\/..\/bin\/smpirun/\${CMAKE_BINARY_DIR\}\/bin\/smpirun/g; print "ADD_TEST(memcheck-$name_test-$count $command --cd $path\/)\n"; #push @test_list, "memcheck-$name_test-$count"; $count++; } - if($l =~ /^\& (.*)$/) { + if($l =~ /^\& (.*)$/) + { last; } } close(TESH_FILE); - } else { + } + else + { next; } - } else { + } + else + { print $line."\n"; } } diff --git a/buildtools/Cmake/memcheck_tests.cmake b/buildtools/Cmake/memcheck_tests.cmake index d0a6568e76..c16568be7c 100644 --- a/buildtools/Cmake/memcheck_tests.cmake +++ b/buildtools/Cmake/memcheck_tests.cmake @@ -143,12 +143,14 @@ ADD_TEST(memcheck-msg-masterslave_cpu_ti-3 masterslave/masterslave_bypass --log= IF(HAVE_TRACING) ADD_TEST(memcheck-tracing-ms-0 tracing/ms ./tracing/platform.xml ./tracing/deployment.xml --cd ${PROJECT_DIRECTORY}/examples/msg/) -ADD_TEST(memcheck-tracing-ms-1 cat ./tracing/../simulation.trace --cd ${PROJECT_DIRECTORY}/examples/msg/) +ADD_TEST(memcheck-tracing-ms-1 cat ./tracing/../ms.trace --cd ${PROJECT_DIRECTORY}/examples/msg/) ADD_TEST(memcheck-tracing-categories-0 tracing/categories ./tracing/platform.xml ./tracing/deployment.xml --cd ${PROJECT_DIRECTORY}/examples/msg/) ADD_TEST(memcheck-tracing-categories-1 cat ./tracing/../categories.trace --cd ${PROJECT_DIRECTORY}/examples/msg/) +ADD_TEST(memcheck-tracing-volume-0 tracing/volume ./tracing/platform.xml ./tracing/deployment.xml --cd ${PROJECT_DIRECTORY}/examples/msg/) +ADD_TEST(memcheck-tracing-tasks-0 tracing/tasks ./tracing/platform.xml ./tracing/deployment.xml --cd ${PROJECT_DIRECTORY}/examples/msg/) +ADD_TEST(memcheck-tracing-process-migration-0 tracing/procmig ./tracing/platform.xml ./tracing/procmig-deploy.xml --cd ${PROJECT_DIRECTORY}/examples/msg/) ENDIF(HAVE_TRACING) - IF(${ARCH_32_BITS}) ADD_TEST(memcheck-gras-ping-sg-32-0 ./ping_simulator ./../../msg/small_platform.xml ./ping.xml --cd ${PROJECT_DIRECTORY}/examples/gras/ping/) ADD_TEST(memcheck-gras-rpc-sg-32-0 ./rpc_simulator ./../../msg/small_platform.xml ./rpc.xml --log=root.fmt:"'[%h:%P:(%i)] [%c/%p] %m%n'" --cd ${PROJECT_DIRECTORY}/examples/gras/rpc/) @@ -176,11 +178,11 @@ ADD_TEST(memcheck-gras-properties-sg-0 ./properties_simulator ./../../platforms/ # amok examples IF(${ARCH_32_BITS}) -ADD_TEST(memcheck-amok-bandwidth-sg-32-0 bandwidth/bandwidth_simulator${EXEEXT} ./../msg/small_platform.xml ./bandwidth/bandwidth.xml --cd ${PROJECT_DIRECTORY}/examples/amok/) -ADD_TEST(memcheck-amok-saturate-sg-32-0 saturate/saturate_simulator${EXEEXT} ./../msg/small_platform.xml ./saturate/saturate.xml --cd ${PROJECT_DIRECTORY}/examples/amok/) +ADD_TEST(memcheck-amok-bandwidth-sg-32-0 bandwidth/bandwidth_simulator ./../msg/small_platform.xml ./bandwidth/bandwidth.xml --cd ${PROJECT_DIRECTORY}/examples/amok/) +ADD_TEST(memcheck-amok-saturate-sg-32-0 saturate/saturate_simulator ./../msg/small_platform.xml ./saturate/saturate.xml --cd ${PROJECT_DIRECTORY}/examples/amok/) ELSE(${ARCH_32_BITS}) -ADD_TEST(memcheck-amok-bandwidth-sg-64-0 bandwidth/bandwidth_simulator${EXEEXT} ./../msg/small_platform.xml ./bandwidth/bandwidth.xml --cd ${PROJECT_DIRECTORY}/examples/amok/) -ADD_TEST(memcheck-amok-saturate-sg-64-0 saturate/saturate_simulator${EXEEXT} ./../msg/small_platform.xml ./saturate/saturate.xml --cd ${PROJECT_DIRECTORY}/examples/amok/) +ADD_TEST(memcheck-amok-bandwidth-sg-64-0 bandwidth/bandwidth_simulator ./../msg/small_platform.xml ./bandwidth/bandwidth.xml --cd ${PROJECT_DIRECTORY}/examples/amok/) +ADD_TEST(memcheck-amok-saturate-sg-64-0 saturate/saturate_simulator ./../msg/small_platform.xml ./saturate/saturate.xml --cd ${PROJECT_DIRECTORY}/examples/amok/) ENDIF(${ARCH_32_BITS}) # simdag examples @@ -189,13 +191,15 @@ ADD_TEST(memcheck-simdag-test_simdag2-0 ./sd_test2 ./2clusters.xml --cd ${PROJEC ADD_TEST(memcheck-simdag-test_prop-0 properties/sd_prop ./../platforms/prop.xml --cd ${PROJECT_DIRECTORY}/examples/simdag/) ADD_TEST(memcheck-simdag-metaxml_test-0 metaxml/sd_meta ./../platforms/metaxml.xml --cd ${PROJECT_DIRECTORY}/examples/simdag/) +if(enable_smpi) # smpi examples -ADD_TEST(memcheck-smpi-bcast-0 ../../src/smpi/smpirun -map -hostfile ./hostfile -platform ./../msg/small_platform.xml -np 3 ./bcast -q --cd ${PROJECT_DIRECTORY}/examples/smpi/) -ADD_TEST(memcheck-smpi-bcast-1 ../../src/smpi/smpirun -map -hostfile ./hostfile -platform ./../msg/small_platform.xml -np 6 ./bcast -q --cd ${PROJECT_DIRECTORY}/examples/smpi/) -ADD_TEST(memcheck-smpi-bcast-2 ../../src/smpi/smpirun -map -hostfile ./hostfile -platform ./../msg/small_platform.xml -np 12 ./bcast -q --cd ${PROJECT_DIRECTORY}/examples/smpi/) -ADD_TEST(memcheck-smpi-reduce-0 ../../src/smpi/smpirun -map -hostfile ./hostfile -platform ./../msg/small_platform.xml -np 3 ./reduce -q --cd ${PROJECT_DIRECTORY}/examples/smpi/) -ADD_TEST(memcheck-smpi-reduce-1 ../../src/smpi/smpirun -map -hostfile ./hostfile -platform ./../msg/small_platform.xml -np 6 ./reduce -q --cd ${PROJECT_DIRECTORY}/examples/smpi/) -ADD_TEST(memcheck-smpi-reduce-2 ../../src/smpi/smpirun -map -hostfile ./hostfile -platform ./../msg/small_platform.xml -np 12 ./reduce -q --cd ${PROJECT_DIRECTORY}/examples/smpi/) +ADD_TEST(memcheck-smpi-bcast-0 ${CMAKE_BINARY_DIR}/bin/smpirun -map -hostfile ./hostfile -platform ./../msg/small_platform.xml -np 3 ./bcast -q --cd ${PROJECT_DIRECTORY}/examples/smpi/) +ADD_TEST(memcheck-smpi-bcast-1 ${CMAKE_BINARY_DIR}/bin/smpirun -map -hostfile ./hostfile -platform ./../msg/small_platform.xml -np 6 ./bcast -q --cd ${PROJECT_DIRECTORY}/examples/smpi/) +ADD_TEST(memcheck-smpi-bcast-2 ${CMAKE_BINARY_DIR}/bin/smpirun -map -hostfile ./hostfile -platform ./../msg/small_platform.xml -np 12 ./bcast -q --cd ${PROJECT_DIRECTORY}/examples/smpi/) +ADD_TEST(memcheck-smpi-reduce-0 ${CMAKE_BINARY_DIR}/bin/smpirun -map -hostfile ./hostfile -platform ./../msg/small_platform.xml -np 3 ./reduce -q --cd ${PROJECT_DIRECTORY}/examples/smpi/) +ADD_TEST(memcheck-smpi-reduce-1 ${CMAKE_BINARY_DIR}/bin/smpirun -map -hostfile ./hostfile -platform ./../msg/small_platform.xml -np 6 ./reduce -q --cd ${PROJECT_DIRECTORY}/examples/smpi/) +ADD_TEST(memcheck-smpi-reduce-2 ${CMAKE_BINARY_DIR}/bin/smpirun -map -hostfile ./hostfile -platform ./../msg/small_platform.xml -np 12 ./reduce -q --cd ${PROJECT_DIRECTORY}/examples/smpi/) +endif(enable_smpi) if(HAVE_GTNETS) ADD_TEST(memcheck-msg-gtnets-waxman-0 gtnets/gtnets gtnets/waxman-p.xml gtnets/waxman-d.xml --cfg=workstation/model:compound --cfg=cpu/model:Cas01 --cfg=network/model:GTNets --cd ${PROJECT_DIRECTORY}/examples/msg/) @@ -217,4 +221,5 @@ ADD_TEST(memcheck-ruby-masterslave-0 ruby -I../../src/bindings/ruby MasterSlave. ADD_TEST(memcheck-ruby-ping_pong-0 ruby -I ../../src/bindings/ruby PingPong.rb --cd ${PROJECT_DIRECTORY}/examples/ruby/) ADD_TEST(memcheck-ruby-quicksort-0 ruby -I ../../src/bindings/ruby Quicksort.rb --cd ${PROJECT_DIRECTORY}/examples/ruby/) endif(HAVE_RUBY) + endif(enable_memcheck)