mirror of
				git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
				synced 2025-09-04 20:19:47 +08:00 
			
		
		
		
	 606b9ac81a
			
		
	
	
		606b9ac81a
		
	
	
	
	
		
			
			Add a generic way to build only a reST sub-folder with or without a individual *build-theme*. * control *sub-folders* by environment SPHINXDIRS * control *build-theme* by environment SPHINX_CONF Folders with a conf.py file, matching $(srctree)/Documentation/*/conf.py can be build and distributed *stand-alone*. E.g. to compile only the html of 'media' and 'gpu' folder use:: make SPHINXDIRS="media gpu" htmldocs To use an additional sphinx-build configuration (*build-theme*) set the name of the configuration file to SPHINX_CONF. E.g. to compile only the html of 'media' with the *nit-picking* build use:: make SPHINXDIRS=media SPHINX_CONF=conf_nitpick.py htmldocs With this, the Documentation/conf.py is read first and updated with the configuration values from the Documentation/media/conf_nitpick.py. Signed-off-by: Markus Heiser <markus.heiser@darmarIT.de> Signed-off-by: Jonathan Corbet <corbet@lwn.net>
		
			
				
	
	
		
			33 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| # -*- coding: utf-8; mode: python -*-
 | |
| # pylint: disable=R0903, C0330, R0914, R0912, E0401
 | |
| 
 | |
| import os
 | |
| import sys
 | |
| from sphinx.util.pycompat import execfile_
 | |
| 
 | |
| # ------------------------------------------------------------------------------
 | |
| def loadConfig(namespace):
 | |
| # ------------------------------------------------------------------------------
 | |
| 
 | |
|     u"""Load an additional configuration file into *namespace*.
 | |
| 
 | |
|     The name of the configuration file is taken from the environment
 | |
|     ``SPHINX_CONF``. The external configuration file extends (or overwrites) the
 | |
|     configuration values from the origin ``conf.py``.  With this you are able to
 | |
|     maintain *build themes*.  """
 | |
| 
 | |
|     config_file = os.environ.get("SPHINX_CONF", None)
 | |
|     if (config_file is not None
 | |
|         and os.path.normpath(namespace["__file__"]) != os.path.normpath(config_file) ):
 | |
|         config_file = os.path.abspath(config_file)
 | |
| 
 | |
|         if os.path.isfile(config_file):
 | |
|             sys.stdout.write("load additional sphinx-config: %s\n" % config_file)
 | |
|             config = namespace.copy()
 | |
|             config['__file__'] = config_file
 | |
|             execfile_(config_file, config)
 | |
|             del config['__file__']
 | |
|             namespace.update(config)
 | |
|         else:
 | |
|             sys.stderr.write("WARNING: additional sphinx-config not found: %s\n" % config_file)
 |