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


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