blob: 4ec2f429174ddf8214870fcb9a9913da2117f485 [file] [log] [blame]
Joseph Huber1c4c2142020-09-16 21:15:561OpenMP LLVM Documentation
2==================
3
4OpenMP LLVM's documentation is written in reStructuredText, a lightweight
5plaintext markup language (file extension `.rst`). While the
6reStructuredText documentation should be quite readable in source form, it
7is mostly meant to be processed by the Sphinx documentation generation
8system to create HTML pages which are hosted on <https://llvm.org/docs/> and
9updated after every commit. Manpage output is also supported, see below.
10
11If you instead would like to generate and view the HTML locally, install
12Sphinx <http://sphinx-doc.org/> and then do:
13
14 cd <build-dir>
Anton Rydahlb8805522023-07-29 01:01:1615 cmake -DLLVM_ENABLE_SPHINX=true -DSPHINX_OUTPUT_HTML=true -DCMAKE_MODULE_PATH=/path/to/llvm/cmake/modules <src-dir>
16 make docs-openmp-html
17 $BROWSER <build-dir>/docs/html/index.html
Joseph Huber1c4c2142020-09-16 21:15:5618
19The mapping between reStructuredText files and generated documentation is
20`docs/Foo.rst` <-> `<build-dir>/projects/openmp/docs//html/Foo.html` <->
21`https://openmp.llvm.org/docs/Foo.html`.
22
23If you are interested in writing new documentation, you will want to read
24`llvm/docs/SphinxQuickstartTemplate.rst` which will get you writing
25documentation very fast and includes examples of the most important
26reStructuredText markup syntax.
27
28Manpage Output
29===============
30
31Building the manpages is similar to building the HTML documentation. The
32primary difference is to use the `man` makefile target, instead of the
33default (which is `html`). Sphinx then produces the man pages in the
34directory `<build-dir>/docs/man/`.
35
36 cd <build-dir>
37 cmake -DLLVM_ENABLE_SPHINX=true -DSPHINX_OUTPUT_MAN=true <src-dir>
38 make
39 man -l >build-dir>/docs/man/FileCheck.1
40
41The correspondence between .rst files and man pages is
42`docs/CommandGuide/Foo.rst` <-> `<build-dir>/projects/openmp/docs//man/Foo.1`.
43These .rst files are also included during HTML generation so they are also
44viewable online (as noted above) at e.g.
45`https://openmp.llvm.org/docs/CommandGuide/Foo.html`.