[PATCH 1/1] doc: building documentation
Simon Glass
sjg at chromium.org
Sat Jan 7 19:55:59 CET 2023
Hi Heinrich,
On Fri, 30 Dec 2022 at 12:08, Heinrich Schuchardt
<heinrich.schuchardt at canonical.com> wrote:
>
>
>
> On 12/30/22 20:02, Simon Glass wrote:
> > Hi,
> >
> > On Fri, 30 Dec 2022 at 12:31, Heinrich Schuchardt
> > <heinrich.schuchardt at canonical.com> wrote:
> >>
> >>
> >>
> >> On 12/30/22 19:12, Tom Rini wrote:
> >>> On Fri, Dec 30, 2022 at 11:51:15AM -0600, Simon Glass wrote:
> >>>> Hi Heinrich,
> >>>>
> >>>> On Thu, 29 Dec 2022 at 22:08, Heinrich Schuchardt
> >>>> <heinrich.schuchardt at canonical.com> wrote:
> >>>>>
> >>>>> Provide a man-page describing how to build the U-Boot documentation.
> >>>>>
> >>>>> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt at canonical.com>
> >>>>> ---
> >>>>> doc/build/documentation.rst | 90 +++++++++++++++++++++++++++++++++++++
> >>>>> doc/build/index.rst | 1 +
> >>>>> 2 files changed, 91 insertions(+)
> >>>>> create mode 100644 doc/build/documentation.rst
> >>>>>
> >>>>> diff --git a/doc/build/documentation.rst b/doc/build/documentation.rst
> >>>>> new file mode 100644
> >>>>> index 0000000000..896264dd7c
> >>>>> --- /dev/null
> >>>>> +++ b/doc/build/documentation.rst
> >>>>> @@ -0,0 +1,90 @@
> >>>>> +.. SPDX-License-Identifier: GPL-2.0+:
> >>>>> +
> >>>>> +Building documentation
> >>>>> +======================
> >>>>> +
> >>>>> +The U-Boot documentation is based on the Sphinx documentation generator.
> >>>>> +
> >>>>> +HTML documentation
> >>>>> +------------------
> >>>>> +
> >>>>> +The *htmldocs* target is used to build the HTML documentation. It uses the
> >>>>> +`Read the Docs Sphinx theme <https://sphinx-rtd-theme.readthedocs.io/en/stable/>`_.
> >>>>> +
> >>>>> +.. code-block:: bash
> >>>>> +
> >>>>> + # Create Python environment 'myenv'
> >>>>> + python3 -m venv myenv
> >>>>> + # Activate the Python environment
> >>>>> + . myenv/bin/activate
> >>>>> + # Install build requirements
> >>>>> + python3 -m pip install -r doc/sphinx/requirements.txt
> >>>>> + # Build the documentation
> >>>>> + make htmldocs
> >>>>> + # Deactivate the Python environment
> >>>>> + deactivate
> >>>>> + # Display the documentation in a graphical web browser
> >>>>> + x-www-browser doc/output/index.html
> >>>>
> >>>> If this is necessary then it is a bit of a sad indictment on Python. I
> >>>> would use:
> >>>>
> >>>> pip3 install -r doc/sphinx/requirements.txt
> >>>> make htmldocs
> >>>
> >>> Which part, exactly? Using a virtual environment is I believe a normal
> >>> best practice and "python3 -m pip" rather than "pip3" I assume is
> >>> another best practice for portability. Then maybe the final step should
> >>> say "Review" not "Display" ?
> >>>
> >>
> >> Review only applies to documentation developers.
> >> Normal users just want to read the documentation.
> >
> > Using a virtual environment seems annoying to me. Should we put that
> > in a separate section for those who want to do it?
>
> Current Ubuntu packages are incompatible with the readthedocs theme.
> Therefore I describe a way of building that works for most users.
OK I see. Somehow it builds OK for me on 22.04 but I have not tried
newer versions.
Would it be possible to have the virtual env start/stop stuff in a
separate place? I suppose that would not be ideal either, since it
would make the instructions more complicated for those that have
trouble...
Reviewed-by: Simon Glass <sjg at chromium.org>
Regards,
Simon
More information about the U-Boot
mailing list