| OLD | NEW |
| 1 #!/usr/bin/python | 1 #!/usr/bin/env python |
| 2 # Copyright (c) 2011 The Chromium Authors. All rights reserved. | 2 # Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
| 4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
| 5 | 5 |
| 6 '''python %prog [options] platform chromium_os_flag template | 6 '''python %prog [options] platform chromium_os_flag template |
| 7 | 7 |
| 8 platform specifies which platform source is being generated for | 8 platform specifies which platform source is being generated for |
| 9 and can be one of (win, mac, linux) | 9 and can be one of (win, mac, linux) |
| 10 chromium_os_flag should be 1 if this is a Chromium OS build | 10 chromium_os_flag should be 1 if this is a Chromium OS build |
| 11 template is the path to a .json policy template file.''' | 11 template is the path to a .json policy template file.''' |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 44 metavar="FILE"); | 44 metavar="FILE"); |
| 45 parser.add_option("--ppd", "--protobuf-decoder", dest="decoder_path", | 45 parser.add_option("--ppd", "--protobuf-decoder", dest="decoder_path", |
| 46 help="generate C++ code decoding the policy protobuf", | 46 help="generate C++ code decoding the policy protobuf", |
| 47 metavar="FILE"); | 47 metavar="FILE"); |
| 48 | 48 |
| 49 (opts, args) = parser.parse_args(); | 49 (opts, args) = parser.parse_args(); |
| 50 | 50 |
| 51 if len(args) != 3: | 51 if len(args) != 3: |
| 52 print "exactly platform, chromium_os flag and input file must be specified." | 52 print "exactly platform, chromium_os flag and input file must be specified." |
| 53 parser.print_help() | 53 parser.print_help() |
| 54 sys.exit(2) | 54 return 2 |
| 55 template_file_contents = _LoadJSONFile(args[2]); | 55 template_file_contents = _LoadJSONFile(args[2]); |
| 56 if opts.header_path is not None: | 56 if opts.header_path is not None: |
| 57 _WritePolicyConstantHeader(template_file_contents, args, opts); | 57 _WritePolicyConstantHeader(template_file_contents, args, opts); |
| 58 if opts.source_path is not None: | 58 if opts.source_path is not None: |
| 59 _WritePolicyConstantSource(template_file_contents, args, opts); | 59 _WritePolicyConstantSource(template_file_contents, args, opts); |
| 60 if opts.type_path is not None: | 60 if opts.type_path is not None: |
| 61 _WritePolicyTypeEnumerationHeader(template_file_contents, args, opts); | 61 _WritePolicyTypeEnumerationHeader(template_file_contents, args, opts); |
| 62 if opts.proto_path is not None: | 62 if opts.proto_path is not None: |
| 63 _WriteProtobuf(template_file_contents, args, opts.proto_path) | 63 _WriteProtobuf(template_file_contents, args, opts.proto_path) |
| 64 if opts.decoder_path is not None: | 64 if opts.decoder_path is not None: |
| 65 _WriteProtobufParser(template_file_contents, args, opts.decoder_path) | 65 _WriteProtobufParser(template_file_contents, args, opts.decoder_path) |
| 66 return 0 |
| 66 | 67 |
| 67 | 68 |
| 68 #------------------ shared helpers ---------------------------------# | 69 #------------------ shared helpers ---------------------------------# |
| 69 def _OutputGeneratedWarningForC(f, template_file_path): | 70 def _OutputGeneratedWarningForC(f, template_file_path): |
| 70 f.write('//\n' | 71 f.write('//\n' |
| 71 '// DO NOT MODIFY THIS FILE DIRECTLY!\n' | 72 '// DO NOT MODIFY THIS FILE DIRECTLY!\n' |
| 72 '// IT IS GENERATED BY generate_policy_source.py\n' | 73 '// IT IS GENERATED BY generate_policy_source.py\n' |
| 73 '// FROM ' + template_file_path + '\n' | 74 '// FROM ' + template_file_path + '\n' |
| 74 '//\n\n') | 75 '//\n\n') |
| 75 | 76 |
| (...skipping 379 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 455 f.write(CPP_HEAD) | 456 f.write(CPP_HEAD) |
| 456 for policy in template_file_contents['policy_definitions']: | 457 for policy in template_file_contents['policy_definitions']: |
| 457 if policy['type'] == 'group': | 458 if policy['type'] == 'group': |
| 458 for sub_policy in policy['policies']: | 459 for sub_policy in policy['policies']: |
| 459 _WritePolicyCode(f, sub_policy) | 460 _WritePolicyCode(f, sub_policy) |
| 460 else: | 461 else: |
| 461 _WritePolicyCode(f, policy) | 462 _WritePolicyCode(f, policy) |
| 462 f.write(CPP_FOOT) | 463 f.write(CPP_FOOT) |
| 463 | 464 |
| 464 | 465 |
| 465 #------------------ main() -----------------------------------------# | |
| 466 if __name__ == '__main__': | 466 if __name__ == '__main__': |
| 467 main(); | 467 sys.exit(main()) |
| OLD | NEW |