Skip to content

Commit 6c7e24a

Browse files
committed
fix conflicts
Signed-off-by: arthurjolo <[email protected]>
2 parents 00ef76a + 82a5c44 commit 6c7e24a

File tree

319 files changed

+21536
-82402
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

319 files changed

+21536
-82402
lines changed
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
name: Lint Tcl code
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
pull_request:
8+
branches:
9+
- master
10+
11+
jobs:
12+
build:
13+
runs-on: ${{ vars.USE_SELF_HOSTED == 'true' && 'self-hosted' || 'ubuntu-latest' }}
14+
steps:
15+
- name: Checkout repository
16+
uses: actions/checkout@v4
17+
18+
- name: Install Dependencies
19+
run: |
20+
python3 -m venv venv
21+
venv/bin/pip install tclint==0.4.2
22+
23+
- name: Lint
24+
run: |
25+
source venv/bin/activate
26+
tclfmt --version
27+
tclfmt --in-place .
28+
git diff --exit-code
29+
tclint --no-check-style .

.github/workflows/github-actions-manual-update-rules.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,14 @@ jobs:
2222
python-version: "3.10"
2323
- name: Install Python Packages
2424
run: |
25-
pip install firebase-admin
25+
python3 -m venv venv
26+
venv/bin/pip install firebase-admin
2627
- name: Execute Python Script Update
2728
env:
2829
CREDS_FILE: ${{ secrets.CREDS_FILE }}
2930
API_BASE_URL: ${{ secrets.API_BASE_URL }}
3031
run: |
32+
source venv/bin/activate
3133
if [[ "${{ github.event.inputs.type }}" == "overwrite" ]]; then
3234
python flow/util/updateRules.py --keyFile "${CREDS_FILE}" --apiURL ${API_BASE_URL} --commitSHA $(git rev-parse HEAD) --overwrite
3335
else

.github/workflows/github-actions-update-rules.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,14 @@ jobs:
2424
python-version: "3.10"
2525
- name: Install Python Packages
2626
run: |
27-
pip install firebase-admin
27+
python3 -m venv venv
28+
venv/bin/pip install firebase-admin
2829
- name: Execute Python Script Update
2930
env:
3031
CREDS_FILE: ${{ secrets.CREDS_FILE }}
3132
API_BASE_URL: ${{ secrets.API_BASE_URL }}
3233
run: |
34+
source ./venv/bin/activate
3335
echo ${{ github.event_name }}
3436
echo ${{ github.event.client_payload.type }}
3537
if [[ "${{ github.event_name }}" == "repository_dispatch" && "${{ github.event.client_payload.type }}" == "overwrite" ]]; then

