doc: build without using make
authorBruce Richardson <bruce.richardson@intel.com>
Thu, 3 Sep 2020 15:26:58 +0000 (16:26 +0100)
committerThomas Monjalon <thomas@monjalon.net>
Mon, 7 Sep 2020 14:51:07 +0000 (16:51 +0200)
When building the DPDK guide documents, the DPDK version information was
pulled using "make showversion", which meant there was a dependency on
the DPDK make-based build system. Change this to have the version info
passed in from meson itself.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
buildtools/call-sphinx-build.py
doc/guides/conf.py
doc/guides/meson.build

index 85c9e01..fa6f26b 100755 (executable)
@@ -9,7 +9,10 @@ from os.path import join
 from subprocess import run, PIPE, STDOUT
 from distutils.version import StrictVersion
 
-(sphinx, src, dst) = sys.argv[1:]  # assign parameters to variables
+(sphinx, version, src, dst) = sys.argv[1:]  # assign parameters to variables
+
+# set the version in environment for sphinx to pick up
+os.environ['DPDK_VERSION'] = version
 
 # for sphinx version >= 1.7 add parallelism using "-j auto"
 ver = run([sphinx, '--version'], stdout=PIPE,
index d8fe5cc..9ebc26e 100644 (file)
@@ -2,7 +2,6 @@
 # Copyright(c) 2010-2015 Intel Corporation
 
 from __future__ import print_function
-import subprocess
 from docutils import nodes
 from distutils.version import LooseVersion
 from sphinx import __version__ as sphinx_version
@@ -38,11 +37,7 @@ html_add_permalinks = ""
 html_show_copyright = False
 highlight_language = 'none'
 
-# If MAKEFLAGS is exported by the user, garbage text might end up in version
-version = subprocess.check_output(['make', '-sRrC', '../../', 'showversion'],
-                                  env=dict(environ, MAKEFLAGS=""))
-version = version.decode('utf-8').rstrip()
-release = version
+release = environ['DPDK_VERSION']
 
 master_doc = 'index'
 
index 732e7ad..daab139 100644 (file)
@@ -11,7 +11,8 @@ htmldir = join_paths(get_option('datadir'), 'doc', 'dpdk')
 html_guides = custom_target('html_guides',
        input: files('index.rst'),
        output: 'html',
-       command: [sphinx_wrapper, sphinx, meson.current_source_dir(), meson.current_build_dir()],
+       command: [sphinx_wrapper, sphinx, meson.project_version(),
+               meson.current_source_dir(), meson.current_build_dir()],
        depfile: '.html.d',
        build_by_default: get_option('enable_docs'),
        install: get_option('enable_docs'),