1#!/usr/bin/env python3 2# Copyright 2020 The Chromium Authors 3# Use of this source code is governed by a BSD-style license that can be 4# found in the LICENSE file. 5"""Wrapper script around ByteCodeRewriter subclass scripts.""" 6 7import argparse 8import sys 9 10from util import build_utils 11import action_helpers # build_utils adds //build to sys.path. 12 13 14def main(argv): 15 argv = build_utils.ExpandFileArgs(argv[1:]) 16 parser = argparse.ArgumentParser() 17 action_helpers.add_depfile_arg(parser) 18 parser.add_argument('--script', 19 required=True, 20 help='Path to the java binary wrapper script.') 21 parser.add_argument('--classpath', action='append', nargs='+') 22 parser.add_argument('--input-jar', required=True) 23 parser.add_argument('--output-jar', required=True) 24 args = parser.parse_args(argv) 25 26 classpath = action_helpers.parse_gn_list(args.classpath) 27 action_helpers.write_depfile(args.depfile, args.output_jar, inputs=classpath) 28 29 classpath.append(args.input_jar) 30 cmd = [ 31 args.script, '--classpath', ':'.join(classpath), args.input_jar, 32 args.output_jar 33 ] 34 build_utils.CheckOutput(cmd, print_stdout=True) 35 36 37if __name__ == '__main__': 38 sys.exit(main(sys.argv)) 39