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