Migrate Mbed TLS to use LazyFetch

In Mbed TLS 3.2 the necessary functionality was implemented to support
adding Mbed TLS as a CMake package. This makes it possible to use the
FetchContent feature of CMake (and in turn the LazyFetch module of TS)
to download and build Mbed TLS. All of the other external CMake projects
in TS already use the LazyFetch module, which reduces code duplication
by introducing functions that encapsulate the standard "fetch, patch,
configure, build" steps that are necessary for building CMake projects.

This commit replaces the existing Mbed TLS build procedure to use
LazyFetch instead. It also moves the config options of Mbed TLS from
command line arguments in the MbedTLS.cmake file into a dedicated config
file (or in CMake terminology, an "initial CMake cache" file).

Signed-off-by: Balint Dobszay <balint.dobszay@arm.com>
Change-Id: I0aa32f0f847abc3045db4031fefd2cd4e4b684e7
diff --git a/deployments/component-test/component-test.cmake b/deployments/component-test/component-test.cmake
index f8ffe9f..e80b766 100644
--- a/deployments/component-test/component-test.cmake
+++ b/deployments/component-test/component-test.cmake
@@ -1,5 +1,5 @@
 #-------------------------------------------------------------------------------
-# Copyright (c) 2020-2022, Arm Limited and Contributors. All rights reserved.
+# Copyright (c) 2020-2023, Arm Limited and Contributors. All rights reserved.
 #
 # SPDX-License-Identifier: BSD-3-Clause
 #
@@ -199,7 +199,7 @@
 
 # Mbed TLS provides libmbedcrypto
 include(${TS_ROOT}/external/MbedTLS/MbedTLS.cmake)
-target_link_libraries(component-test PRIVATE mbedcrypto)
+target_link_libraries(component-test PRIVATE MbedTLS::mbedcrypto)
 
 # Qcbor
 include(${TS_ROOT}/external/qcbor/qcbor.cmake)