summaryrefslogtreecommitdiff
path: root/common/tests/run-test.pl
diff options
context:
space:
mode:
authorschodet2007-10-08 14:51:35 +0000
committerschodet2007-10-08 14:51:35 +0000
commitf411ba3b04d6e05f6daa5bc80052e8f1bc5867ff (patch)
tree3f0df71de7a9edf3fbbe615f34e1d7545eb96b9d /common/tests/run-test.pl
parent6ebf4e37a620a9ce777f48f173266aadb45ca084 (diff)
Added automatic lcov for target.
git-svn-id: svn+ssh://pessac/svn/cesar/trunk@799 017c9cb6-072f-447c-8318-d5b54f68fe89
Diffstat (limited to 'common/tests/run-test.pl')
-rwxr-xr-xcommon/tests/run-test.pl15
1 files changed, 12 insertions, 3 deletions
diff --git a/common/tests/run-test.pl b/common/tests/run-test.pl
index f5634146d1..b2a5da4bea 100755
--- a/common/tests/run-test.pl
+++ b/common/tests/run-test.pl
@@ -24,6 +24,7 @@ my %only;
# Test macros.
my %macros = (
'cov' => \&cov_macro,
+ 'cov-target' => \&cov_target_macro,
);
my $lcov;
@@ -114,7 +115,7 @@ else
sub cov_macro
{
- my ($name, $arg, $cmd) = @_;
+ my ($name, $arg, $cmd, $objdir, $gcov) = @_;
if (not defined $lcov)
{
system ('lcov --version > /dev/null');
@@ -122,14 +123,22 @@ sub cov_macro
}
if ($lcov)
{
+ $objdir = 'obj' unless defined $objdir;
+ $gcov = '' unless defined $gcov;
return ($name,
"rm -f obj/$arg.info && "
- . "lcov -q -d obj -b . -z && "
+ . "lcov -q -d $objdir -b . -z $gcov && "
. "$cmd && "
- . "lcov -q -d obj -b . -c -t $arg -o obj/$arg.info");
+ . "lcov -q -d $objdir -b . -c -t $arg -o obj/$arg.info $gcov");
}
else
{
return ('run', $cmd);
}
}
+
+sub cov_target_macro
+{
+ my ($name, $arg, $cmd) = @_;
+ return cov_macro ($name, $arg, $cmd, '.', " -g $ENV{CROSS_COMPILE_}gcov");
+}