ADAC: Make sdm build target agnostic

Signed-off-by: Jamie Bird <Jamie.Bird@arm.com>
Change-Id: I1b78c0437715417b0386518801fc511e2c6fcad2
diff --git a/psa-adac/core/CMakeLists.txt b/psa-adac/core/CMakeLists.txt
index adc3723..87e0c0a 100644
--- a/psa-adac/core/CMakeLists.txt
+++ b/psa-adac/core/CMakeLists.txt
@@ -1,5 +1,5 @@
 #
-# Copyright (c) 2020-2022 Arm Limited. All rights reserved.
+# Copyright (c) 2020-2023 Arm Limited. All rights reserved.
 # SPDX-License-Identifier: BSD-3-Clause
 #
 
@@ -25,10 +25,12 @@
         ${PSA_ADAC_CORE_SRC}
 )
 
-target_link_libraries(psa_adac_core
-    PRIVATE
-        ${PROJECT_NAME}
-)
+if (DEFINED PSA_ADAC_TARGET)
+    target_link_libraries(psa_adac_core
+        PRIVATE
+            ${PROJECT_NAME}
+    )
+endif()
 
 install(DIRECTORY
         ${CMAKE_CURRENT_SOURCE_DIR}/include/
diff --git a/psa-adac/core/include/psa_adac_config.h.in b/psa-adac/core/include/psa_adac_config.h.in
index 1d47cdd..57510a3 100644
--- a/psa-adac/core/include/psa_adac_config.h.in
+++ b/psa-adac/core/include/psa_adac_config.h.in
@@ -1,8 +1,10 @@
 /*
- * Copyright (c) 2020 Arm Limited. All rights reserved.
+ * Copyright (c) 2020-2023 Arm Limited. All rights reserved.
  * SPDX-License-Identifier: BSD-3-Clause
  */
 
+#cmakedefine PSA_ADAC_TARGET
+
 #cmakedefine PSA_ADAC_DEBUG
 #cmakedefine PSA_ADAC_TRACE
 #cmakedefine PSA_ADAC_QEMU
diff --git a/psa-adac/core/src/adac_crypto.c b/psa-adac/core/src/adac_crypto.c
index db7c01d..26c3175 100644
--- a/psa-adac/core/src/adac_crypto.c
+++ b/psa-adac/core/src/adac_crypto.c
@@ -9,20 +9,20 @@
 #include "psa_adac_crypto_api.h"
 #include "psa_adac_cryptosystems.h"
 #include "psa_adac_debug.h"
+#ifdef PSA_ADAC_TARGET
 #include "platform/platform.h"
+#endif /* #ifdef PSA_ADAC_TARGET */
 
 
-void psa_adac_platform_init(void);
-
-psa_status_t psa_adac_crypto_init(void);
-
-psa_status_t psa_adac_init(void)
+psa_status_t psa_adac_init()
 {
     static uint8_t psa_adac_init_done = 0;
     psa_status_t ret = PSA_SUCCESS;
 
     if (psa_adac_init_done == 0UL) {
+#ifdef PSA_ADAC_TARGET
         psa_adac_platform_init();
+#endif /* #ifdef PSA_ADAC_TARGET */
         ret = psa_adac_crypto_init();
         psa_adac_init_done = 1;
     }
diff --git a/psa-adac/sdm/include/psa_adac_sdm.h b/psa-adac/sdm/include/psa_adac_sdm.h
index 9ee0aa6..0395c33 100644
--- a/psa-adac/sdm/include/psa_adac_sdm.h
+++ b/psa-adac/sdm/include/psa_adac_sdm.h
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2022, Arm Limited. All rights reserved.
+ * Copyright (c) 2022-2023, Arm Limited. All rights reserved.
  *
  * SPDX-License-Identifier: BSD-3-Clause
  *
@@ -12,9 +12,10 @@
 #include MBEDTLS_CONFIG_FILE
 #endif
 
+#include "psa_adac.h"
+
 #if defined(MBEDTLS_FS_IO)
 
-#include "psa_adac.h"
 
 #ifdef __cplusplus
 extern "C" {
diff --git a/psa-adac/sdm/src/psa_adac_sdm.c b/psa-adac/sdm/src/psa_adac_sdm.c
index 0e67412..c993ee5 100644
--- a/psa-adac/sdm/src/psa_adac_sdm.c
+++ b/psa-adac/sdm/src/psa_adac_sdm.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2022, Arm Limited. All rights reserved.
+ * Copyright (c) 2022-2023, Arm Limited. All rights reserved.
  *
  * SPDX-License-Identifier: BSD-3-Clause
  *
@@ -8,6 +8,8 @@
 #include "psa_adac_sdm.h"
 
 #if defined(MBEDTLS_FS_IO)
+#define mbedtls_free free
+
 #include "psa_adac.h"
 #include "psa_adac_crypto_api.h"
 #include "psa_adac_cryptosystems.h"