1
#!/bin/sh
2
#
3
#  Copyright (c) 2009 Nokia Corporation
4
#  All rights reserved.
5
# 
6
#  Redistribution and use in source and binary forms, with or without
7
#  modification, are permitted provided that the following conditions are
8
#  met:
9
# 
10
#  * Redistributions of source code must retain the above copyright
11
#    notice, this list of conditions and the following disclaimer.
12
#  * Redistributions in binary form must reproduce the above copyright
13
#    notice, this list of conditions and the following disclaimer in the
14
#    documentation and/or other materials provided with the distribution.
15
#  * Neither the name of the Nokia Corporation nor the names of its
16
#    contributors may be used to endorse or promote products derived from
17
#    this software without specific prior written permission.
18
# 
19
#  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
20
#  IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
21
#  TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
22
#  PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
23
#  OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
24
#  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
25
#  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
26
#  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
27
#  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
28
#  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
29
#  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
#
31
32
if [ "x$1" = "x" ]
33
then
34
echo "usage: ./coverage.sh target_folder [gcov options]"
35
exit 0;
36
fi
37
38
39
rm -fr *.c *.gc* $1
40
mkdir $1
41
42
find . -type f -name "*\.gcda" -exec cp '{}' $1 \;
43
find . -type f -name "*\.gcno" -exec cp '{}' $1 \;
44
find . -type f -name "*\.c"    -exec cp '{}' $1 \;
45
46
cd $1
47
48
find . -type f -name "*\.c" -exec gcov $2 '{}' \; >> results
49
50
51
rm -f *.c *.gcda *.gcno