@@ -124,6 +124,8 @@ These perl packages include:
124
124
- JSON::PP
125
125
- JSON
126
126
- Memory::Process
127
+ - Module::Load::Conditional
128
+ - Scalar::Util
127
129
- Time::HiRes
128
130
129
131
If your system is missing any of these, then you may be able to install them
@@ -218,8 +220,8 @@ For further information on the gcc profiling mechanism, please also
218
220
consult the gcov man page.
219
221
220
222
221
- 6. New features in lcov 2.0 :
222
- ----------------------------
223
+ 6. New features:
224
+ ----------------
223
225
224
226
New features and capabilities fall into 7 major categories:
225
227
@@ -292,12 +294,19 @@ New features and capabilities fall into 7 major categories:
292
294
not exactly match the layout in your revision control system; this
293
295
is common in large projects with reusable components.)
294
296
297
+ During coverage data capture, the --build-directory option can be used
298
+ to specify a search path, to find the .gcno (compile-time coverage data)
299
+ file corresponding to a particular .gcda runtime coverage data) file.
300
+ Similarly, the --source-directory pption can be used to specify a
301
+ search path for source files.
302
+
295
303
See the lcov/geninfo/genhtml man pages for a detailed description of
296
304
the available filters and manipulation features.
297
305
298
306
Related options:
299
307
--include, --exclude, --erase-functions, --omit-lines,
300
308
--substitute, --filter
309
+ --build-directory --source-directory
301
310
302
311
e) Callbacks/customization
303
312
@@ -312,15 +321,21 @@ New features and capabilities fall into 7 major categories:
312
321
and 'gitversion'
313
322
iii) enforce a desired code coverage criteria
314
323
Sample script: criteria
324
+ iv) find source files in more complicated environments - where
325
+ simple substitutions become complicated or unweildy.
326
+
327
+ The callback may be any desired script or executable - but there
328
+ may be performance advantages if it is written as a Perl module.
315
329
316
330
See the genhtml/lcov/geninfo man pages for details.
317
331
318
- Note that the various sample scripts are found in the source code 'bin'
319
- directory, but are installed in the $LCOV_HOME/share/lcov/support-scripts
320
- directory of the release.
332
+ Note that the various sample scripts are found in the source code
333
+ 'scripts' directory, but are installed in the
334
+ $LCOV_HOME/share/lcov/support-scripts directory of the release.
321
335
322
336
Related options:
323
337
--annotate-script, --criteria-script, --version-script
338
+ --resolve-script
324
339
325
340
f) Performance
326
341
@@ -332,7 +347,12 @@ New features and capabilities fall into 7 major categories:
332
347
memory consumption contraints, as well as options to enable simple
333
348
profile data collection - so you can see where time is going and
334
349
thus to hint at potential optimizations. The 'spreadsheet.py'
335
- script can be used to view generated profile data..
350
+ script can be used to view generated profile data.
351
+
352
+ There are several configuration file options which can be used to
353
+ tweak certain parallelization parameters to optimize performance
354
+ for your environment in cases that the default behaviour is suboptimal.
355
+ See the lcovrc man page for more information.
336
356
337
357
See the genhtml/lcov/geninfo man pages for details
338
358
@@ -346,6 +366,8 @@ New features and capabilities fall into 7 major categories:
346
366
See the Coverage.py documentation at https://coverage.readthedocs.io,
347
367
as well as ".../py2lcov --help"
348
368
369
+ Other languages can be integrated using a similar approach.
370
+
349
371
In general, the new features and options are implemented uniformly in lcov,
350
372
genhtml, and geninfo. Most of the features can be enabled/disabled
351
373
using either command line options or by setting defaults in your 'lcovrc'
0 commit comments