.github/workflows/github-actions-yaml-test.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,13 @@ jobs:
2323
- name: Check if FlowVariables.md is up to date
2424
run: |
2525
git diff --exit-code docs/user/FlowVariables.md
26+
- name: Install dependencies
27+
run: |
28+
python3 -m venv venv
29+
venv/bin/pip install --quiet yamlfix==1.17.0
2630
- name: Run yamlfix check
2731
run: |
28-
pip install --quiet yamlfix==1.17.0
32+
source venv/bin/activate
2933
yamlfix --version
3034
set -x
3135
yamlfix -c yamlfix.toml flow/scripts/variables.yaml

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ flow/rc_model.bin
2929
flow/*.tif.gz
3030
flow/*.def.v
3131

32-
3332
# RePlAce deps
3433
*PORT9.dat
3534
*POST9.dat
@@ -103,3 +102,6 @@ bazel-bin
103102
bazel-out
104103
bazel-OpenROAD-flow-scripts
105104
bazel-testlogs
105+
106+
# python venv
107+
venv/

dev_env.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# Set developer paths and environment variables here,
44
# user settings go in ./env.sh
55
function __setpaths() {
6-
local DIR=$(readlink -f "$(dirname "${BASH_SOURCE[0]}")")
6+
local DIR=$(readlink -f "$(dirname "${BASH_SOURCE[0]:-${(%):-%x}}")")
77
[ "$(find $DIR/dependencies -type f -user root)" ] && echo "WARNING! Files set up by sudo found in $DIR"
88
export PATH="$DIR/dependencies/bin:$PATH"
99
export CMAKE_INSTALL_RPATH=$DIR/dependencies/lib:$DIR/dependencies/lib64

docs/tutorials/FlowTutorial.md

Lines changed: 9 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -49,69 +49,25 @@ Use the `bash` shell to run commands and scripts.
4949

5050
#### OpenROAD-flow-scripts Installation
5151

52-
To install OpenROAD-flow-scripts, refer to the
52+
To install OpenROAD-flow-scripts, refer to the
5353
[Build or installing ORFS Dependencies](https://openroad-flow-scripts.readthedocs.io/en/latest/#build-or-installing-orfs-dependencies)
5454
documentation.
5555

5656
In general, we recommend using `Docker` for an efficient user
57-
experience. Install OpenROAD-flow-scripts using a docker as described
58-
here [Build from sources using Docker](../user/BuildWithDocker.md).
57+
experience. Please refere to the [Docker Shell](../user/DockerShell.md)
58+
documentation.
5959

6060
:::{Note}
61-
If you need to update an existing OpenROAD-flow-scripts installation,
62-
follow instructions from [here](../user/FAQS.md#how-do-i-update-openroad-flow-scripts).
61+
If you need a custom Docker image, you can build your own with the instructions
62+
provided at: [Build from sources using Docker](../user/BuildWithDocker.md).
6363
:::
6464

65-
OpenROAD-flow-scripts installation is complete.
66-
67-
#### Running OpenROAD-flow-scripts inside the Docker
68-
69-
Launch the docker with OpenROAD-flow-scripts container as follows:
70-
71-
```shell
72-
docker run --rm -it -u $(id -u ${USER}):$(id -g ${USER}) -v $(pwd)/flow:/OpenROAD-flow-scripts/flow openroad/flow-ubuntu22.04-builder
73-
```
74-
75-
:::{seealso}
76-
To launch OpenROAD GUI inside the docker, based on the OS, use the command from [here](../user/BuildWithDocker.md#enable-gui-support).
65+
:::{Note}
66+
If you need to update an existing OpenROAD-flow-scripts installation:
67+
- For local installs follow instructions from [here](../user/FAQS.md#how-do-i-update-openroad-flow-scripts).
68+
- For Docker run `docker pull openroad/orfs:latest` to update the image.
7769
:::
7870

79-
Once you are entered into OpenROAD-flow-scripts container run:
80-
81-
```shell
82-
source env.sh
83-
```
84-
85-
If your installation is successful, you will see the following message:
86-
87-
```
88-
OPENROAD: /OpenROAD-flow-scripts/tools/OpenROAD
89-
```
90-
91-
#### Verifying the Docker based Installation
92-
93-
To verify the installation run the built-in example design as follows:
94-
95-
```shell
96-
cd flow
97-
make
98-
```
99-
100-
A successful run end with the log:
101-
102-
```
103-
[INFO] Writing out GDS/OAS 'results/nangate45/gcd/base/6_1_merged.gds'
104-
Elapsed time: 0:10.44[h:]min:sec. CPU time: user 2.17 sys 0.54 (26%). Peak memory: 274184KB.
105-
cp results/nangate45/gcd/base/6_1_merged.gds results/nangate45/gcd/base/6_final.gds
106-
Log Elapsed seconds
107-
1_1_yosys 2
108-
3_3_place_gp 1
109-
4_1_cts 8
110-
5_2_route 10
111-
6_1_merge 10
112-
6_report 3
113-
```
114-
11571
## Configuring The Design
11672

11773
This section shows how to set up the necessary platform and design

docs/user/BuildWithDocker.md

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# Build from sources using Docker
22

3+
:::{Note}
4+
This document describes how to build your own Docker image.
5+
If your goal is to use the latest version of OpenROAD-Flow-Scripts,
6+
please refer to the [Docker Shell](./DockerShell.md) documentation.
7+
:::
8+
39
## Prerequisites
410

511
- For this method you only need to install
@@ -31,9 +37,9 @@ This greatly helps to reduce the compilation time needed.
3137

3238
We recommend to use a Docker image of a supported OS
3339
and install OpenROAD using the pre-built binaries from
34-
Precision Innovations.
35-
You can start the container in an interactive mode using
36-
the command below.
40+
Precision Innovations.
41+
You can start the container in an interactive mode using
42+
the command below.
3743

3844
```shell
3945
docker run -it ubuntu:22.04
@@ -87,7 +93,7 @@ exit
8793
```
8894

8995
Alternatively you may also use the `docker_shell` utility as follows.
90-
It is important that you are in the `flow` directory.
96+
It is important that you are in the `flow` directory.
9197

9298
```shell
9399
cd flow
@@ -121,17 +127,17 @@ Then use:
121127
docker run --rm -it -e DISPLAY=<IP_LIKE_FROM_TUTORIAL>:0 --network host --privileged <IMAGE_NAME>
122128
```
123129

124-
Alternatively, you may also use the `docker_shell` utility for GUI as follows.
125-
It is important that you are in the `flow` directory.
130+
Alternatively, you may also use the `docker_shell` utility for GUI as follows.
131+
It is important that you are in the `flow` directory.
126132

127133
```shell
128134
cd flow
129135
util/docker_shell gui_final
130136
```
131137

132138
```{note}
133-
`docker_shell` is a helpful utility to automate the
134-
aforementioned Docker commands using the user's parameters.
139+
`docker_shell` is a helpful utility to automate the
140+
aforementioned Docker commands using the user's parameters.
135141
Do refer to the documentation [here](./DockerShell.md).
136142
```
137143

docs/user/BuildWithPrebuilt.md

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -34,17 +34,6 @@ Step 3: Run the install command based on platform use package installer.
3434
sudo apt install ./openroad_2.0_amd64-ubuntu20.04.deb
3535
```
3636

37-
## Install Klayout and Yosys
38-
Please ensure the Klayout version (denoted with `klayoutVersion` variable) is consistent with the one used in [DependencyInstaller script](https://github.com/The-OpenROAD-Project/OpenROAD-flow-scripts/blob/master/etc/DependencyInstaller.sh).
39-
40-
Instructions for installing:
41-
- [Klayout>=0.28.8](https://www.klayout.de/build.html)
42-
- [Yosys>=0.39](https://github.com/YosysHQ/oss-cad-suite-build/blob/master/README.md#installation)
43-
44-
```{tip} Unfortunately KLayout maintainers do not provide Debian 11 compatible packages. You can follow the build-from-sources instruction (Version >=0.25) and Ubuntu 22 instructions [here](https://www.klayout.de/build.html#:~:text=Building%20KLayout%20on%20Linux%20(Version%20%3E%3D%200.25)).
45-
```
46-
47-
4837
## Verify Installation
4938
You may clone the OpenROAD-flow-scripts repository non-recursively.
5039

docs/user/DockerShell.md

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,24 @@
11
Building example design using Docker image
22
==========================================
33

4-
The `docker_shell` script is used as a prefix to launch a command using a OpenROAD docker image.
4+
The `docker_shell` script is used to launch a command using a OpenROAD-flow-scripts docker image.
55

66
Also, the current working directory is mapped into the Docker image using the current user's credentials.
77

88
Build docker image
99
------------------
1010

11-
First build the docker image:
11+
You can skip this step if you would like to use the latest version from the master
12+
branch. If you are developing ORFS/OR, you should build your own image.
1213

1314
```
1415
cd OpenROAD-flow-scripts
1516
./build_openroad.sh
1617
```
1718

19+
Run ORFS using `docker_shell`
20+
-----------------------------
21+
1822
Build an example design and run the GUI:
1923

2024
```
@@ -33,7 +37,7 @@ If you need to use a different Docker image than default, override by using the
3337
environment variable:
3438

3539
```
36-
OR_IMAGE=openroad/flow-ubuntu22.04-builder:v1234 util/docker_shell make
40+
OR_IMAGE=openroad/orfs:v1234 util/docker_shell make
3741
```
3842

3943
If you have built your OpenROAD Docker image using prebuilt binaries,

0 commit comments

Comments
 (0)