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

TOMOYO Linux Cross Reference
Linux/Documentation/conf.py

Version: ~ [ linux-6.11.5 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.58 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.114 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.169 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.228 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.284 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.322 ] ~ [ 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.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /Documentation/conf.py (Version linux-6.11.5) and /Documentation/conf.py (Version linux-6.10.14)


  1 # -*- coding: utf-8 -*-                             1 # -*- coding: utf-8 -*-
  2 #                                                   2 #
  3 # The Linux Kernel documentation build configu      3 # The Linux Kernel documentation build configuration file, created by
  4 # sphinx-quickstart on Fri Feb 12 13:51:46 201      4 # sphinx-quickstart on Fri Feb 12 13:51:46 2016.
  5 #                                                   5 #
  6 # This file is execfile()d with the current di      6 # This file is execfile()d with the current directory set to its
  7 # containing dir.                                   7 # containing dir.
  8 #                                                   8 #
  9 # Note that not all possible configuration val      9 # Note that not all possible configuration values are present in this
 10 # autogenerated file.                              10 # autogenerated file.
 11 #                                                  11 #
 12 # All configuration values have a default; val     12 # All configuration values have a default; values that are commented out
 13 # serve to show the default.                       13 # serve to show the default.
 14                                                    14 
 15 import sys                                         15 import sys
 16 import os                                          16 import os
 17 import sphinx                                      17 import sphinx
 18 import shutil                                      18 import shutil
 19                                                    19 
 20 # helper                                           20 # helper
 21 # ------                                           21 # ------
 22                                                    22 
 23 def have_command(cmd):                             23 def have_command(cmd):
 24     """Search ``cmd`` in the ``PATH`` environm     24     """Search ``cmd`` in the ``PATH`` environment.
 25                                                    25 
 26     If found, return True.                         26     If found, return True.
 27     If not found, return False.                    27     If not found, return False.
 28     """                                            28     """
 29     return shutil.which(cmd) is not None           29     return shutil.which(cmd) is not None
 30                                                    30 
 31 # Get Sphinx version                               31 # Get Sphinx version
 32 major, minor, patch = sphinx.version_info[:3]      32 major, minor, patch = sphinx.version_info[:3]
 33                                                    33 
 34 #                                                  34 #
 35 # Warn about older versions that we don't want     35 # Warn about older versions that we don't want to support for much
 36 # longer.                                          36 # longer.
 37 #                                                  37 #
 38 if (major < 2) or (major == 2 and minor < 4):      38 if (major < 2) or (major == 2 and minor < 4):
 39     print('WARNING: support for Sphinx < 2.4 w     39     print('WARNING: support for Sphinx < 2.4 will be removed soon.')
 40                                                    40 
 41 # If extensions (or modules to document with a     41 # If extensions (or modules to document with autodoc) are in another directory,
 42 # add these directories to sys.path here. If t     42 # add these directories to sys.path here. If the directory is relative to the
 43 # documentation root, use os.path.abspath to m     43 # documentation root, use os.path.abspath to make it absolute, like shown here.
 44 sys.path.insert(0, os.path.abspath('sphinx'))      44 sys.path.insert(0, os.path.abspath('sphinx'))
 45 from load_config import loadConfig                 45 from load_config import loadConfig
 46                                                    46 
 47 # -- General configuration -------------------     47 # -- General configuration ------------------------------------------------
 48                                                    48 
 49 # If your documentation needs a minimal Sphinx     49 # If your documentation needs a minimal Sphinx version, state it here.
 50 needs_sphinx = '2.4.4'                             50 needs_sphinx = '2.4.4'
 51                                                    51 
 52 # Add any Sphinx extension module names here,      52 # Add any Sphinx extension module names here, as strings. They can be
 53 # extensions coming with Sphinx (named 'sphinx     53 # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
 54 # ones.                                            54 # ones.
 55 extensions = ['kerneldoc', 'rstFlatTable', 'ke     55 extensions = ['kerneldoc', 'rstFlatTable', 'kernel_include',
 56               'kfigure', 'sphinx.ext.ifconfig'     56               'kfigure', 'sphinx.ext.ifconfig', 'automarkup',
 57               'maintainers_include', 'sphinx.e     57               'maintainers_include', 'sphinx.ext.autosectionlabel',
 58               'kernel_abi', 'kernel_feat', 'tr     58               'kernel_abi', 'kernel_feat', 'translations']
 59                                                    59 
 60 if major >= 3:                                     60 if major >= 3:
 61     if (major > 3) or (minor > 0 or patch >= 2     61     if (major > 3) or (minor > 0 or patch >= 2):
 62         # Sphinx c function parser is more ped     62         # Sphinx c function parser is more pedantic with regards to type
 63         # checking. Due to that, having macros     63         # checking. Due to that, having macros at c:function cause problems.
 64         # Those needed to be scaped by using c     64         # Those needed to be scaped by using c_id_attributes[] array
 65         c_id_attributes = [                        65         c_id_attributes = [
 66             # GCC Compiler types not parsed by     66             # GCC Compiler types not parsed by Sphinx:
 67             "__restrict__",                        67             "__restrict__",
 68                                                    68 
 69             # include/linux/compiler_types.h:      69             # include/linux/compiler_types.h:
 70             "__iomem",                             70             "__iomem",
 71             "__kernel",                            71             "__kernel",
 72             "noinstr",                             72             "noinstr",
 73             "notrace",                             73             "notrace",
 74             "__percpu",                            74             "__percpu",
 75             "__rcu",                               75             "__rcu",
 76             "__user",                              76             "__user",
 77             "__force",                             77             "__force",
 78             "__counted_by_le",                     78             "__counted_by_le",
 79             "__counted_by_be",                     79             "__counted_by_be",
 80                                                    80 
 81             # include/linux/compiler_attribute     81             # include/linux/compiler_attributes.h:
 82             "__alias",                             82             "__alias",
 83             "__aligned",                           83             "__aligned",
 84             "__aligned_largest",                   84             "__aligned_largest",
 85             "__always_inline",                     85             "__always_inline",
 86             "__assume_aligned",                    86             "__assume_aligned",
 87             "__cold",                              87             "__cold",
 88             "__attribute_const__",                 88             "__attribute_const__",
 89             "__copy",                              89             "__copy",
 90             "__pure",                              90             "__pure",
 91             "__designated_init",                   91             "__designated_init",
 92             "__visible",                           92             "__visible",
 93             "__printf",                            93             "__printf",
 94             "__scanf",                             94             "__scanf",
 95             "__gnu_inline",                        95             "__gnu_inline",
 96             "__malloc",                            96             "__malloc",
 97             "__mode",                              97             "__mode",
 98             "__no_caller_saved_registers",         98             "__no_caller_saved_registers",
 99             "__noclone",                           99             "__noclone",
100             "__nonstring",                        100             "__nonstring",
101             "__noreturn",                         101             "__noreturn",
102             "__packed",                           102             "__packed",
103             "__pure",                             103             "__pure",
104             "__section",                          104             "__section",
105             "__always_unused",                    105             "__always_unused",
106             "__maybe_unused",                     106             "__maybe_unused",
107             "__used",                             107             "__used",
108             "__weak",                             108             "__weak",
109             "noinline",                           109             "noinline",
110             "__fix_address",                      110             "__fix_address",
111             "__counted_by",                       111             "__counted_by",
112                                                   112 
113             # include/linux/memblock.h:           113             # include/linux/memblock.h:
114             "__init_memblock",                    114             "__init_memblock",
115             "__meminit",                          115             "__meminit",
116                                                   116 
117             # include/linux/init.h:               117             # include/linux/init.h:
118             "__init",                             118             "__init",
119             "__ref",                              119             "__ref",
120                                                   120 
121             # include/linux/linkage.h:            121             # include/linux/linkage.h:
122             "asmlinkage",                         122             "asmlinkage",
123                                                   123 
124             # include/linux/btf.h                 124             # include/linux/btf.h
125             "__bpf_kfunc",                        125             "__bpf_kfunc",
126         ]                                         126         ]
127                                                   127 
128 else:                                             128 else:
129     extensions.append('cdomain')                  129     extensions.append('cdomain')
130                                                   130 
131 # Ensure that autosectionlabel will produce un    131 # Ensure that autosectionlabel will produce unique names
132 autosectionlabel_prefix_document = True           132 autosectionlabel_prefix_document = True
133 autosectionlabel_maxdepth = 2                     133 autosectionlabel_maxdepth = 2
134                                                   134 
135 # Load math renderer:                             135 # Load math renderer:
136 # For html builder, load imgmath only when its    136 # For html builder, load imgmath only when its dependencies are met.
137 # mathjax is the default math renderer since S    137 # mathjax is the default math renderer since Sphinx 1.8.
138 have_latex =  have_command('latex')               138 have_latex =  have_command('latex')
139 have_dvipng = have_command('dvipng')              139 have_dvipng = have_command('dvipng')
140 load_imgmath = have_latex and have_dvipng         140 load_imgmath = have_latex and have_dvipng
141                                                   141 
142 # Respect SPHINX_IMGMATH (for html docs only)     142 # Respect SPHINX_IMGMATH (for html docs only)
143 if 'SPHINX_IMGMATH' in os.environ:                143 if 'SPHINX_IMGMATH' in os.environ:
144     env_sphinx_imgmath = os.environ['SPHINX_IM    144     env_sphinx_imgmath = os.environ['SPHINX_IMGMATH']
145     if 'yes' in env_sphinx_imgmath:               145     if 'yes' in env_sphinx_imgmath:
146         load_imgmath = True                       146         load_imgmath = True
147     elif 'no' in env_sphinx_imgmath:              147     elif 'no' in env_sphinx_imgmath:
148         load_imgmath = False                      148         load_imgmath = False
149     else:                                         149     else:
150         sys.stderr.write("Unknown env SPHINX_I    150         sys.stderr.write("Unknown env SPHINX_IMGMATH=%s ignored.\n" % env_sphinx_imgmath)
151                                                   151 
152 # Always load imgmath for Sphinx <1.8 or for e    152 # Always load imgmath for Sphinx <1.8 or for epub docs
153 load_imgmath = (load_imgmath or (major == 1 an    153 load_imgmath = (load_imgmath or (major == 1 and minor < 8)
154                 or 'epub' in sys.argv)            154                 or 'epub' in sys.argv)
155                                                   155 
156 if load_imgmath:                                  156 if load_imgmath:
157     extensions.append("sphinx.ext.imgmath")       157     extensions.append("sphinx.ext.imgmath")
158     math_renderer = 'imgmath'                     158     math_renderer = 'imgmath'
159 else:                                             159 else:
160     math_renderer = 'mathjax'                     160     math_renderer = 'mathjax'
161                                                   161 
162 # Add any paths that contain templates here, r    162 # Add any paths that contain templates here, relative to this directory.
163 templates_path = ['sphinx/templates']             163 templates_path = ['sphinx/templates']
164                                                   164 
165 # The suffix(es) of source filenames.             165 # The suffix(es) of source filenames.
166 # You can specify multiple suffix as a list of    166 # You can specify multiple suffix as a list of string:
167 # source_suffix = ['.rst', '.md']                 167 # source_suffix = ['.rst', '.md']
168 source_suffix = '.rst'                            168 source_suffix = '.rst'
169                                                   169 
170 # The encoding of source files.                   170 # The encoding of source files.
171 #source_encoding = 'utf-8-sig'                    171 #source_encoding = 'utf-8-sig'
172                                                   172 
173 # The master toctree document.                    173 # The master toctree document.
174 master_doc = 'index'                              174 master_doc = 'index'
175                                                   175 
176 # General information about the project.          176 # General information about the project.
177 project = 'The Linux Kernel'                      177 project = 'The Linux Kernel'
178 copyright = 'The kernel development community'    178 copyright = 'The kernel development community'
179 author = 'The kernel development community'       179 author = 'The kernel development community'
180                                                   180 
181 # The version info for the project you're docu    181 # The version info for the project you're documenting, acts as replacement for
182 # |version| and |release|, also used in variou    182 # |version| and |release|, also used in various other places throughout the
183 # built documents.                                183 # built documents.
184 #                                                 184 #
185 # In a normal build, version and release are a    185 # In a normal build, version and release are are set to KERNELVERSION and
186 # KERNELRELEASE, respectively, from the Makefi    186 # KERNELRELEASE, respectively, from the Makefile via Sphinx command line
187 # arguments.                                      187 # arguments.
188 #                                                 188 #
189 # The following code tries to extract the info    189 # The following code tries to extract the information by reading the Makefile,
190 # when Sphinx is run directly (e.g. by Read th    190 # when Sphinx is run directly (e.g. by Read the Docs).
191 try:                                              191 try:
192     makefile_version = None                       192     makefile_version = None
193     makefile_patchlevel = None                    193     makefile_patchlevel = None
194     for line in open('../Makefile'):              194     for line in open('../Makefile'):
195         key, val = [x.strip() for x in line.sp    195         key, val = [x.strip() for x in line.split('=', 2)]
196         if key == 'VERSION':                      196         if key == 'VERSION':
197             makefile_version = val                197             makefile_version = val
198         elif key == 'PATCHLEVEL':                 198         elif key == 'PATCHLEVEL':
199             makefile_patchlevel = val             199             makefile_patchlevel = val
200         if makefile_version and makefile_patch    200         if makefile_version and makefile_patchlevel:
201             break                                 201             break
202 except:                                           202 except:
203     pass                                          203     pass
204 finally:                                          204 finally:
205     if makefile_version and makefile_patchleve    205     if makefile_version and makefile_patchlevel:
206         version = release = makefile_version +    206         version = release = makefile_version + '.' + makefile_patchlevel
207     else:                                         207     else:
208         version = release = "unknown version"     208         version = release = "unknown version"
209                                                   209 
210 #                                                 210 #
211 # HACK: there seems to be no easy way for us t    211 # HACK: there seems to be no easy way for us to get at the version and
212 # release information passed in from the makef    212 # release information passed in from the makefile...so go pawing through the
213 # command-line options and find it for ourselv    213 # command-line options and find it for ourselves.
214 #                                                 214 #
215 def get_cline_version():                          215 def get_cline_version():
216     c_version = c_release = ''                    216     c_version = c_release = ''
217     for arg in sys.argv:                          217     for arg in sys.argv:
218         if arg.startswith('version='):            218         if arg.startswith('version='):
219             c_version = arg[8:]                   219             c_version = arg[8:]
220         elif arg.startswith('release='):          220         elif arg.startswith('release='):
221             c_release = arg[8:]                   221             c_release = arg[8:]
222     if c_version:                                 222     if c_version:
223         if c_release:                             223         if c_release:
224             return c_version + '-' + c_release    224             return c_version + '-' + c_release
225         return c_version                          225         return c_version
226     return version # Whatever we came up with     226     return version # Whatever we came up with before
227                                                   227 
228 # The language for content autogenerated by Sp    228 # The language for content autogenerated by Sphinx. Refer to documentation
229 # for a list of supported languages.              229 # for a list of supported languages.
230 #                                                 230 #
231 # This is also used if you do content translat    231 # This is also used if you do content translation via gettext catalogs.
232 # Usually you set "language" from the command     232 # Usually you set "language" from the command line for these cases.
233 language = 'en'                                   233 language = 'en'
234                                                   234 
235 # There are two options for replacing |today|:    235 # There are two options for replacing |today|: either, you set today to some
236 # non-false value, then it is used:               236 # non-false value, then it is used:
237 #today = ''                                       237 #today = ''
238 # Else, today_fmt is used as the format for a     238 # Else, today_fmt is used as the format for a strftime call.
239 #today_fmt = '%B %d, %Y'                          239 #today_fmt = '%B %d, %Y'
240                                                   240 
241 # List of patterns, relative to source directo    241 # List of patterns, relative to source directory, that match files and
242 # directories to ignore when looking for sourc    242 # directories to ignore when looking for source files.
243 exclude_patterns = ['output']                     243 exclude_patterns = ['output']
244                                                   244 
245 # The reST default role (used for this markup:    245 # The reST default role (used for this markup: `text`) to use for all
246 # documents.                                      246 # documents.
247 #default_role = None                              247 #default_role = None
248                                                   248 
249 # If true, '()' will be appended to :func: etc    249 # If true, '()' will be appended to :func: etc. cross-reference text.
250 #add_function_parentheses = True                  250 #add_function_parentheses = True
251                                                   251 
252 # If true, the current module name will be pre    252 # If true, the current module name will be prepended to all description
253 # unit titles (such as .. function::).            253 # unit titles (such as .. function::).
254 #add_module_names = True                          254 #add_module_names = True
255                                                   255 
256 # If true, sectionauthor and moduleauthor dire    256 # If true, sectionauthor and moduleauthor directives will be shown in the
257 # output. They are ignored by default.            257 # output. They are ignored by default.
258 #show_authors = False                             258 #show_authors = False
259                                                   259 
260 # The name of the Pygments (syntax highlightin    260 # The name of the Pygments (syntax highlighting) style to use.
261 pygments_style = 'sphinx'                         261 pygments_style = 'sphinx'
262                                                   262 
263 # A list of ignored prefixes for module index     263 # A list of ignored prefixes for module index sorting.
264 #modindex_common_prefix = []                      264 #modindex_common_prefix = []
265                                                   265 
266 # If true, keep warnings as "system message" p    266 # If true, keep warnings as "system message" paragraphs in the built documents.
267 #keep_warnings = False                            267 #keep_warnings = False
268                                                   268 
269 # If true, `todo` and `todoList` produce outpu    269 # If true, `todo` and `todoList` produce output, else they produce nothing.
270 todo_include_todos = False                        270 todo_include_todos = False
271                                                   271 
272 primary_domain = 'c'                              272 primary_domain = 'c'
273 highlight_language = 'none'                       273 highlight_language = 'none'
274                                                   274 
275 # -- Options for HTML output -----------------    275 # -- Options for HTML output ----------------------------------------------
276                                                   276 
277 # The theme to use for HTML and HTML Help page    277 # The theme to use for HTML and HTML Help pages.  See the documentation for
278 # a list of builtin themes.                       278 # a list of builtin themes.
279                                                   279 
280 # Default theme                                   280 # Default theme
281 html_theme = 'alabaster'                          281 html_theme = 'alabaster'
282 html_css_files = []                               282 html_css_files = []
283                                                   283 
284 if "DOCS_THEME" in os.environ:                    284 if "DOCS_THEME" in os.environ:
285     html_theme = os.environ["DOCS_THEME"]         285     html_theme = os.environ["DOCS_THEME"]
286                                                   286 
287 if html_theme == 'sphinx_rtd_theme' or html_th    287 if html_theme == 'sphinx_rtd_theme' or html_theme == 'sphinx_rtd_dark_mode':
288     # Read the Docs theme                         288     # Read the Docs theme
289     try:                                          289     try:
290         import sphinx_rtd_theme                   290         import sphinx_rtd_theme
291         html_theme_path = [sphinx_rtd_theme.ge    291         html_theme_path = [sphinx_rtd_theme.get_html_theme_path()]
292                                                   292 
293         # Add any paths that contain custom st    293         # Add any paths that contain custom static files (such as style sheets) here,
294         # relative to this directory. They are    294         # relative to this directory. They are copied after the builtin static files,
295         # so a file named "default.css" will o    295         # so a file named "default.css" will overwrite the builtin "default.css".
296         html_css_files = [                        296         html_css_files = [
297             'theme_overrides.css',                297             'theme_overrides.css',
298         ]                                         298         ]
299                                                   299 
300         # Read the Docs dark mode override the    300         # Read the Docs dark mode override theme
301         if html_theme == 'sphinx_rtd_dark_mode    301         if html_theme == 'sphinx_rtd_dark_mode':
302             try:                                  302             try:
303                 import sphinx_rtd_dark_mode       303                 import sphinx_rtd_dark_mode
304                 extensions.append('sphinx_rtd_    304                 extensions.append('sphinx_rtd_dark_mode')
305             except ImportError:                   305             except ImportError:
306                 html_theme == 'sphinx_rtd_them    306                 html_theme == 'sphinx_rtd_theme'
307                                                   307 
308         if html_theme == 'sphinx_rtd_theme':      308         if html_theme == 'sphinx_rtd_theme':
309                 # Add color-specific RTD norma    309                 # Add color-specific RTD normal mode
310                 html_css_files.append('theme_r    310                 html_css_files.append('theme_rtd_colors.css')
311                                                   311 
312         html_theme_options = {                    312         html_theme_options = {
313             'navigation_depth': -1,               313             'navigation_depth': -1,
314         }                                         314         }
315                                                   315 
316     except ImportError:                           316     except ImportError:
317         html_theme = 'alabaster'                  317         html_theme = 'alabaster'
318                                                   318 
319 if "DOCS_CSS" in os.environ:                      319 if "DOCS_CSS" in os.environ:
320     css = os.environ["DOCS_CSS"].split(" ")       320     css = os.environ["DOCS_CSS"].split(" ")
321                                                   321 
322     for l in css:                                 322     for l in css:
323         html_css_files.append(l)                  323         html_css_files.append(l)
324                                                   324 
325 if major <= 1 and minor < 8:                      325 if major <= 1 and minor < 8:
326     html_context = {                              326     html_context = {
327         'css_files': [],                          327         'css_files': [],
328     }                                             328     }
329                                                   329 
330     for l in html_css_files:                      330     for l in html_css_files:
331         html_context['css_files'].append('_sta    331         html_context['css_files'].append('_static/' + l)
332                                                   332 
333 if  html_theme == 'alabaster':                    333 if  html_theme == 'alabaster':
334     html_theme_options = {                        334     html_theme_options = {
335         'description': get_cline_version(),       335         'description': get_cline_version(),
336         'page_width': '65em',                     336         'page_width': '65em',
337         'sidebar_width': '15em',                  337         'sidebar_width': '15em',
338         'fixed_sidebar': 'true',                  338         'fixed_sidebar': 'true',
339         'font_size': 'inherit',                   339         'font_size': 'inherit',
340         'font_family': 'serif',                   340         'font_family': 'serif',
341     }                                             341     }
342                                                   342 
343 sys.stderr.write("Using %s theme\n" % html_the    343 sys.stderr.write("Using %s theme\n" % html_theme)
344                                                   344 
345 # Add any paths that contain custom static fil    345 # Add any paths that contain custom static files (such as style sheets) here,
346 # relative to this directory. They are copied     346 # relative to this directory. They are copied after the builtin static files,
347 # so a file named "default.css" will overwrite    347 # so a file named "default.css" will overwrite the builtin "default.css".
348 html_static_path = ['sphinx-static']              348 html_static_path = ['sphinx-static']
349                                                   349 
350 # If true, Docutils "smart quotes" will be use    350 # If true, Docutils "smart quotes" will be used to convert quotes and dashes
351 # to typographically correct entities.  Howeve    351 # to typographically correct entities.  However, conversion of "--" to "—"
352 # is not always what we want, so enable only q    352 # is not always what we want, so enable only quotes.
353 smartquotes_action = 'q'                          353 smartquotes_action = 'q'
354                                                   354 
355 # Custom sidebar templates, maps document name    355 # Custom sidebar templates, maps document names to template names.
356 # Note that the RTD theme ignores this            356 # Note that the RTD theme ignores this
357 html_sidebars = { '**': ['searchbox.html', 'ke    357 html_sidebars = { '**': ['searchbox.html', 'kernel-toc.html', 'sourcelink.html']}
358                                                   358 
359 # about.html is available for alabaster theme.    359 # about.html is available for alabaster theme. Add it at the front.
360 if html_theme == 'alabaster':                     360 if html_theme == 'alabaster':
361     html_sidebars['**'].insert(0, 'about.html'    361     html_sidebars['**'].insert(0, 'about.html')
362                                                   362 
363 # The name of an image file (relative to this     363 # The name of an image file (relative to this directory) to place at the top
364 # of the sidebar.                                 364 # of the sidebar.
365 html_logo = 'images/logo.svg'                     365 html_logo = 'images/logo.svg'
366                                                   366 
367 # Output file base name for HTML help builder.    367 # Output file base name for HTML help builder.
368 htmlhelp_basename = 'TheLinuxKerneldoc'           368 htmlhelp_basename = 'TheLinuxKerneldoc'
369                                                   369 
370 # -- Options for LaTeX output ----------------    370 # -- Options for LaTeX output ---------------------------------------------
371                                                   371 
372 latex_elements = {                                372 latex_elements = {
373     # The paper size ('letterpaper' or 'a4pape    373     # The paper size ('letterpaper' or 'a4paper').
374     'papersize': 'a4paper',                       374     'papersize': 'a4paper',
375                                                   375 
376     # The font size ('10pt', '11pt' or '12pt')    376     # The font size ('10pt', '11pt' or '12pt').
377     'pointsize': '11pt',                          377     'pointsize': '11pt',
378                                                   378 
379     # Latex figure (float) alignment              379     # Latex figure (float) alignment
380     #'figure_align': 'htbp',                      380     #'figure_align': 'htbp',
381                                                   381 
382     # Don't mangle with UTF-8 chars               382     # Don't mangle with UTF-8 chars
383     'inputenc': '',                               383     'inputenc': '',
384     'utf8extra': '',                              384     'utf8extra': '',
385                                                   385 
386     # Set document margins                        386     # Set document margins
387     'sphinxsetup': '''                            387     'sphinxsetup': '''
388         hmargin=0.5in, vmargin=1in,               388         hmargin=0.5in, vmargin=1in,
389         parsedliteralwraps=true,                  389         parsedliteralwraps=true,
390         verbatimhintsturnover=false,              390         verbatimhintsturnover=false,
391     ''',                                          391     ''',
392                                                   392 
393     #                                             393     #
394     # Some of our authors are fond of deep nes    394     # Some of our authors are fond of deep nesting; tell latex to
395     # cope.                                       395     # cope.
396     #                                             396     #
397     'maxlistdepth': '10',                         397     'maxlistdepth': '10',
398                                                   398 
399     # For CJK One-half spacing, need to be in     399     # For CJK One-half spacing, need to be in front of hyperref
400     'extrapackages': r'\usepackage{setspace}',    400     'extrapackages': r'\usepackage{setspace}',
401                                                   401 
402     # Additional stuff for the LaTeX preamble.    402     # Additional stuff for the LaTeX preamble.
403     'preamble': '''                               403     'preamble': '''
404         % Use some font with UTF-8 support wit    404         % Use some font with UTF-8 support with XeLaTeX
405         \\usepackage{fontspec}                    405         \\usepackage{fontspec}
406         \\setsansfont{DejaVu Sans}                406         \\setsansfont{DejaVu Sans}
407         \\setromanfont{DejaVu Serif}              407         \\setromanfont{DejaVu Serif}
408         \\setmonofont{DejaVu Sans Mono}           408         \\setmonofont{DejaVu Sans Mono}
409     ''',                                          409     ''',
410 }                                                 410 }
411                                                   411 
412 # Fix reference escape troubles with Sphinx 1.    412 # Fix reference escape troubles with Sphinx 1.4.x
413 if major == 1:                                    413 if major == 1:
414     latex_elements['preamble']  += '\\renewcom    414     latex_elements['preamble']  += '\\renewcommand*{\\DUrole}[2]{ #2 }\n'
415                                                   415 
416                                                   416 
417 # Load kerneldoc specific LaTeX settings          417 # Load kerneldoc specific LaTeX settings
418 latex_elements['preamble'] += '''                 418 latex_elements['preamble'] += '''
419         % Load kerneldoc specific LaTeX settin    419         % Load kerneldoc specific LaTeX settings
420         \\input{kerneldoc-preamble.sty}           420         \\input{kerneldoc-preamble.sty}
421 '''                                               421 '''
422                                                   422 
423 # With Sphinx 1.6, it is possible to change th    423 # With Sphinx 1.6, it is possible to change the Bg color directly
424 # by using:                                       424 # by using:
425 #       \definecolor{sphinxnoteBgColor}{RGB}{2    425 #       \definecolor{sphinxnoteBgColor}{RGB}{204,255,255}
426 #       \definecolor{sphinxwarningBgColor}{RGB    426 #       \definecolor{sphinxwarningBgColor}{RGB}{255,204,204}
427 #       \definecolor{sphinxattentionBgColor}{R    427 #       \definecolor{sphinxattentionBgColor}{RGB}{255,255,204}
428 #       \definecolor{sphinximportantBgColor}{R    428 #       \definecolor{sphinximportantBgColor}{RGB}{192,255,204}
429 #                                                 429 #
430 # However, it require to use sphinx heavy box     430 # However, it require to use sphinx heavy box with:
431 #                                                 431 #
432 #       \renewenvironment{sphinxlightbox} {%      432 #       \renewenvironment{sphinxlightbox} {%
433 #               \\begin{sphinxheavybox}           433 #               \\begin{sphinxheavybox}
434 #       }                                         434 #       }
435 #               \\end{sphinxheavybox}             435 #               \\end{sphinxheavybox}
436 #       }                                         436 #       }
437 #                                                 437 #
438 # Unfortunately, the implementation is buggy:     438 # Unfortunately, the implementation is buggy: if a note is inside a
439 # table, it isn't displayed well. So, for now,    439 # table, it isn't displayed well. So, for now, let's use boring
440 # black and white notes.                          440 # black and white notes.
441                                                   441 
442 # Grouping the document tree into LaTeX files.    442 # Grouping the document tree into LaTeX files. List of tuples
443 # (source start file, target name, title,         443 # (source start file, target name, title,
444 #  author, documentclass [howto, manual, or ow    444 #  author, documentclass [howto, manual, or own class]).
445 # Sorted in alphabetical order                    445 # Sorted in alphabetical order
446 latex_documents = [                               446 latex_documents = [
447 ]                                                 447 ]
448                                                   448 
449 # Add all other index files from Documentation    449 # Add all other index files from Documentation/ subdirectories
450 for fn in os.listdir('.'):                        450 for fn in os.listdir('.'):
451     doc = os.path.join(fn, "index")               451     doc = os.path.join(fn, "index")
452     if os.path.exists(doc + ".rst"):              452     if os.path.exists(doc + ".rst"):
453         has = False                               453         has = False
454         for l in latex_documents:                 454         for l in latex_documents:
455             if l[0] == doc:                       455             if l[0] == doc:
456                 has = True                        456                 has = True
457                 break                             457                 break
458         if not has:                               458         if not has:
459             latex_documents.append((doc, fn +     459             latex_documents.append((doc, fn + '.tex',
460                                     'Linux %s     460                                     'Linux %s Documentation' % fn.capitalize(),
461                                     'The kerne    461                                     'The kernel development community',
462                                     'manual'))    462                                     'manual'))
463                                                   463 
464 # The name of an image file (relative to this     464 # The name of an image file (relative to this directory) to place at the top of
465 # the title page.                                 465 # the title page.
466 #latex_logo = None                                466 #latex_logo = None
467                                                   467 
468 # For "manual" documents, if this is true, the    468 # For "manual" documents, if this is true, then toplevel headings are parts,
469 # not chapters.                                   469 # not chapters.
470 #latex_use_parts = False                          470 #latex_use_parts = False
471                                                   471 
472 # If true, show page references after internal    472 # If true, show page references after internal links.
473 #latex_show_pagerefs = False                      473 #latex_show_pagerefs = False
474                                                   474 
475 # If true, show URL addresses after external l    475 # If true, show URL addresses after external links.
476 #latex_show_urls = False                          476 #latex_show_urls = False
477                                                   477 
478 # Documents to append as an appendix to all ma    478 # Documents to append as an appendix to all manuals.
479 #latex_appendices = []                            479 #latex_appendices = []
480                                                   480 
481 # If false, no module index is generated.         481 # If false, no module index is generated.
482 #latex_domain_indices = True                      482 #latex_domain_indices = True
483                                                   483 
484 # Additional LaTeX stuff to be copied to build    484 # Additional LaTeX stuff to be copied to build directory
485 latex_additional_files = [                        485 latex_additional_files = [
486     'sphinx/kerneldoc-preamble.sty',              486     'sphinx/kerneldoc-preamble.sty',
487 ]                                                 487 ]
488                                                   488 
489                                                   489 
490 # -- Options for manual page output ----------    490 # -- Options for manual page output ---------------------------------------
491                                                   491 
492 # One entry per manual page. List of tuples       492 # One entry per manual page. List of tuples
493 # (source start file, name, description, autho    493 # (source start file, name, description, authors, manual section).
494 man_pages = [                                     494 man_pages = [
495     (master_doc, 'thelinuxkernel', 'The Linux     495     (master_doc, 'thelinuxkernel', 'The Linux Kernel Documentation',
496      [author], 1)                                 496      [author], 1)
497 ]                                                 497 ]
498                                                   498 
499 # If true, show URL addresses after external l    499 # If true, show URL addresses after external links.
500 #man_show_urls = False                            500 #man_show_urls = False
501                                                   501 
502                                                   502 
503 # -- Options for Texinfo output --------------    503 # -- Options for Texinfo output -------------------------------------------
504                                                   504 
505 # Grouping the document tree into Texinfo file    505 # Grouping the document tree into Texinfo files. List of tuples
506 # (source start file, target name, title, auth    506 # (source start file, target name, title, author,
507 #  dir menu entry, description, category)         507 #  dir menu entry, description, category)
508 texinfo_documents = [                             508 texinfo_documents = [
509     (master_doc, 'TheLinuxKernel', 'The Linux     509     (master_doc, 'TheLinuxKernel', 'The Linux Kernel Documentation',
510      author, 'TheLinuxKernel', 'One line descr    510      author, 'TheLinuxKernel', 'One line description of project.',
511      'Miscellaneous'),                            511      'Miscellaneous'),
512 ]                                                 512 ]
513                                                   513 
514 # -- Options for Epub output -----------------    514 # -- Options for Epub output ----------------------------------------------
515                                                   515 
516 # Bibliographic Dublin Core info.                 516 # Bibliographic Dublin Core info.
517 epub_title = project                              517 epub_title = project
518 epub_author = author                              518 epub_author = author
519 epub_publisher = author                           519 epub_publisher = author
520 epub_copyright = copyright                        520 epub_copyright = copyright
521                                                   521 
522 # A list of files that should not be packed in    522 # A list of files that should not be packed into the epub file.
523 epub_exclude_files = ['search.html']              523 epub_exclude_files = ['search.html']
524                                                   524 
525 #=======                                          525 #=======
526 # rst2pdf                                         526 # rst2pdf
527 #                                                 527 #
528 # Grouping the document tree into PDF files. L    528 # Grouping the document tree into PDF files. List of tuples
529 # (source start file, target name, title, auth    529 # (source start file, target name, title, author, options).
530 #                                                 530 #
531 # See the Sphinx chapter of https://ralsina.me    531 # See the Sphinx chapter of https://ralsina.me/static/manual.pdf
532 #                                                 532 #
533 # FIXME: Do not add the index file here; the r    533 # FIXME: Do not add the index file here; the result will be too big. Adding
534 # multiple PDF files here actually tries to ge    534 # multiple PDF files here actually tries to get the cross-referencing right
535 # *between* PDF files.                            535 # *between* PDF files.
536 pdf_documents = [                                 536 pdf_documents = [
537     ('kernel-documentation', u'Kernel', u'Kern    537     ('kernel-documentation', u'Kernel', u'Kernel', u'J. Random Bozo'),
538 ]                                                 538 ]
539                                                   539 
540 # kernel-doc extension configuration for runni    540 # kernel-doc extension configuration for running Sphinx directly (e.g. by Read
541 # the Docs). In a normal build, these are supp    541 # the Docs). In a normal build, these are supplied from the Makefile via command
542 # line arguments.                                 542 # line arguments.
543 kerneldoc_bin = '../scripts/kernel-doc'           543 kerneldoc_bin = '../scripts/kernel-doc'
544 kerneldoc_srctree = '..'                          544 kerneldoc_srctree = '..'
545                                                   545 
546 # --------------------------------------------    546 # ------------------------------------------------------------------------------
547 # Since loadConfig overwrites settings from th    547 # Since loadConfig overwrites settings from the global namespace, it has to be
548 # the last statement in the conf.py file          548 # the last statement in the conf.py file
549 # --------------------------------------------    549 # ------------------------------------------------------------------------------
550 loadConfig(globals())                             550 loadConfig(globals())
                                                      

~ [ 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