46 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
OpenMP LLVM Documentation
 | 
						|
==================
 | 
						|
 | 
						|
OpenMP LLVM's documentation is written in reStructuredText, a lightweight
 | 
						|
plaintext markup language (file extension `.rst`). While the
 | 
						|
reStructuredText documentation should be quite readable in source form, it
 | 
						|
is mostly meant to be processed by the Sphinx documentation generation
 | 
						|
system to create HTML pages which are hosted on <https://llvm.org/docs/> and
 | 
						|
updated after every commit. Manpage output is also supported, see below.
 | 
						|
 | 
						|
If you instead would like to generate and view the HTML locally, install
 | 
						|
Sphinx <http://sphinx-doc.org/> and then do:
 | 
						|
 | 
						|
    cd <build-dir>
 | 
						|
    cmake -DLLVM_ENABLE_SPHINX=true -DSPHINX_OUTPUT_HTML=true <src-dir>
 | 
						|
    make
 | 
						|
    $BROWSER <build-dir>/projects/openmp/docs//html/index.html
 | 
						|
 | 
						|
The mapping between reStructuredText files and generated documentation is
 | 
						|
`docs/Foo.rst` <-> `<build-dir>/projects/openmp/docs//html/Foo.html` <->
 | 
						|
`https://openmp.llvm.org/docs/Foo.html`.
 | 
						|
 | 
						|
If you are interested in writing new documentation, you will want to read
 | 
						|
`llvm/docs/SphinxQuickstartTemplate.rst` which will get you writing
 | 
						|
documentation very fast and includes examples of the most important
 | 
						|
reStructuredText markup syntax.
 | 
						|
 | 
						|
Manpage Output
 | 
						|
===============
 | 
						|
 | 
						|
Building the manpages is similar to building the HTML documentation. The
 | 
						|
primary difference is to use the `man` makefile target, instead of the
 | 
						|
default (which is `html`). Sphinx then produces the man pages in the
 | 
						|
directory `<build-dir>/docs/man/`.
 | 
						|
 | 
						|
    cd <build-dir>
 | 
						|
    cmake -DLLVM_ENABLE_SPHINX=true -DSPHINX_OUTPUT_MAN=true <src-dir>
 | 
						|
    make
 | 
						|
    man -l >build-dir>/docs/man/FileCheck.1
 | 
						|
 | 
						|
The correspondence between .rst files and man pages is
 | 
						|
`docs/CommandGuide/Foo.rst` <-> `<build-dir>/projects/openmp/docs//man/Foo.1`.
 | 
						|
These .rst files are also included during HTML generation so they are also
 | 
						|
viewable online (as noted above) at e.g.
 | 
						|
`https://openmp.llvm.org/docs/CommandGuide/Foo.html`.
 |