Skip to content

Commit

Permalink
merge in master
Browse files Browse the repository at this point in the history
Signed-off-by: andyfox-rushc <[email protected]>
  • Loading branch information
andyfox-rushc committed Dec 31, 2024
2 parents 401fb51 + eba58a2 commit 24320bd
Show file tree
Hide file tree
Showing 401 changed files with 55,827 additions and 51,560 deletions.
2 changes: 1 addition & 1 deletion .clang-tidy
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ Checks: >
-google-runtime-references,
-google-explicit-constructor,
performance-*,
-performance-enum-size,
bugprone-*,
-bugprone-branch-clone,
-bugprone-easily-swappable-parameters,
Expand All @@ -52,7 +53,6 @@ Checks: >
-modernize-use-transparent-functors,
misc-*,
-misc-const-correctness,
-misc-include-cleaner,
-misc-no-recursion,
-misc-non-private-member-variables-in-classes,
-misc-redundant-expression,
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/github-actions-clang-tidy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
exclude: "*/codeGenerator/templates/*"
split_workflow: true
- name: Upload Artifacts
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: clang-tidy-review
path: |
Expand Down
18 changes: 14 additions & 4 deletions docs/contrib/DeveloperGuide.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ and headers together.

- `src/`
This folder contains the source files for individual tools.

| `src` | Purpose |
|-----------------|--------------|
| `CMakeLists.txt` | `add_subdirectory` for each tool|
Expand Down Expand Up @@ -245,12 +245,12 @@ file. Detailed documentation should be the `tool/README.md` file.
Please refer to the README formatting [guide](ReadmeFormat.md).
Our top-level READMEs, in particular, have to be formatted in this specific
manner because of the automatic parsing used to convert the READMEs into
manpages.
manpages.
:::

## Tool Flow Namespace

Tool namespaces are usually three-lettered lowercase letters.
Tool namespaces are usually three-lettered lowercase letters.

- Verilog to DB (dbSTA)
- OpenDB: Open Database ([odb](../main/src/odb/README.md))
Expand Down Expand Up @@ -305,7 +305,7 @@ dependencies make this vastly more complicated.
1. `regression` script should only write files in a directory that is in the tool's `.gitignore` so the hierarchy does not have modified files in it as a result or running the regressions.
1. Regressions report no memory errors with `valgrind` (stretch goal).
1. Regressions report no memory leaks with `valgrind` (difficult).
1. Ensure the top-level README and Tcl format are compliant.
1. Ensure the top-level README and Tcl format are compliant.

## Code Linting and Formatting

Expand All @@ -318,6 +318,16 @@ clang-tidy -p ./build source_file.cpp
clang-format -i -style=file:.clang-format source_file.cpp
```

To run `clang-tidy` on all files, you can use the following script that runs
`clang-tidy` in parallel and also caches the results, so subsequent runs
only have to operate on changed files.

```shell
cmake . -B build # generate build files
ln -sf build/compile_commands.json . # make compilation db visible
/bin/sh etc/run-clang-tidy-cached.cc
```

## Doxygen

OpenROAD uses Doxygen style comments to generate documentation.
Expand Down
Loading

0 comments on commit 24320bd

Please sign in to comment.