From a2e31ecebadc32cb55505436e061ea7966e495c4 Mon Sep 17 00:00:00 2001 From: Andre Maroneze <andre.maroneze@cea.fr> Date: Fri, 12 Jan 2024 11:19:22 +0100 Subject: [PATCH] [analysis-scripts] build: add --no-source-filter option --- share/analysis-scripts/build.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/share/analysis-scripts/build.py b/share/analysis-scripts/build.py index a373e31c752..53534261555 100755 --- a/share/analysis-scripts/build.py +++ b/share/analysis-scripts/build.py @@ -73,6 +73,12 @@ parser.add_argument( default="main", help="name of the main function (default: main)", ) +parser.add_argument( + "--no-source-filter", + action="store_false", + dest="source_filter", + help="disable source filters (less precise, but speeds up large projects)", +) parser.add_argument( "--sources", metavar="FILE", @@ -93,6 +99,7 @@ force = args.force jbdb_path = args.jbdb machdep = args.machdep main = args.main +do_filter_source = args.source_filter sources = args.sources targets = args.targets debug = args.debug @@ -234,7 +241,7 @@ def copy_fc_stubs() -> Path: # [funcname] in [filename]. # [has_args] is used to distinguish between main(void) and main(int, char**). def find_definitions(funcname: str, filename: str) -> list[tuple[str, bool]]: - file_content = source_filter.open_and_filter(filename, not under_test) + file_content = source_filter.open_and_filter(filename, not under_test and do_filter_source) file_lines = file_content.splitlines(keepends=True) newlines = function_finder.compute_newline_offsets(file_lines) defs = function_finder.find_definitions_and_declarations( -- GitLab