# Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. import argparse import sys def parse_arguments(): parser = argparse.ArgumentParser(description="ONNX Runtime create nuget spec script", usage='') # Main arguments parser.add_argument("--source_dir", required=True, help="Path to the source directory.") parser.add_argument("--debug_binary_root", required=True, help="Path to the debug binary directory.") parser.add_argument("--release_binary_root", required=True, help="Path to the release binary directory.") return parser.parse_args() def generate_nuspec(source_dir, debug_binary_root, release_binary_root, architecture): template_path = '%s/tools/nuget/template.nuspec' % source_dir with open(template_path, 'rt') as f: template = f.read() return template.replace('@@DebugBinaryRoot@@', debug_binary_root)\ .replace('@@ReleaseBinaryRoot@@', release_binary_root)\ .replace('@@MSBuildArchitecture@@', architecture)\ .replace('@@SrcRoot@@', source_dir) def generate_targets(source_dir): template_path = '%s/tools/nuget/template.targets' % source_dir with open(template_path, 'rt') as f: template = f.read() return template def main(): args = parse_arguments() nuspec = generate_nuspec(args.source_dir, args.debug_binary_root, args.release_binary_root, 'amd64') with open('onnxruntime.nuspec', 'wt') as f: f.write(nuspec) targets = generate_targets(args.source_dir) with open('onnxruntime.targets', 'wt') as f: f.write(targets) if __name__ == "__main__": sys.exit(main())