Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .bazelrc
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
build --incompatible_strict_action_env
common --experimental_isolated_extension_usages
build --cxxopt "-std=c++20" --host_cxxopt "-std=c++20"
try-import %workspace%/user.bazelrc
85 changes: 81 additions & 4 deletions MODULE.bazel
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,69 @@ bazel_dep(name = "bazel-orfs")
# To bump version, run: bazelisk run @bazel-orfs//:bump
git_override(
module_name = "bazel-orfs",
commit = "f8a4b694b37c8f5322323eba9a9ae37f9541ee17",
commit = "f8b36bf4a92c6e84317a70bab215bdcd2e25a26e",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The commit hash f8b36bf4a92c6e84317a70bab215bdcd2e25a26e is repeated in 7 different places across git_override and archive_override blocks (lines 13, 20, 28, 37, 38, 45, 46). This makes version updates highly manual and error-prone. While Bzlmod has limitations regarding variables in overrides, consider if some of these can be consolidated or if a script should be provided to automate the bump.

remote = "https://github.com/The-OpenROAD-Project/bazel-orfs.git",
)

bazel_dep(name = "bazel-orfs-sby")
git_override(
module_name = "bazel-orfs-sby",
commit = "f8b36bf4a92c6e84317a70bab215bdcd2e25a26e",
remote = "https://github.com/The-OpenROAD-Project/bazel-orfs",
strip_prefix = "sby",
)

bazel_dep(name = "bazel-orfs-yosys")
git_override(
module_name = "bazel-orfs-yosys",
commit = "f8b36bf4a92c6e84317a70bab215bdcd2e25a26e",
remote = "https://github.com/The-OpenROAD-Project/bazel-orfs",
strip_prefix = "yosys",
)

# Transitive dep of bazel-orfs (lives in its verilog/ subdirectory).
bazel_dep(name = "bazel-orfs-verilog")
archive_override(
module_name = "bazel-orfs-verilog",
strip_prefix = "bazel-orfs-f8b36bf4a92c6e84317a70bab215bdcd2e25a26e/verilog",
urls = ["https://github.com/The-OpenROAD-Project/bazel-orfs/archive/f8b36bf4a92c6e84317a70bab215bdcd2e25a26e.tar.gz"],
)

# Transitive deps of bazel-orfs that are not in BCR and need root-module overrides.
bazel_dep(name = "mock-klayout")
archive_override(
module_name = "mock-klayout",
strip_prefix = "bazel-orfs-f8b36bf4a92c6e84317a70bab215bdcd2e25a26e/mock/klayout",
urls = ["https://github.com/The-OpenROAD-Project/bazel-orfs/archive/f8b36bf4a92c6e84317a70bab215bdcd2e25a26e.tar.gz"],
)

bazel_dep(name = "openroad")
local_path_override(
module_name = "openroad",
path = "tools/OpenROAD",
)

bazel_dep(name = "qt-bazel")
git_override(
module_name = "qt-bazel",
commit = "886104974c2fd72439f2c33b5deebf0fe4649df7",
remote = "https://github.com/The-OpenROAD-Project/qt_bazel_prebuilts",
)

bazel_dep(name = "glpk", version = "5.0.bcr.4")
bazel_dep(name = "toolchains_llvm", version = "1.5.0")

bazel_dep(name = "rules_python", version = "1.8.5")
bazel_dep(name = "rules_shell", version = "0.6.1")

llvm = use_extension("@toolchains_llvm//toolchain/extensions:llvm.bzl", "llvm")
llvm.toolchain(
llvm_version = "20.1.8",
)
use_repo(llvm, "llvm_toolchain")

register_toolchains("@llvm_toolchain//:all")

python = use_extension("@rules_python//python/extensions:python.bzl", "python")
python.toolchain(
ignore_root_user_error = True,
Expand All @@ -35,12 +91,33 @@ orfs = use_extension("@bazel-orfs//:extension.bzl", "orfs_repositories")

# To bump version, run: bazelisk run @bazel-orfs//:bump
orfs.default(
image = "docker.io/openroad/orfs:v3.0-3273-gedf3d6bf",
image = "docker.io/openroad/orfs:26Q2-11-gb6ff3eb63",
# Use local files instead of docker image
makefile = "//flow:makefile",
makefile_yosys = "//flow:makefile_yosys",
pdk = "//flow:asap7",
sha256 = "f5692c6325ebcf27cc348e033355ec95c82c35ace1af7e72a0d352624ada143e",
sha256 = "38789fed89eef1147b0fa20453149abf829e8674eec7d04e2fcc49d94ef228bb",
variables_yaml = "//flow:scripts/variables.yaml",
)
use_repo(orfs, "com_github_nixos_patchelf_download")
use_repo(orfs, "config")
use_repo(orfs, "docker_orfs")
use_repo(orfs, "gnumake")
use_repo(orfs, "orfs_variable_metadata")
use_repo(orfs, "yosys")

# Auto-generate orfs_flow() targets from config.mk files.
# See bazel-orfs.md for usage.
orfs_designs = use_repo_rule("@bazel-orfs//private:designs.bzl", "orfs_designs")

orfs_designs(
name = "orfs_designs",
designs_dir = "//flow/designs:BUILD.bazel",
platforms = [
"asap7",
"gf180",
"ihp-sg13g2",
"nangate45",
"sky130hd",
"sky130hs",
],
)
5,132 changes: 1,298 additions & 3,834 deletions MODULE.bazel.lock

Large diffs are not rendered by default.

Loading
Loading