tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

bytecode_rewriter.py (1222B)


      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 
      7 import argparse
      8 import sys
      9 
     10 from util import build_utils
     11 import action_helpers  # build_utils adds //build to sys.path.
     12 
     13 
     14 def 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 
     37 if __name__ == '__main__':
     38  sys.exit(main(sys.argv))