The install and tarfile targets were moved to //packaging/ to isolate
@rules_pkg loads from downstream consumers, but this broke the
user-facing //:install and //:tarfile targets. Add alias() rules at
the top level to restore the public API while keeping the implementation
in the packaging/ subdirectory.
Update documentation to use //:install and //:tarfile. Also fix
docs/user/Bazel.md which incorrectly listed rules_shell as a
dev_dependency (it is loaded in the root BUILD.bazel).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
Remove leading underscore from synth and use comma separators
for the list of ORFS stages, as suggested in PR #10011 review.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
bazel-orfs replaced per-stage _deps targets with a single //:deps
wrapper using --output_groups=deps. Update documentation to reflect
the new syntax while keeping tmp/ directory paths unchanged.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
Address PR #9827 review feedback:
- Group all dev_dependency bazel_dep entries into a separate section
in MODULE.bazel for easier reasoning (hzeller)
- Combine two register_toolchains calls into one (gemini-code-assist)
- Split downstream MODULE.bazel docs into required and suggested
sections, making toolchains_llvm optional (hzeller)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
Add a section to Bazel.md covering the public API surface
(//:openroad and //:openroad_py), the minimal MODULE.bazel
boilerplate downstream consumers need (qt-bazel git_override,
toolchains_llvm configuration), and which deps are dev_dependency.
Signed-off-by: Claude Code <noreply@anthropic.com>
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
bazel-orfs deploy.tpl no longer accepts a positional path argument.
Files are now always placed in tmp/<package>/<name>/ under the
workspace root and deploy.tpl checks that tmp/ is in .gitignore
and tmp is in .bazelignore.
Update all documentation examples from the old syntax:
bazelisk run foo_deps /tmp/place
to the current syntax:
bazelisk run foo_deps
tmp/<package>/foo_deps/make do-place
Also fix non-existent gcd_deps target to gcd_place_deps.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
I updated the install procedure to use the pkg_tar
module. The install works as before, but now you
can also install optionally to another location.
Closes: #9635
Signed-off-by: Friedrich Beckmann <friedrich.beckmann@tha.de>
An alternative implementation of deltaDebug.py with a
standalone Python script (whittle.py) that delegates ODB manipulation
to small TCL scripts via `openroad -exit`. This works with any OpenROAD
build, even without Python compiled in.
deltaDebug.py is kept as-is during the transition period, but the
plan is to delete it once we're happy with whittle.py
Run with stock python3 — no extra packages needed beyond the standard
library.
Quick test using bazel-orfs gcd targets:
bazelisk run //test/orfs/gcd:gcd_place_deps -- do-place ISSUE_TAG=test global_place_issue print-PWD
mkdir whittle && cd whittle
tar --strip-components=1 -xzf ../tmp/test/orfs/gcd/gcd_place_deps/_main/test/orfs/gcd/global_place_test.tar.gz
sed -i 's/openroad -no_init/openroad -exit -no_init/g' \
run-me-gcd-asap7-base.sh
export PATH=$(pwd)/../../install/OpenROAD/bin:$PATH
python3 ../etc/whittle.py \
--persistence 2 --use_stdout \
--error_string " 100 | " \
--timeout 120 \
--base_db_path \
../tmp/test/orfs/gcd/gcd_place_deps/_main/test/orfs/gcd/results/asap7/gcd/base/2_floorplan.odb \
--step ./run-me-gcd-asap7-base.sh
After a minute or two:
```
Step 19, Nets level debugging, Insts 0, Nets 1, cut elements 1, timeout 2 minutes
[C]
Error Code found: 100 |
Removed 212 unused masters.
___________________________________
Resultant file is ../tmp/test/orfs/gcd/gcd_place_deps/_main/test/orfs/gcd/results/asap7/gcd/base/deltaDebug_base_result_2_floorplan.odb
Delta Debugging Done!
```
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
- Change stamp = True to stamp = -1 so the genrule only stamps
with --config=release (--stamp), not on every build. This keeps
dev builds deterministic and cache-safe.
- Set OPENROAD_GIT_DESCRIBE to empty string instead of duplicating
OPENROAD_VERSION (which caused "26Q1-... 26Q1-..." in the banner).
- Remove OPENROAD_GIT_DESCRIBE from OPENROAD_DEFINES to avoid macro
redefinition with the genrule-generated Version.hh.
- Document version stamping in Bazel.md and Build.md.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
These instructions are waiting for `:openroad` bazel targets to be OpenROAD
built with GUI support and `:openroad-cli` to be OpenROAD built
with CLI only support.
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>