* Initial Set Of Changes + Made openroad binary customizable with OPENROAD_BIN env var: defaults to `openroad` + OL Install allows for customizable flow.tcl for testing + OR Issue now explicitly requires input and output defs as arguments + Updated routing commands - Removed standalone tritonroute - Removed CTS sqr_cap/sqr_rest options (no longer supported) * Partial Merge Of The-OpenROAD-Project/OpenLane#472 Co-authored-by: Osama Hammad <osama21@aucegypt.edu> * Fixed Docker Environment `import opendbpy` -> `opendb` eigen is an archive now Removed Diamond Search Height Completely * Remove Minimum Distance, FP w/ layer numbers (per discussion with @osamahammad21) * Update PDK ~ Install new version of Git to handle Open_PDK's cloning woes ~ Update Commit Hash With Fixes To `download.sh` ~ Address The-OpenROAD-Project/OpenLane#475 while I'm here * Update OpenROAD, Remove Standalone OpenSTA * Remove Standalone OpenDP * Update TritonRoute Invocation + Random Seed Specified + Removed deprecated values from .params file (Not gonna remove .params file just yet) + Updated or_issue.py to handle incomplete file paths * update report layer usage * Makefile Tweaks - Decreased duplication ~ Now using long flags (See #476) * Updates to run_designs, OR commit * number of grt antenna repairer iterations * Update Magic & Netgen for LVS Issue - Remove blabla from completeTestSet pending RTimothyEdwards/netgen#21 + Update Magic and Netgen to same versions as master + Update Readme to replace efabless links with OpenLane ones * Update Magic/Netgen to Latest Versions - Remove usb_cdc_core from fastestTestSet pending RTimothyEdwards/netgen#21 Co-authored-by: Osama Hammad <osama21@aucegypt.edu>
Build Instructions
The goal of these instructions is to build a single image that contains all the tools used by openlane. This is done through two stages.
- Building
- Merging
Note
The repo already provides a snapshot of the tarballs which are generated by going through step 1, so you can jump to 2 if you wish to save time building the tools.
Building
The following make target iteratively builds each tool in a separate docker image (i.e. one docker image per tool). Then we export the binaries generated by each tool's image to tarballs in tar directory.
make build-all
Merging
Finally, we merge all the tools in a single docker image.
make merge
Additional information
Building and exporting a specific tool
You can choose to build and export a specific tool by running:
make build-<tool>
The following are the available tools:
klayout cugr drcu yosys magic openroad_app padring netgen vlogtoverilog openphysyn cvc
Rebuilding
Following that, go through steps 1 and 2 to generate and update docker image.
make build-all DOCKER_BUILD_OPTS=--no-cache
make merge
This should you remove the existing tarballs. Then, build and export specific tool(s).