Add support to build only the tf-psa-crypto tree

Signed-off-by: Ronald Cron <ronald.cron@arm.com>
diff --git a/tf-psa-crypto/CMakeLists.txt b/tf-psa-crypto/CMakeLists.txt
index 31832ac..63a71fc 100644
--- a/tf-psa-crypto/CMakeLists.txt
+++ b/tf-psa-crypto/CMakeLists.txt
@@ -31,6 +31,8 @@
 # is deprecated and will be removed in future versions.
 cmake_policy(SET CMP0012 NEW)
 
+if(NOT (CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_SOURCE_DIR))
+
 if(LIB_INSTALL_DIR)
     set(CMAKE_INSTALL_LIBDIR "${LIB_INSTALL_DIR}")
 endif()
@@ -52,3 +54,21 @@
     enable_testing()
     add_subdirectory(tests)
 endif()
+
+else(NOT (CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_SOURCE_DIR))
+
+if(TEST_CPP)
+    project("TF-PSA-Crypto"
+        LANGUAGES C CXX
+        VERSION 0.1.0
+    )
+else()
+    project("TF-PSA-Crypto"
+        LANGUAGES C
+        VERSION 0.1.0
+    )
+endif()
+
+include(TF-PSA-Crypto.cmake)
+
+endif(NOT (CMAKE_CURRENT_SOURCE_DIR STREQUAL CMAKE_SOURCE_DIR))
diff --git a/tf-psa-crypto/DartConfiguration.tcl b/tf-psa-crypto/DartConfiguration.tcl
new file mode 100644
index 0000000..af0578a
--- /dev/null
+++ b/tf-psa-crypto/DartConfiguration.tcl
@@ -0,0 +1,4 @@
+Site: localhost
+BuildName: Mbed TLS-test
+CoverageCommand: /usr/bin/gcov
+MemoryCheckCommand: /usr/bin/valgrind
diff --git a/tf-psa-crypto/TF-PSA-Crypto.cmake b/tf-psa-crypto/TF-PSA-Crypto.cmake
index 4dbb20f..e520ad1 100644
--- a/tf-psa-crypto/TF-PSA-Crypto.cmake
+++ b/tf-psa-crypto/TF-PSA-Crypto.cmake
@@ -1,54 +1,3 @@
-#
-# CMake build system design considerations:
-#
-# - Include directories:
-#   + Do not define include directories globally using the include_directories
-#     command but rather at the target level using the
-#     target_include_directories command. That way, it is easier to guarantee
-#     that targets are built using the proper list of include directories.
-#   + Use the PUBLIC and PRIVATE keywords to specify the scope of include
-#     directories. That way, a target linking to a library (using the
-#     target_link_libraries command) inherits from the library PUBLIC include
-#     directories and not from the PRIVATE ones.
-# - TF_PSA_CRYPTO_TARGET_PREFIX: CMake targets are designed to be alterable by
-#   calling CMake in order to avoid target name clashes, via the use of
-#   TF_PSA_CRYPTO_TARGET_PREFIX. The value of this variable is prefixed to the
-#   tfpsacrypto and apidoc targets.
-#
-
-# We specify a minimum requirement of 3.10.2, but for now use 3.5.1 here
-# until our infrastructure catches up.
-cmake_minimum_required(VERSION 3.5.1)
-
-include(CMakePackageConfigHelpers)
-
-# Include convenience functions for printing properties and variables, like
-# cmake_print_properties(), cmake_print_variables().
-include(CMakePrintHelpers)
-
-# https://cmake.org/cmake/help/latest/policy/CMP0011.html
-# Setting this policy is required in CMake >= 3.18.0, otherwise a warning is generated. The OLD
-# policy setting is deprecated, and will be removed in future versions.
-cmake_policy(SET CMP0011 NEW)
-# https://cmake.org/cmake/help/latest/policy/CMP0012.html
-# Setting the CMP0012 policy to NEW is required for FindPython3 to work with CMake 3.18.2
-# (there is a bug in this particular version), otherwise, setting the CMP0012 policy is required
-# for CMake versions >= 3.18.3 otherwise a deprecated warning is generated. The OLD policy setting
-# is deprecated and will be removed in future versions.
-cmake_policy(SET CMP0012 NEW)
-
-if(TEST_CPP)
-    project("TF-PSA-Crypto"
-        LANGUAGES C CXX
-        VERSION 0.1.0
-    )
-else()
-    project("TF-PSA-Crypto"
-        LANGUAGES C
-        VERSION 0.1.0
-    )
-endif()
-
 include(GNUInstallDirs)
 
 # Determine if TF-PSA-Crypto is being built as a subproject using add_subdirectory()
diff --git a/tf-psa-crypto/framework/.gitignore b/tf-psa-crypto/framework/.gitignore
new file mode 100644
index 0000000..182ce94
--- /dev/null
+++ b/tf-psa-crypto/framework/.gitignore
@@ -0,0 +1 @@
+data_files
diff --git a/tf-psa-crypto/programs/CMakeLists.txt b/tf-psa-crypto/programs/CMakeLists.txt
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/tf-psa-crypto/programs/CMakeLists.txt