def main(): parser = ArgumentParser(description="Protobuf Parser") parser.add_argument( "-output", help="output directory. default is 'output', under current path") parser.add_argument("-f", "--force", action="store_true", help="this will remove all old files.") parser.add_argument( "-config", help="the configure file for code generator. see ppconfig.py") parser.add_argument( "input_path", help="input proto directory. only *.proto files will be processed.") option = parser.parse_args() if option.config: parse_config(option.config) ppconfig.INPUT_PATH = option.input_path ppconfig.OUTPUT_PATH = option.output if option.output else "output" if not hasattr(ppconfig, "MODULE_PATH"): ppconfig.MODULE_PATH = ppconfig.OUTPUT_PATH exporter = Exporter() try: exporter.run(option) except ProtoException as msg: print("\n**%s\n" % msg)