Docs: Fix incorrect project version generation.
The documentation version generates differently in the local
and CI building environments. The expectation is to have the version
in the form of "v1.5.0+(last commit SHA)" while CI makes it v1.5.0.
Signed-off-by: Anton Komlev <anton.komlev@arm.com>
Change-Id: Ia989c1c169a614e169f1defdaa3ca34c4e0cf643
diff --git a/docs/conf.py.in b/docs/conf.py.in
index 7efc1db..ddf849b 100644
--- a/docs/conf.py.in
+++ b/docs/conf.py.in
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#-------------------------------------------------------------------------------
-# Copyright (c) 2019-2021, Arm Limited. All rights reserved.
+# Copyright (c) 2019-2022, Arm Limited. All rights reserved.
#
# SPDX-License-Identifier: BSD-3-Clause
#
@@ -26,14 +26,15 @@
# -- Project information -----------------------------------------------------
project = 'Trusted Firmware-M'
-copyright = '2017-2019, ARM CE-OSS'
+copyright = '2017-2022, ARM CE-OSS'
author = 'ARM CE-OSS'
title = 'User Guide'
-# The short X.Y version
+# The project version in the form: "vX.Y.Z" in case of clear release
+# or "vX.Y.Z+ (latest SHA)" if an update was posted.
version = '@SPHINXCFG_TFM_VERSION@'
-# The full version, including alpha/beta/rc tags
-release = '@SPHINXCFG_TFM_VERSION_FULL@'
+# Do not distinguish between release and version in Shpinx
+release = version
# -- General configuration ---------------------------------------------------
diff --git a/docs/tfm_env.py.in b/docs/tfm_env.py.in
index 16292d2..c4f7a34 100644
--- a/docs/tfm_env.py.in
+++ b/docs/tfm_env.py.in
@@ -21,5 +21,4 @@
"SPHINXCFG_COPY_FILES" : "@SPHINXCFG_COPY_FILES@",
"SPHINXCFG_RENDER_CONF" : "@SPHINXCFG_RENDER_CONF@",
"SPHINXCFG_TFM_VERSION" : "v@CMAKE_PROJECT_VERSION@",
- "SPHINXCFG_TFM_VERSION_FULL" : "Version @CMAKE_PROJECT_VERSION@"
}
diff --git a/tools/documentation/tfm_cmake_defaults.py b/tools/documentation/tfm_cmake_defaults.py
index 5034b8b..5b15e5f 100644
--- a/tools/documentation/tfm_cmake_defaults.py
+++ b/tools/documentation/tfm_cmake_defaults.py
@@ -134,8 +134,7 @@
tfm_def_copy_dir = os.path.abspath(cmake_env["SPHINX_TMP_DOC_DIR"])
tfm_def_plantum_loc = os.path.abspath(cmake_env["PLANTUML_JAR_PATH"])
tfm_def_java_binary = os.path.abspath(cmake_env["Java_JAVA_EXECUTABLE"])
- tfm_def_tfm_ver_shrt = cmake_env["SPHINXCFG_TFM_VERSION"]
- tfm_def_tfm_ver_full = cmake_env["SPHINXCFG_TFM_VERSION_FULL"]
+ tfm_def_tfm_version = cmake_env["SPHINXCFG_TFM_VERSION"]
tfm_def_conf_in_file = cmake_env["SPHINXCFG_TEMPLATE_FILE"]
tfm_def_copy_files = True if cmake_env["SPHINXCFG_COPY_FILES"] == "True" \
@@ -167,9 +166,10 @@
r'+\s+tag\s+refs\/tags\/TF-Mv(?P<VER_MAJ>\d+).'
r'(?P<VER_MIN>\d+).?(?P<VER_HOT>\d+)(?P<RC>-RC\d+)?')
- tfm_def_tfm_ver_full = check_output("git for-each-ref refs/tags --sort=-taggerdate --count=1",
- encoding = 'UTF-8')
- _v = vrex.search(tfm_def_tfm_ver_full)
+ tfm_def_tfm_version = check_output("git for-each-ref refs/tags --sort=-taggerdate --count=1",
+ shell = True, encoding = 'UTF-8')
+
+ _v = vrex.search(tfm_def_tfm_version)
version = [ _v.group("VER_MAJ"),
_v.group("VER_MIN"),
_v.group("VER_HOT"),
@@ -178,31 +178,24 @@
# Sanitize the verison and remove empty entries
version = [i.replace("-","") for i in version if i]
- tfm_def_tfm_ver_full = ".".join(version)
- tfm_def_tfm_ver_shrt = ".".join(version[:2])
+ tfm_def_tfm_version = "v"+".".join(version)
vlrex = re.compile(r'^(?P<GIT_HASH_LATEST>[a-f0-9]{40})')
- git_hash_latest = check_output("git rev-parse HEAD", encoding = 'UTF-8')
+ git_hash_latest = check_output("git rev-parse HEAD",
+ shell = True, encoding = 'UTF-8')
git_hash_latest = vlrex.search(git_hash_latest).group('GIT_HASH_LATEST')
if git_hash != git_hash_latest:
git_hash_latest = git_hash_latest[:7]
- tfm_def_tfm_ver_full = "%s+ ( %s )" % (tfm_def_tfm_ver_full, git_hash_latest)
- tfm_def_tfm_ver_shrt = "%s+ ( %s )" % (tfm_def_tfm_ver_shrt, git_hash_latest)
-
- tfm_def_tfm_ver_shrt = tfm_def_tfm_ver_full
+ tfm_def_tfm_version += "+ ({})".format(git_hash_latest)
except Exception as E:
try:
- tfm_def_tfm_ver_shrt
+ tfm_def_tfm_version
except NameError:
- tfm_def_tfm_ver_shrt = "v1.0.0-B"
- try:
- tfm_def_tfm_ver_full
- except NameError:
- tfm_def_tfm_ver_full = "v1.0.0-B"
+ tfm_def_tfm_version = "Unknown"
# #################### User Defaults ######################################## #
@@ -228,13 +221,11 @@
"DOXYGEN_EXECUTABLE": tfm_def_doxygen_loc,
"DOXYGEN_DOT_EXECUTABLE": tfm_def_doxygen_dot_loc,
"PLANTUML_JAR_PATH": tfm_def_plantum_loc,
- "SPHINXCFG_TFM_VERSION": tfm_def_tfm_ver_shrt,
- "SPHINXCFG_TFM_VERSION_FULL": tfm_def_tfm_ver_full,
+ "SPHINXCFG_TFM_VERSION": tfm_def_tfm_version,
"Java_JAVA_EXECUTABLE": tfm_def_java_binary,
"DOXYCFG_OUTPUT_PATH": tfm_def_doxy_output_dir,
- "DOXYCFG_TFM_VERSION": tfm_def_tfm_ver_full,
+ "DOXYCFG_TFM_VERSION": tfm_def_tfm_version,
}
# Only Override the version
else:
- cmake_env["SPHINXCFG_TFM_VERSION"] = tfm_def_tfm_ver_shrt
- cmake_env["SPHINXCFG_TFM_VERSION_FULL"] = tfm_def_tfm_ver_full
+ cmake_env["SPHINXCFG_TFM_VERSION"] = tfm_def_tfm_version