mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-03-30 19:15:14 +00:00
Documentation/sphinx: set version and release properly
Read the version and release from the top level Makefile (for use when Sphinx is invoked directly, by e.g. Read the Docs), but override them via Sphinx command line arguments in a normal documentation build. Signed-off-by: Jani Nikula <jani.nikula@intel.com>
This commit is contained in:
parent
24dcdeb28b
commit
c13ce448c8
2 changed files with 26 additions and 5 deletions
|
@ -27,7 +27,7 @@ PAPEROPT_a4 = -D latex_paper_size=a4
|
||||||
PAPEROPT_letter = -D latex_paper_size=letter
|
PAPEROPT_letter = -D latex_paper_size=letter
|
||||||
KERNELDOC = $(srctree)/scripts/kernel-doc
|
KERNELDOC = $(srctree)/scripts/kernel-doc
|
||||||
KERNELDOC_CONF = -D kerneldoc_srctree=$(srctree) -D kerneldoc_bin=$(KERNELDOC)
|
KERNELDOC_CONF = -D kerneldoc_srctree=$(srctree) -D kerneldoc_bin=$(KERNELDOC)
|
||||||
ALLSPHINXOPTS = -d $(BUILDDIR)/.doctrees $(KERNELDOC_CONF) $(PAPEROPT_$(PAPER)) -c $(srctree)/$(src) $(SPHINXOPTS) $(srctree)/$(src)
|
ALLSPHINXOPTS = -D version=$(KERNELVERSION) -D release=$(KERNELRELEASE) -d $(BUILDDIR)/.doctrees $(KERNELDOC_CONF) $(PAPEROPT_$(PAPER)) -c $(srctree)/$(src) $(SPHINXOPTS) $(srctree)/$(src)
|
||||||
# the i18n builder cannot share the environment and doctrees with the others
|
# the i18n builder cannot share the environment and doctrees with the others
|
||||||
I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
|
I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
|
||||||
|
|
||||||
|
|
|
@ -60,10 +60,31 @@ author = 'The kernel development community'
|
||||||
# |version| and |release|, also used in various other places throughout the
|
# |version| and |release|, also used in various other places throughout the
|
||||||
# built documents.
|
# built documents.
|
||||||
#
|
#
|
||||||
# The short X.Y version.
|
# In a normal build, version and release are are set to KERNELVERSION and
|
||||||
version = '4.5'
|
# KERNELRELEASE, respectively, from the Makefile via Sphinx command line
|
||||||
# The full version, including alpha/beta/rc tags.
|
# arguments.
|
||||||
release = '4.5'
|
#
|
||||||
|
# The following code tries to extract the information by reading the Makefile,
|
||||||
|
# when Sphinx is run directly (e.g. by Read the Docs).
|
||||||
|
try:
|
||||||
|
makefile_version = None
|
||||||
|
makefile_patchlevel = None
|
||||||
|
for line in open('../Makefile'):
|
||||||
|
key, val = [x.strip() for x in line.split('=', 2)]
|
||||||
|
if key == 'VERSION':
|
||||||
|
makefile_version = val
|
||||||
|
elif key == 'PATCHLEVEL':
|
||||||
|
makefile_patchlevel = val
|
||||||
|
if makefile_version and makefile_patchlevel:
|
||||||
|
break
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
finally:
|
||||||
|
if makefile_version and makefile_patchlevel:
|
||||||
|
version = release = makefile_version + '.' + makefile_patchlevel
|
||||||
|
else:
|
||||||
|
sys.stderr.write('Warning: Could not extract kernel version\n')
|
||||||
|
version = release = "unknown version"
|
||||||
|
|
||||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
# The language for content autogenerated by Sphinx. Refer to documentation
|
||||||
# for a list of supported languages.
|
# for a list of supported languages.
|
||||||
|
|
Loading…
Add table
Reference in a new issue