From 014ccd4ef002f11109e1116fddff42f563273ba5 Mon Sep 17 00:00:00 2001 From: Jooyung Han Date: Mon, 9 Jan 2023 16:23:14 +0900 Subject: conv_linker_config proto supports multiple input json files conv_linker_config proto -s input1.json:input2.json generates a merged proto output file. Bug: 264330513 Test: conv_linker_config proto -s input1.json:input2.json Change-Id: I4806fc606d115c42a1c745fba67960ce6db8c8d7 --- scripts/conv_linker_config.py | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) (limited to 'scripts/conv_linker_config.py') diff --git a/scripts/conv_linker_config.py b/scripts/conv_linker_config.py index e46efe494..3d7c0faa4 100644 --- a/scripts/conv_linker_config.py +++ b/scripts/conv_linker_config.py @@ -27,13 +27,15 @@ from google.protobuf.text_format import MessageToString def Proto(args): - json_content = '' - with open(args.source) as f: - for line in f: - if not line.lstrip().startswith('//'): - json_content += line - obj = json.loads(json_content, object_pairs_hook=collections.OrderedDict) - pb = ParseDict(obj, linker_config_pb2.LinkerConfig()) + pb = linker_config_pb2.LinkerConfig() + for input in args.source.split(':'): + json_content = '' + with open(input) as f: + for line in f: + if not line.lstrip().startswith('//'): + json_content += line + obj = json.loads(json_content, object_pairs_hook=collections.OrderedDict) + ParseDict(obj, pb) with open(args.output, 'wb') as f: f.write(pb.SerializeToString()) @@ -104,7 +106,7 @@ def GetArgParser(): '--source', required=True, type=str, - help='Source linker configuration file in JSON.') + help='Colon-separated list of linker configuration files in JSON.') parser_proto.add_argument( '-o', '--output', -- cgit v1.2.3-59-g8ed1b