| # Copyright 2019 The SwiftShader Authors. All Rights Reserved. | 
 | # | 
 | # Licensed under the Apache License, Version 2.0 (the "License"); | 
 | # you may not use this file except in compliance with the License. | 
 | # You may obtain a copy of the License at | 
 | # | 
 | #    http://www.apache.org/licenses/LICENSE-2.0 | 
 | # | 
 | # Unless required by applicable law or agreed to in writing, software | 
 | # distributed under the License is distributed on an "AS IS" BASIS, | 
 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | 
 | # See the License for the specific language governing permissions and | 
 | # limitations under the License. | 
 |  | 
 | import argparse, json, sys | 
 |  | 
 | def run(): | 
 |     parser = argparse.ArgumentParser( | 
 |         description = "Generates the correct ICD JSON file for swiftshader in GN builds" | 
 |     ) | 
 |     parser.add_argument('--input', type=str, help='The template ICD JSON') | 
 |     parser.add_argument('--output', type=str, help='The output ICD JSON in the GN build dir') | 
 |     parser.add_argument('--library_path', type=str, help='The file containing a list of directories to check for stale files') | 
 |     args = parser.parse_args() | 
 |  | 
 |     with open(args.input) as infile: | 
 |         with open(args.output, 'w') as outfile: | 
 |             data = json.load(infile) | 
 |             data['ICD']['library_path'] = args.library_path | 
 |             json.dump(data, outfile) | 
 |  | 
 |     return 0 | 
 |  | 
 | if __name__ == "__main__": | 
 |     sys.exit(run()) |