Doc: convert markdown files to rst

The official documentation format for TF-M is becoming Restructured
Text. This change converts the existing .md files to the new format.

Due to support for documentation of external code (/lib) md support is
kept.

Change-Id: I3c1aef5d22442e0c7c362a40a8d344a266dc0940
Signed-off-by: Gyorgy Szing <Gyorgy.Szing@arm.com>
diff --git a/cmake/Common/BuildSphinxDoc.cmake b/cmake/Common/BuildSphinxDoc.cmake
index 7287d05..09bd30c 100644
--- a/cmake/Common/BuildSphinxDoc.cmake
+++ b/cmake/Common/BuildSphinxDoc.cmake
@@ -33,10 +33,11 @@
 #   SphinxFindTools()
 #
 function(SphinxFindTools)
+	#Find Sphinx
 	find_package(Sphinx)
 
-	#Find additional needed python dependencies.
-	find_package(PythonModules COMPONENTS m2r sphinx-rtd-theme)
+	#Find additional needed Sphinx dependencies.
+	find_package(PythonModules COMPONENTS m2r sphinx-rtd-theme sphinxcontrib.plantuml)
 
 	#Find plantUML
 	find_package(PlantUML)
@@ -48,10 +49,11 @@
 	endif()
 
 	if (SPHINX_FOUND AND PLANTUML_FOUND AND PY_M2R_FOUND
-			AND PY_SPHINX-RTD-THEME_FOUND)
+			AND PY_SPHINX-RTD-THEME_FOUND AND PY_SPHINXCONTRIB.PLANTUML)
 		#Export executable locations to global scope.
 		set(SPHINX_EXECUTABLE "${SPHINX_EXECUTABLE}" PARENT_SCOPE)
 		set(PLANTUML_JAR_PATH "${PLANTUML_JAR_PATH}" PARENT_SCOPE)
+		set(Java_JAVA_EXECUTABLE "${Java_JAVA_EXECUTABLE}" PARENT_SCOPE)
 		set(SPHINX_NODOC False PARENT_SCOPE)
 	else()
 		message(WARNING "Some tools are missing for Sphinx document generation. Document generation target is not created.")
@@ -73,8 +75,8 @@
 
 	set(SPHINX_TMP_DOC_DIR "${CMAKE_CURRENT_BINARY_DIR}/doc_sphinx_in")
 
-	set(SPHINXCFG_TEMPLATE_FILE "${TFM_ROOT_DIR}/docs/Conf.py.in")
-	set(SPHINXCFG_CONFIGURED_FILE "${SPHINXCFG_OUTPUT_PATH}/Conf.py")
+	set(SPHINXCFG_TEMPLATE_FILE "${TFM_ROOT_DIR}/docs/conf.py.in")
+	set(SPHINXCFG_CONFIGURED_FILE "${SPHINXCFG_OUTPUT_PATH}/conf.py")
 
 
 	#Version ID of TF-M.
@@ -91,10 +93,14 @@
 		VERBATIM
 		)
 
+	add_custom_target(create_sphinx_input
+		SOURCES "${SPHINX_TMP_DOC_DIR}"
+	)
+
 	add_custom_command(OUTPUT "${SPHINXCFG_OUTPUT_PATH}/html"
 		COMMAND "${SPHINX_EXECUTABLE}" -c "${SPHINXCFG_OUTPUT_PATH}" -b html "${SPHINX_TMP_DOC_DIR}" "${SPHINXCFG_OUTPUT_PATH}/html"
 		WORKING_DIRECTORY "${TFM_ROOT_DIR}"
-		DEPENDS "${SPHINX_TMP_DOC_DIR}"
+		DEPENDS create_sphinx_input
 		COMMENT "Running Sphinx to generate user guide (HTML)."
 		VERBATIM
 		)
@@ -120,7 +126,7 @@
 		add_custom_command(OUTPUT "${SPHINXCFG_OUTPUT_PATH}/latex"
 			COMMAND "${SPHINX_EXECUTABLE}" -c "${SPHINXCFG_OUTPUT_PATH}" -b latex "${SPHINX_TMP_DOC_DIR}" "${SPHINXCFG_OUTPUT_PATH}/latex"
 			WORKING_DIRECTORY "${TFM_ROOT_DIR}"
-			DEPENDS "${SPHINX_TMP_DOC_DIR}"
+			DEPENDS create_sphinx_input
 			COMMENT "Running Sphinx to generate user guide (LaTeX)."
 			VERBATIM
 			)