|
1 # -*- python -*- |
|
2 # Crocodile config file for Chromium - settings common to all platforms |
|
3 # |
|
4 # This should be speicified before the platform-specific config, for example: |
|
5 # croc -c chrome_common.croc -c linux/chrome_linux.croc |
|
6 |
|
7 { |
|
8 # List of root directories, applied in order |
|
9 'roots' : [ |
|
10 # Sub-paths we specifically care about and want to call out |
|
11 { |
|
12 'root' : '_/src', |
|
13 'altname' : 'CHROMIUM', |
|
14 }, |
|
15 ], |
|
16 |
|
17 # List of rules, applied in order |
|
18 # Note that any 'include':0 rules here will be overridden by the 'include':1 |
|
19 # rules in the platform-specific configs. |
|
20 'rules' : [ |
|
21 # Don't scan for executable lines in uninstrumented C++ header files |
|
22 { |
|
23 'regexp' : '.*\\.(h|hpp)$', |
|
24 'add_if_missing' : 0, |
|
25 }, |
|
26 |
|
27 # Groups |
|
28 { |
|
29 'regexp' : '', |
|
30 'group' : 'source', |
|
31 }, |
|
32 { |
|
33 'regexp' : '.*_(test|unittest|uitest|browsertest)\\.', |
|
34 'group' : 'test', |
|
35 }, |
|
36 |
|
37 # Languages |
|
38 { |
|
39 'regexp' : '.*\\.(c|h)$', |
|
40 'language' : 'C', |
|
41 }, |
|
42 { |
|
43 'regexp' : '.*\\.(cc|cpp|hpp)$', |
|
44 'language' : 'C++', |
|
45 }, |
|
46 |
|
47 # Files/paths to include. Specify these before the excludes, since rules |
|
48 # are in order. |
|
49 { |
|
50 'regexp' : '^CHROMIUM/(base|media|net|printing|remoting|chrome|content|webkit/glue|native_client)/', |
|
51 'include' : 1, |
|
52 }, |
|
53 # Don't include subversion or mercurial SCM dirs |
|
54 { |
|
55 'regexp' : '.*/(\\.svn|\\.hg)/', |
|
56 'include' : 0, |
|
57 }, |
|
58 # Don't include output dirs |
|
59 { |
|
60 'regexp' : '.*/(Debug|Release|sconsbuild|out|xcodebuild)/', |
|
61 'include' : 0, |
|
62 }, |
|
63 # Don't include third-party source |
|
64 { |
|
65 'regexp' : '.*/third_party/', |
|
66 'include' : 0, |
|
67 }, |
|
68 # We don't run the V8 test suite, so we don't care about V8 coverage. |
|
69 { |
|
70 'regexp' : '.*/v8/', |
|
71 'include' : 0, |
|
72 }, |
|
73 ], |
|
74 |
|
75 # Paths to add source from |
|
76 'add_files' : [ |
|
77 'CHROMIUM' |
|
78 ], |
|
79 |
|
80 # Statistics to print |
|
81 'print_stats' : [ |
|
82 { |
|
83 'stat' : 'files_executable', |
|
84 'format' : '*RESULT FilesKnown: files_executable= %d files', |
|
85 }, |
|
86 { |
|
87 'stat' : 'files_instrumented', |
|
88 'format' : '*RESULT FilesInstrumented: files_instrumented= %d files', |
|
89 }, |
|
90 { |
|
91 'stat' : '100.0 * files_instrumented / files_executable', |
|
92 'format' : '*RESULT FilesInstrumentedPercent: files_instrumented_percent= %g', |
|
93 }, |
|
94 { |
|
95 'stat' : 'lines_executable', |
|
96 'format' : '*RESULT LinesKnown: lines_known= %d lines', |
|
97 }, |
|
98 { |
|
99 'stat' : 'lines_instrumented', |
|
100 'format' : '*RESULT LinesInstrumented: lines_instrumented= %d lines', |
|
101 }, |
|
102 { |
|
103 'stat' : 'lines_covered', |
|
104 'format' : '*RESULT LinesCoveredSource: lines_covered_source= %d lines', |
|
105 'group' : 'source', |
|
106 }, |
|
107 { |
|
108 'stat' : 'lines_covered', |
|
109 'format' : '*RESULT LinesCoveredTest: lines_covered_test= %d lines', |
|
110 'group' : 'test', |
|
111 }, |
|
112 { |
|
113 'stat' : '100.0 * lines_covered / lines_executable', |
|
114 'format' : '*RESULT PercentCovered: percent_covered= %g', |
|
115 }, |
|
116 { |
|
117 'stat' : '100.0 * lines_covered / lines_executable', |
|
118 'format' : '*RESULT PercentCoveredSource: percent_covered_source= %g', |
|
119 'group' : 'source', |
|
120 }, |
|
121 { |
|
122 'stat' : '100.0 * lines_covered / lines_executable', |
|
123 'format' : '*RESULT PercentCoveredTest: percent_covered_test= %g', |
|
124 'group' : 'test', |
|
125 }, |
|
126 ], |
|
127 } |