Add bazelisk run //:install#4003
Conversation
bazelisk run //:install Builds and installs OpenROAD (with GUI), Yosys, and yosys-slang to tools/install/. Re-runs are instant (stamp file per submodule commit). No sudo required. On Ubuntu, checks for missing -dev packages before building and fails fast with the apt install command. Other platforms not checked (we can't test them, contributions welcome). Docs updated to present Bazel / Nix / CMake as three equal paths. Zero churn: no changes to DependencyInstaller.sh, flow/, setup.sh, build_openroad.sh, or Nix flakes. Tested: gcd/nangate45 synth, asap7/uart synth (yosys-slang). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
| local missing_pkgs=() | ||
|
|
||
| # Commands needed for yosys build | ||
| command -v bison &>/dev/null || { missing_cmds+=(bison); missing_pkgs+=(bison); } |
There was a problem hiding this comment.
Without running the dependency installer there is no guarantee these will be usable versions.
There was a problem hiding this comment.
fixed, scope is now MVP for bazel users to build and debug OpenROAD
| echo "On Ubuntu this would be:" | ||
| echo " sudo apt install ${missing_pkgs[*]}" |
There was a problem hiding this comment.
again no guarantee this is right
There was a problem hiding this comment.
fixed, scope is now MVP for bazel users to build and debug OpenROAD
| # Currently only Ubuntu/Debian is checked. Dependency checking for | ||
| # other platforms (macOS, RHEL, Fedora, etc.) is not implemented | ||
| # because we cannot test them. Contributions welcome. | ||
| check_ubuntu_deps() { |
There was a problem hiding this comment.
What about all the other platforms?
There was a problem hiding this comment.
fixed, scope is now MVP for bazel users to build and debug OpenROAD
| | **CMake** | `sudo ./setup.sh` | Yes | Existing CMake developers | | ||
|
|
||
| Supported configurations are: Ubuntu 20.04, Ubuntu 22.04, Ubuntu 22.04(aarch64), RHEL 8, RockyLinux 9 and Debian 11. | ||
| ### Bazel (recommended) |
There was a problem hiding this comment.
This can't be the recommended method based on what is in this PR currently.
There was a problem hiding this comment.
fixed, scope is now MVP for bazel users to build and debug OpenROAD
Remove Ubuntu dep checking, --skip-openroad flag, and verbose help text. Docs: position Bazel as unsupported developer-only option, CMake first. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
Add cross-platform dep checking (Ubuntu, RHEL, macOS, openSUSE). Remove verbose help text. Docs: replace outdated Bazel section with //:install, mark as unsupported developer-only path. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
Address review feedback: make it clear this is not a general-purpose installer but specifically for bazel-orfs developers. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
|
@vvbandeira @maliberty please retrigger, CI outage |
bazel/BUILD only existed to export the bazel-orfs patches I had introduced. Since those patches landed upstream (bazel-orfs PR The-OpenROAD-Project#720) and were removed in the previous commit, the package is no longer needed. Dropping it lets //:install_for_bazel reference bazel/install.sh as a same-package file again, the way it has been on master since PR The-OpenROAD-Project#4003 — so this PR no longer touches that rule. Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
Builds and installs OpenROAD (with GUI), Yosys, and yosys-slang to tools/install/. Re-runs are instant (stamp file per submodule commit). No sudo required.
On Ubuntu, checks for missing -dev packages before building and fails fast with the apt install command. Other platforms not checked (we can't test them, contributions welcome).
Docs updated to present Bazel / Nix / CMake as three equal paths.
Zero churn: no changes to DependencyInstaller.sh, flow/, setup.sh, build_openroad.sh, or Nix flakes.
Tested: gcd/nangate45 synth, asap7/uart synth (yosys-slang).