Merge "Clarify symbols used in verify_overlaps.py"

This commit is contained in:
Paul Duffin
2021-08-06 09:06:23 +00:00
committed by Gerrit Code Review

View File

@@ -71,23 +71,24 @@ def compare_signature_flags(monolithicFlagsDict, modularFlagsDict):
return mismatchingSignatures return mismatchingSignatures
def main(argv): def main(argv):
args_parser = argparse.ArgumentParser(description='Verify that one set of hidden API flags is a subset of another.') 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('all', help='All the flags') args_parser.add_argument('monolithicFlags', help='The monolithic flag file')
args_parser.add_argument('subsets', nargs=argparse.REMAINDER, help='Subsets of the flags') args_parser.add_argument('modularFlags', nargs=argparse.REMAINDER, help='Flags produced by individual bootclasspath_fragment modules')
args = args_parser.parse_args(argv[1:]) args = args_parser.parse_args(argv[1:])
# Read in all the flags into a dict indexed by signature # Read in the monolithic flags into a dict indexed by signature
allFlagsBySignature = read_signature_csv_from_file_as_dict(args.all) monolithicFlagsPath = args.monolithicFlags
monolithicFlagsDict = read_signature_csv_from_file_as_dict(monolithicFlagsPath)
failed = False failed = False
for subsetPath in args.subsets: for modularFlagsPath in args.modularFlags:
subsetDict = read_signature_csv_from_file_as_dict(subsetPath) modularFlagsDict = read_signature_csv_from_file_as_dict(modularFlagsPath)
mismatchingSignatures = compare_signature_flags(allFlagsBySignature, subsetDict) mismatchingSignatures = compare_signature_flags(monolithicFlagsDict, modularFlagsDict)
if mismatchingSignatures: if mismatchingSignatures:
failed = True failed = True
print("ERROR: Hidden API flags are inconsistent:") print("ERROR: Hidden API flags are inconsistent:")
print("< " + subsetPath) print("< " + modularFlagsPath)
print("> " + args.all) print("> " + monolithicFlagsPath)
for mismatch in mismatchingSignatures: for mismatch in mismatchingSignatures:
signature = mismatch[0] signature = mismatch[0]
print() print()