Skip to content

Latest commit

 

History

History

docs

README.md

OpenROAD Documentation

This docs/ hierarchy houses code and raw files to build the on-line documentation (using Sphinx) and manual pages using (using Pandoc)

This on-line documentation is available at https://openroad.readthedocs.io/en/latest/.

Build with Bazel

The Bazel targets use pinned Python packages and a pinned pandoc, so they need no manual setup.

Build the man pages:

bazelisk build //docs:man_pages

Build the Sphinx docs and check them, as ReadTheDocs does:

bazelisk test //docs:sphinx_build_test

Local make flow

The make instructions below build the docs with docs/Makefile.

Requires:

  • Python 3.x
  • Pip
  • virtualenv
  • doxygen

Prerequisites

  • To install pandoc, refer to this link. apt-get should just work for Ubuntu. This is only needed for the make instructions below; bazelisk build //docs:man_pages uses a pinned pandoc from bazel/requirements.in instead.
  • To install sphinx requirements, create a virtual environment (e.g. conda/virtualenv) and then run pip install -r requirements.txt.

You may install Doxygen from this link. Most methods of installation are fine, just ensure that doxygen is in $PATH. This is needed for Doxygen compilation.

To install Python packages:

virtualenv .venv
source .venv/bin/activate
pip install -r requirements.txt

Build instructions for Pandoc manpages

The -j16 command is optional for speeding up the manpage compilation process by using multiple jobs based on the number of cores in your system.

make clean

# Note this step is important as it regenerates the documentation using latest sources.
make preprocess && make all -j16

To view manpages

You will be prompted to enter the RELATIVE path to cat folders which is optional.

man openroad

Build instructions for Sphinx docs

HTML docs

make html

Check for broken links

make checklinks