Replace se-proxy service backends with stubs
To facilitate the development of proxy backends that will
communicate with a remote secure element, the se-proxy
deployment has been modified to use stub components that
honour all service provider dependencies but don't do
anything. This simplifies the se-proxy built image in
preparation for adding the se service clients.
Signed-off-by: Julian Hall <julian.hall@arm.com>
Change-Id: I2dac1e295814839d4c7dccf4120667186d7ea6de
diff --git a/components/service/crypto/backend/stub/component.cmake b/components/service/crypto/backend/stub/component.cmake
new file mode 100644
index 0000000..5972f5d
--- /dev/null
+++ b/components/service/crypto/backend/stub/component.cmake
@@ -0,0 +1,21 @@
+#-------------------------------------------------------------------------------
+# Copyright (c) 2021, Arm Limited and Contributors. All rights reserved.
+#
+# SPDX-License-Identifier: BSD-3-Clause
+#
+#-------------------------------------------------------------------------------
+if (NOT DEFINED TGT)
+ message(FATAL_ERROR "mandatory parameter TGT is not defined.")
+endif()
+
+target_sources(${TGT} PRIVATE
+ "${CMAKE_CURRENT_LIST_DIR}/stub_crypto_backend.c"
+ )
+
+# The stub crypto backend uses the psa crypto client to realize the
+# psa crypto API that the crypto provider depends on. This define
+# configures the psa crypto client to be built with the stub crypto
+# caller.
+target_compile_definitions(${TGT} PRIVATE
+ PSA_CRYPTO_CLIENT_CALLER_SELECTION_H="service/crypto/client/caller/stub/crypto_caller.h"
+)