app: Add a static library for the PSA tests
This allows external build systems (like Zephyr) to easily pick up and
build the PSA tests in their own context.
Signed-off-by: Øyvind Rønningstad <oyvind.ronningstad@nordicsemi.no>
Change-Id: Ic376c8943f53dd729665e99148f8de55e2d0c061
diff --git a/app/CMakeLists.txt b/app/CMakeLists.txt
index 1a5b836..7906a91 100644
--- a/app/CMakeLists.txt
+++ b/app/CMakeLists.txt
@@ -104,12 +104,39 @@
############################# TFM NS app #######################################
+if (TEST_PSA_API)
+ add_library(tfm_ns_psa_test STATIC)
+
+ target_sources(tfm_ns_psa_test
+ PRIVATE
+ psa_api_test.c
+ )
+
+ target_link_libraries(tfm_ns_psa_test
+ PRIVATE
+ val_nspe
+ pal_nspe
+ test_combine
+ platform_ns
+ psa_api_ns
+ )
+
+ target_include_directories(tfm_ns_psa_test
+ PUBLIC
+ .
+ )
+
+ target_compile_definitions(tfm_ns_psa_test
+ PUBLIC
+ PSA_API_TEST_NS
+ )
+endif()
+
add_executable(tfm_ns)
target_sources(tfm_ns
PRIVATE
main_ns.c
- $<$<BOOL:${TEST_PSA_API}>:psa_api_test.c>
)
target_link_libraries(tfm_ns
@@ -117,19 +144,12 @@
platform_ns
CMSIS_5_tfm_ns
$<$<OR:$<BOOL:${TEST_NS}>,$<BOOL:${TEST_S}>>:tfm_ns_integration_test>
- $<$<BOOL:${TEST_PSA_API}>:val_nspe>
- $<$<BOOL:${TEST_PSA_API}>:pal_nspe>
- $<$<BOOL:${TEST_PSA_API}>:test_combine>
+ $<$<BOOL:${TEST_PSA_API}>:tfm_ns_psa_test>
$<$<NOT:$<BOOL:${TFM_MULTI_CORE_TOPOLOGY}>>:tfm_s_veneers>
psa_api_ns
tfm_ns_log
)
-target_compile_definitions(tfm_ns
- PUBLIC
- $<$<BOOL:${TEST_PSA_API}>:PSA_API_TEST_NS>
-)
-
set_target_properties(tfm_ns PROPERTIES
SUFFIX ".axf"
RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin"