Chromium Code Reviews| Index: sync/protocol/prepare_protos_for_java_tests.py |
| diff --git a/sync/protocol/prepare_protos_for_java_tests.py b/sync/protocol/prepare_protos_for_java_tests.py |
| new file mode 100755 |
| index 0000000000000000000000000000000000000000..4f97b35eba8f73001aeba6e16ea749aa994042c8 |
| --- /dev/null |
| +++ b/sync/protocol/prepare_protos_for_java_tests.py |
| @@ -0,0 +1,39 @@ |
| +#!/usr/bin/python |
|
nyquist
2015/03/24 00:25:35
I think the new hotness is to use
#!/usr/bin/env p
pval...(no longer on Chromium)
2015/03/26 21:17:57
Done.
|
| +# Copyright 2015 The Chromium Authors. All rights reserved. |
| +# Use of this source code is governed by a BSD-style license that can be |
| +# found in the LICENSE file. |
| + |
| +import optparse |
| +import os |
| +import shutil |
| +import sys |
| + |
| +def main(): |
|
nyquist
2015/03/24 00:25:36
What does this script do? Could you add a python-s
pval...(no longer on Chromium)
2015/03/26 21:17:57
Done.
|
| + parser = optparse.OptionParser( |
| + usage='Usage: %prog [options...] original_proto_files') |
| + parser.add_option('-o', '--output_dir', dest='output_dir', |
| + help='Where to put the modified proto files') |
| + |
| + options, args = parser.parse_args() |
| + if not options.output_dir: |
| + print 'output_dir not specified.' |
| + return 1 |
| + |
| + # Copy the original proto files to the new location. |
| + for original_proto_file in args: |
| + shutil.copy(original_proto_file, options.output_dir) |
| + |
| + for new_proto_file_name in os.listdir(options.output_dir): |
| + new_proto_file_path = os.path.join(options.output_dir, new_proto_file_name) |
| + # The retain_unknown_fields option is removed because it is not supported by |
| + # the protobuf nano library (used in Chromium Java). |
| + # Java-specific options are set to ensure that the protos are properly |
| + # organized and compiled. |
| + os.system("sed -i 's/option retain_unknown_fields = true;/" |
|
pval...(no longer on Chromium)
2015/03/13 00:32:45
should I match whitespace here? for example, what
nyquist
2015/03/24 00:25:36
I'd use built in tools in python for regexp here i
pval...(no longer on Chromium)
2015/03/26 21:17:57
Done.
|
| + "option java_multiple_files = true; " |
| + "option java_package = \"org.chromium.sync.protocol\";" |
| + "/g' %s" % new_proto_file_path) |
| + |
| + |
| +if __name__ == '__main__': |
| + sys.exit(main()) |