| # Copyright lowRISC contributors. |
| # Licensed under the Apache License, Version 2.0, see LICENSE for details. |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| load("@rules_python//python:defs.bzl", "py_binary") |
| load("@ot_python_deps//:requirements.bzl", "requirement") |
| |
| package(default_visibility = ["//visibility:public"]) |
| |
| py_library( |
| name = "utils", |
| srcs = ["utils.py"], |
| deps = [ |
| requirement("hjson"), |
| requirement("mistletoe"), |
| requirement("premailer"), |
| ], |
| ) |
| |
| py_library( |
| name = "sim_utils", |
| srcs = ["sim_utils.py"], |
| ) |
| |
| py_library( |
| name = "msg_buckets", |
| srcs = [ |
| "MsgBucket.py", |
| "MsgBuckets.py", |
| ], |
| deps = [ |
| ":utils", |
| ], |
| ) |
| |
| py_library( |
| name = "modes", |
| srcs = ["Modes.py"], |
| deps = [ |
| ":utils", |
| ], |
| ) |
| |
| py_library( |
| name = "timer", |
| srcs = ["Timer.py"], |
| ) |
| |
| py_library( |
| name = "status_printer", |
| srcs = ["StatusPrinter.py"], |
| deps = [ |
| requirement("enlighten"), |
| ], |
| ) |
| |
| py_library( |
| name = "launcher", |
| srcs = [ |
| "Launcher.py", |
| "LauncherFactory.py", |
| "LocalLauncher.py", |
| "LsfLauncher.py", |
| ], |
| deps = [ |
| ":utils", |
| ], |
| ) |
| |
| py_library( |
| name = "deploy", |
| srcs = ["Deploy.py"], |
| deps = [ |
| ":launcher", |
| ":sim_utils", |
| ":utils", |
| requirement("tabulate"), |
| ], |
| ) |
| |
| py_library( |
| name = "scheduler", |
| srcs = ["Scheduler.py"], |
| deps = [ |
| ":launcher", |
| ":status_printer", |
| ":timer", |
| ":utils", |
| ], |
| ) |
| |
| py_library( |
| name = "cfg_json", |
| srcs = ["CfgJson.py"], |
| deps = [ |
| ":utils", |
| ], |
| ) |
| |
| py_library( |
| name = "flow_cfg", |
| srcs = ["FlowCfg.py"], |
| deps = [ |
| ":cfg_json", |
| ":launcher", |
| ":scheduler", |
| ":utils", |
| requirement("hjson"), |
| ], |
| ) |
| |
| py_library( |
| name = "oneshot_cfg", |
| srcs = ["OneShotCfg.py"], |
| deps = [ |
| ":deploy", |
| ":flow_cfg", |
| ":modes", |
| ":utils", |
| ], |
| ) |
| |
| py_library( |
| name = "lint_cfg", |
| srcs = ["LintCfg.py"], |
| deps = [ |
| ":msg_buckets", |
| ":oneshot_cfg", |
| ":utils", |
| requirement("tabulate"), |
| ], |
| ) |
| |
| py_library( |
| name = "formal_cfg", |
| srcs = ["FormalCfg.py"], |
| deps = [ |
| ":oneshot_cfg", |
| ":utils", |
| requirement("hjson"), |
| requirement("tabulate"), |
| ], |
| ) |
| |
| py_library( |
| name = "cdc_cfg", |
| srcs = ["CdcCfg.py"], |
| deps = [ |
| ":lint_cfg", |
| ":msg_buckets", |
| ":utils", |
| requirement("tabulate"), |
| ], |
| ) |
| |
| py_library( |
| name = "rdc_cfg", |
| srcs = ["RdcCfg.py"], |
| deps = [ |
| ":cdc_cfg", |
| ], |
| ) |
| |
| py_library( |
| name = "testplan", |
| srcs = ["Testplan.py"], |
| deps = [ |
| requirement("hjson"), |
| requirement("mistletoe"), |
| requirement("tabulate"), |
| ], |
| ) |
| |
| py_library( |
| name = "sim_results", |
| srcs = ["SimResults.py"], |
| deps = [ |
| ":testplan", |
| ], |
| ) |
| |
| py_library( |
| name = "sim_cfg", |
| srcs = ["SimCfg.py"], |
| deps = [ |
| ":deploy", |
| ":flow_cfg", |
| ":modes", |
| ":sim_results", |
| ":testplan", |
| ":utils", |
| requirement("tabulate"), |
| ], |
| ) |
| |
| py_library( |
| name = "syn_cfg", |
| srcs = ["SynCfg.py"], |
| deps = [ |
| ":oneshot_cfg", |
| ":utils", |
| requirement("hjson"), |
| requirement("tabulate"), |
| ], |
| ) |
| |
| py_library( |
| name = "cfg_factory", |
| srcs = ["CfgFactory.py"], |
| deps = [ |
| ":cdc_cfg", |
| ":cfg_json", |
| ":formal_cfg", |
| ":lint_cfg", |
| ":sim_cfg", |
| ":syn_cfg", |
| ], |
| ) |
| |
| py_binary( |
| name = "dvsim", |
| srcs = ["dvsim.py"], |
| deps = [ |
| ":cfg_factory", |
| ":deploy", |
| ":launcher", |
| ":timer", |
| ":utils", |
| ], |
| ) |