~ [ 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.6.58)


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