""" makedeps.py Copyright 2017 Adam Greig Licensed under the MIT and Apache 2.0 licenses. Generate make dependency file for each device. """ import yaml import os.path import argparse import svdpatch def main(): parser = argparse.ArgumentParser() parser.add_argument("devices", nargs="*") args = parser.parse_args() for dpath in args.devices: with open(dpath) as f: device = yaml.safe_load(f) device["_path"] = dpath deps = svdpatch.yaml_includes(device) depname = ".deps/{}.d".format( os.path.splitext(os.path.basename(dpath))[0]) svdname = "svd/{}.patched.svd".format( os.path.splitext(os.path.basename(dpath))[0]) print("{} {} {}: {}".format(dpath, svdname, depname, " ".join(deps))) if __name__ == "__main__": main()