X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=recipes-test%2Fgcovr%2Fgcovr%2F0001-add-gcov-filter-source-errors-option.patch;fp=recipes-test%2Fgcovr%2Fgcovr%2F0001-add-gcov-filter-source-errors-option.patch;h=0000000000000000000000000000000000000000;hb=4f068a70332bc9e64c85146a8cbf54c747928795;hp=be1dcf829610cea99a2e90b697156d93d4ba028e;hpb=e82b00a13a62499fdbca9505daaa69b35bf2f77d;p=AGL%2Fmeta-agl-demo.git diff --git a/recipes-test/gcovr/gcovr/0001-add-gcov-filter-source-errors-option.patch b/recipes-test/gcovr/gcovr/0001-add-gcov-filter-source-errors-option.patch deleted file mode 100644 index be1dcf829..000000000 --- a/recipes-test/gcovr/gcovr/0001-add-gcov-filter-source-errors-option.patch +++ /dev/null @@ -1,68 +0,0 @@ -Add option to filter gcov source errors - -Add "--gcov-filter-source-errors" to apply filters to the source -files in the errors from gcov. If all source files in the errors -are filtered, then the error is ignored so that the file will be -processed. This enables the usecase of running on a target where -only the source tree for a binary is available, but not all of the -external source headers are. - -Upstream-Status: pending - -Signed-off-by: Scott Murray - -diff --git a/gcovr/configuration.py b/gcovr/configuration.py -index 1356097..083532c 100644 ---- a/gcovr/configuration.py -+++ b/gcovr/configuration.py -@@ -915,6 +915,14 @@ GCOVR_CONFIG_OPTIONS = [ - "Default: {default!s}.", - action="store_true", - ), -+ GcovrConfigOption( -+ "gcov_filter_source_errors", ['--gcov-filter-source-errors'], -+ group="gcov_options", -+ help="Apply filters to missing source file errors in GCOV files " -+ "instead of exiting with an error. " -+ "Default: {default!s}.", -+ action="store_true", -+ ), - GcovrConfigOption( - "objdir", ['--object-directory'], - group="gcov_options", -diff --git a/gcovr/gcov.py b/gcovr/gcov.py -index de79215..171d68d 100644 ---- a/gcovr/gcov.py -+++ b/gcovr/gcov.py -@@ -667,11 +667,27 @@ def run_gcov_and_process_files( - chdir=chdir, - tempdir=tempdir) - -+ skip = False - if source_re.search(err): -- # gcov tossed errors: try the next potential_wd -- error(err) -- done = False -- else: -+ ignore = False -+ if options.gcov_filter_source_errors: -+ # Check if errors are all from source that is filtered -+ ignore = True -+ for line in err.splitlines(): -+ src_fname = line.split()[-1] -+ filtered, excluded = apply_filter_include_exclude( -+ src_fname, options.filter, options.exclude) -+ if not (filtered or excluded): -+ ignore = False -+ break -+ -+ if not ignore: -+ # gcov tossed errors: try the next potential_wd -+ error(err) -+ skip = True -+ -+ done = False -+ if not skip: - # Process *.gcov files - for fname in active_gcov_files: - process_gcov_data(fname, covdata, abs_filename, options)