Merge "Use named options for verify_overlaps" am: 510a5e054d am: 0971c66db1

Original change: https://android-review.googlesource.com/c/platform/build/soong/+/2056469

Change-Id: I8175fcbee11d0be40069f869adf5e1d59c4504d5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
Paul Duffin 2022-04-08 14:20:02 +00:00 committed by Automerger Merge Worker
commit 965a6b6ace
2 changed files with 12 additions and 7 deletions

View file

@ -994,10 +994,11 @@ func buildRuleValidateOverlappingCsvFiles(ctx android.BuilderContext, name strin
rule := android.NewRuleBuilder(pctx, ctx)
command := rule.Command().
BuiltTool("verify_overlaps").
Input(monolithicFilePath)
FlagWithInput("--monolithic-flags ", monolithicFilePath)
for _, subset := range csvSubsets {
command.
Flag("--module-flags ").
Textf("%s:%s", subset.CsvFile, subset.SignaturePatternsFile).
Implicit(subset.CsvFile).Implicit(subset.SignaturePatternsFile)
}

View file

@ -141,22 +141,26 @@ def main(argv):
args_parser = argparse.ArgumentParser(
description="Verify that sets of hidden API flags are each a subset of "
"the monolithic flag file.")
args_parser.add_argument("monolithicFlags", help="The monolithic flag file")
args_parser.add_argument(
"modularFlags",
nargs=argparse.REMAINDER,
help="Flags produced by individual bootclasspath_fragment modules")
"--monolithic-flags", help="The monolithic flag file")
args_parser.add_argument(
"--module-flags",
action="append",
help="A colon separated pair of paths. The first is a path to a "
"filtered set of flags, and the second is a path to a set of "
"signature patterns that identify the set of classes belonging to "
"a single bootclasspath_fragment module, ")
args = args_parser.parse_args(argv[1:])
# Read in all the flags into the trie
monolithic_flags_path = args.monolithicFlags
monolithic_flags_path = args.monolithic_flags
monolithic_trie = read_flag_trie_from_file(monolithic_flags_path)
# For each subset specified on the command line, create dicts for the flags
# provided by the subset and the corresponding flags from the complete set
# of flags and compare them.
failed = False
for modular_pair in args.modularFlags:
for modular_pair in args.module_flags:
parts = modular_pair.split(":")
modular_flags_path = parts[0]
modular_patterns_path = parts[1]