If the user has MAKEFLAGS set in the environment when building the
documentation, the doc/guides/conf.py script which calls "make"
exclusively to get the project version might pick up garbage from
stdout, like:

<title>FAQ &mdash; Data Plane Development Kit make[2]:
Entering directory &#39;/build/1st/dpdk-18.11/doc/guides&#39;
18.11.0
make[2]: Leaving directory &#39;/build/1st/dpdk-18.11&#39;
documentation</title>

Override MAKEFLAGS in the Python subprocess call to avoid this issue.

Fixes: f7aaae2fe6f7 ("doc: add copyright and version")
Cc: sta...@dpdk.org

Signed-off-by: Luca Boccassi <bl...@debian.org>
---
 doc/guides/conf.py | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/doc/guides/conf.py b/doc/guides/conf.py
index c883306d7..da99a3f84 100644
--- a/doc/guides/conf.py
+++ b/doc/guides/conf.py
@@ -9,6 +9,7 @@
 from sphinx.highlighting import PygmentsBridge
 from pygments.formatters.latex import LatexFormatter
 from os import listdir
+from os import environ
 from os.path import basename
 from os.path import dirname
 from os.path import join as path_join
@@ -37,7 +38,9 @@
 html_show_copyright = False
 highlight_language = 'none'
 
-version = subprocess.check_output(['make', '-sRrC', '../../', 'showversion'])
+# 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
 
-- 
2.19.2

Reply via email to