|
@@ -14,6 +14,11 @@
|
|
|
|
|
|
import sys
|
|
|
import os
|
|
|
+import sphinx
|
|
|
+
|
|
|
+# Get Sphinx version
|
|
|
+major, minor, patch = map(int, sphinx.__version__.split("."))
|
|
|
+
|
|
|
|
|
|
# If extensions (or modules to document with autodoc) are in another directory,
|
|
|
# add these directories to sys.path here. If the directory is relative to the
|
|
@@ -31,12 +36,11 @@ from load_config import loadConfig
|
|
|
# ones.
|
|
|
extensions = ['kernel-doc', 'rstFlatTable', 'kernel_include']
|
|
|
|
|
|
-# Gracefully handle missing rst2pdf.
|
|
|
-try:
|
|
|
- import rst2pdf
|
|
|
- extensions += ['rst2pdf.pdfbuilder']
|
|
|
-except ImportError:
|
|
|
- pass
|
|
|
+# The name of the math extension changed on Sphinx 1.4
|
|
|
+if minor > 3:
|
|
|
+ extensions.append("sphinx.ext.imgmath")
|
|
|
+else:
|
|
|
+ extensions.append("sphinx.ext.pngmath")
|
|
|
|
|
|
# Add any paths that contain templates here, relative to this directory.
|
|
|
templates_path = ['_templates']
|
|
@@ -253,16 +257,56 @@ htmlhelp_basename = 'TheLinuxKerneldoc'
|
|
|
|
|
|
latex_elements = {
|
|
|
# The paper size ('letterpaper' or 'a4paper').
|
|
|
-#'papersize': 'letterpaper',
|
|
|
+'papersize': 'a4paper',
|
|
|
|
|
|
# The font size ('10pt', '11pt' or '12pt').
|
|
|
-#'pointsize': '10pt',
|
|
|
-
|
|
|
-# Additional stuff for the LaTeX preamble.
|
|
|
-#'preamble': '',
|
|
|
+'pointsize': '8pt',
|
|
|
|
|
|
# Latex figure (float) alignment
|
|
|
#'figure_align': 'htbp',
|
|
|
+
|
|
|
+# Don't mangle with UTF-8 chars
|
|
|
+'inputenc': '',
|
|
|
+'utf8extra': '',
|
|
|
+
|
|
|
+# Additional stuff for the LaTeX preamble.
|
|
|
+ 'preamble': '''
|
|
|
+ % Adjust margins
|
|
|
+ \\usepackage[margin=0.5in, top=1in, bottom=1in]{geometry}
|
|
|
+
|
|
|
+ % Allow generate some pages in landscape
|
|
|
+ \\usepackage{lscape}
|
|
|
+
|
|
|
+ % Put notes in gray color and let them be inside a table
|
|
|
+
|
|
|
+ \\definecolor{MyGray}{rgb}{0.80,0.80,0.80}
|
|
|
+
|
|
|
+ \\makeatletter\\newenvironment{graybox}{%
|
|
|
+ \\begin{lrbox}{\\@tempboxa}\\begin{minipage}{\\columnwidth}}{\\end{minipage}\\end{lrbox}%
|
|
|
+ \\colorbox{MyGray}{\\usebox{\\@tempboxa}}
|
|
|
+ }\\makeatother
|
|
|
+
|
|
|
+ \\makeatletter
|
|
|
+ \\renewenvironment{notice}[2]{
|
|
|
+ \\begin{graybox}
|
|
|
+ \\bf\\it
|
|
|
+ \\def\\py@noticetype{#1}
|
|
|
+ \\par\\strong{#2}
|
|
|
+ \\csname py@noticestart@#1\\endcsname
|
|
|
+ }
|
|
|
+ {
|
|
|
+ \\csname py@noticeend@\\py@noticetype\\endcsname
|
|
|
+ \\end{graybox}
|
|
|
+ }
|
|
|
+ \\makeatother
|
|
|
+
|
|
|
+ % Use some font with UTF-8 support with XeLaTeX
|
|
|
+ \\usepackage{fontspec}
|
|
|
+ \\setsansfont{DejaVu Serif}
|
|
|
+ \\setromanfont{DejaVu Sans}
|
|
|
+ \\setmonofont{DejaVu Sans Mono}
|
|
|
+
|
|
|
+ '''
|
|
|
}
|
|
|
|
|
|
# Grouping the document tree into LaTeX files. List of tuples
|