~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/sphinx/load_config.py

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /Documentation/sphinx/load_config.py (Version linux-6.12-rc7) and /Documentation/sphinx/load_config.py (Version linux-5.12.19)


  1 # -*- coding: utf-8; mode: python -*-               1 # -*- coding: utf-8; mode: python -*-
  2 # pylint: disable=R0903, C0330, R0914, R0912,       2 # pylint: disable=R0903, C0330, R0914, R0912, E0401
  3                                                     3 
  4 import os                                           4 import os
  5 import sys                                          5 import sys
  6 from sphinx.util.osutil import fs_encoding     !!   6 from sphinx.util.pycompat import execfile_
  7                                                     7 
  8 # --------------------------------------------      8 # ------------------------------------------------------------------------------
  9 def loadConfig(namespace):                          9 def loadConfig(namespace):
 10 # --------------------------------------------     10 # ------------------------------------------------------------------------------
 11                                                    11 
 12     u"""Load an additional configuration file      12     u"""Load an additional configuration file into *namespace*.
 13                                                    13 
 14     The name of the configuration file is take     14     The name of the configuration file is taken from the environment
 15     ``SPHINX_CONF``. The external configuratio     15     ``SPHINX_CONF``. The external configuration file extends (or overwrites) the
 16     configuration values from the origin ``con     16     configuration values from the origin ``conf.py``.  With this you are able to
 17     maintain *build themes*.  """                  17     maintain *build themes*.  """
 18                                                    18 
 19     config_file = os.environ.get("SPHINX_CONF"     19     config_file = os.environ.get("SPHINX_CONF", None)
 20     if (config_file is not None                    20     if (config_file is not None
 21         and os.path.normpath(namespace["__file     21         and os.path.normpath(namespace["__file__"]) != os.path.normpath(config_file) ):
 22         config_file = os.path.abspath(config_f     22         config_file = os.path.abspath(config_file)
 23                                                    23 
 24         # Let's avoid one conf.py file just du     24         # Let's avoid one conf.py file just due to latex_documents
 25         start = config_file.find('Documentatio     25         start = config_file.find('Documentation/')
 26         if start >= 0:                             26         if start >= 0:
 27             start = config_file.find('/', star     27             start = config_file.find('/', start + 1)
 28                                                    28 
 29         end = config_file.rfind('/')               29         end = config_file.rfind('/')
 30         if start >= 0 and end > 0:                 30         if start >= 0 and end > 0:
 31             dir = config_file[start + 1:end]       31             dir = config_file[start + 1:end]
 32                                                    32 
 33             print("source directory: %s" % dir     33             print("source directory: %s" % dir)
 34             new_latex_docs = []                    34             new_latex_docs = []
 35             latex_documents = namespace['latex     35             latex_documents = namespace['latex_documents']
 36                                                    36 
 37             for l in latex_documents:              37             for l in latex_documents:
 38                 if l[0].find(dir + '/') == 0:      38                 if l[0].find(dir + '/') == 0:
 39                     has = True                     39                     has = True
 40                     fn = l[0][len(dir) + 1:]       40                     fn = l[0][len(dir) + 1:]
 41                     new_latex_docs.append((fn,     41                     new_latex_docs.append((fn, l[1], l[2], l[3], l[4]))
 42                     break                          42                     break
 43                                                    43 
 44             namespace['latex_documents'] = new     44             namespace['latex_documents'] = new_latex_docs
 45                                                    45 
 46         # If there is an extra conf.py file, l     46         # If there is an extra conf.py file, load it
 47         if os.path.isfile(config_file):            47         if os.path.isfile(config_file):
 48             sys.stdout.write("load additional      48             sys.stdout.write("load additional sphinx-config: %s\n" % config_file)
 49             config = namespace.copy()              49             config = namespace.copy()
 50             config['__file__'] = config_file       50             config['__file__'] = config_file
 51             with open(config_file, 'rb') as f: !!  51             execfile_(config_file, config)
 52                 code = compile(f.read(), fs_en << 
 53                 exec(code, config)             << 
 54             del config['__file__']                 52             del config['__file__']
 55             namespace.update(config)               53             namespace.update(config)
 56         else:                                      54         else:
 57             config = namespace.copy()              55             config = namespace.copy()
 58             config['tags'].add("subproject")       56             config['tags'].add("subproject")
 59             namespace.update(config)               57             namespace.update(config)
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php