mirror of
				https://github.com/smaeul/u-boot.git
				synced 2025-10-22 16:48:14 +01:00 
			
		
		
		
	Update to use the new docs.u-boot.org URL for documentation. Signed-off-by: Simon Glass <sjg@chromium.org>
		
			
				
	
	
		
			105 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			105 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
| .. SPDX-License-Identifier: GPL-2.0+:
 | |
| 
 | |
| Building documentation
 | |
| ======================
 | |
| 
 | |
| The U-Boot documentation is based on the Sphinx documentation generator.
 | |
| 
 | |
| In addition to the Python packages listed in ``doc/sphinx/requirements.txt``,
 | |
| the following dependencies are needed to build the documentation:
 | |
| 
 | |
| * fontconfig
 | |
| 
 | |
| * graphviz
 | |
| 
 | |
| * imagemagick
 | |
| 
 | |
| * texinfo (if building the `Infodoc documentation`_)
 | |
| 
 | |
| 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
 | |
| 
 | |
| The HTML documentation is published at https://docs.u-boot.org. The build
 | |
| process for that site is controlled by the file *.readthedocs.yml*.
 | |
| 
 | |
| Infodoc documentation
 | |
| ---------------------
 | |
| 
 | |
| The *infodocs* target builds both a texinfo and an info file:
 | |
| 
 | |
| .. 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 infodocs
 | |
|     # Deactivate the Python environment
 | |
|     deactivate
 | |
|     # Display the documentation
 | |
|     info doc/output/texinfo/u-boot.info
 | |
| 
 | |
| PDF documentation
 | |
| -----------------
 | |
| 
 | |
| The *pdfdocs* target is meant to be used to build PDF documenation.
 | |
| As v2023.01 it fails with 'LaTeX Error: Too deeply nested'.
 | |
| 
 | |
| We can use texi2pdf instead:
 | |
| 
 | |
| .. 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 texinfodocs
 | |
|     # Deactivate the Python environment
 | |
|     deactivate
 | |
|     # Convert to PDF
 | |
|     texi2pdf doc/output/texinfo/u-boot.texi
 | |
| 
 | |
| Texinfo documentation
 | |
| ---------------------
 | |
| 
 | |
| To build only the texinfo documentation the *texinfodocs* target is used:
 | |
| 
 | |
| .. 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 texinfodocs
 | |
|     # Deactivate the Python environment
 | |
|     deactivate
 | |
| 
 | |
| The output is in file *doc/output/texinfo/u-boot.texi*.
 |