Test: Get rid of secure test partitions if S tests are disabled

When secure regression tests are disabled, some secure tests
dedicated partitions are still enabled and built. Those partitions
are unnecessary and increase secure binary size.

Skip building and linking those partitions when TEST_S is not
selected.

Signed-off-by: David Hu <david.hu@arm.com>
Change-Id: Ie73401ae7c6454f8073400c7af15c8411c1dcdff
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index 481ed1d..9499398 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -75,19 +75,21 @@
 
 ####################### Secure #################################################
 
-target_sources(tfm_s_tests
-    INTERFACE
-        ${CMAKE_CURRENT_SOURCE_DIR}/framework/secure_suites.c
-)
+if (TEST_S)
+    target_sources(tfm_s_tests
+        INTERFACE
+            ${CMAKE_CURRENT_SOURCE_DIR}/framework/secure_suites.c
+    )
 
-target_link_libraries(tfm_s_tests
-    INTERFACE
-        tfm_test_framework
-        tfm_partition_defs
-        tfm_spm
-)
+    target_link_libraries(tfm_s_tests
+        INTERFACE
+            tfm_test_framework
+            tfm_partition_defs
+            tfm_spm
+    )
 
-target_compile_definitions(tfm_s_tests
-    INTERFACE
-        $<$<BOOL:${PS_TEST_NV_COUNTERS}>:PS_TEST_NV_COUNTERS>
-)
+    target_compile_definitions(tfm_s_tests
+        INTERFACE
+            $<$<BOOL:${PS_TEST_NV_COUNTERS}>:PS_TEST_NV_COUNTERS>
+    )
+endif()
diff --git a/test/suites/attestation/CMakeLists.txt b/test/suites/attestation/CMakeLists.txt
index 2eca79a..1c8c3b2 100644
--- a/test/suites/attestation/CMakeLists.txt
+++ b/test/suites/attestation/CMakeLists.txt
@@ -58,42 +58,44 @@
 
 ####################### Secure #################################################
 
-target_sources(tfm_test_suite_attestation_s
-    PRIVATE
-        ${CMAKE_CURRENT_SOURCE_DIR}/attest_public_key.c
-        ${CMAKE_CURRENT_SOURCE_DIR}/attest_token_test.c
-        ${CMAKE_CURRENT_SOURCE_DIR}/attest_token_decode_common.c
-        $<$<BOOL:${SYMMETRIC_INITIAL_ATTESTATION}>:${CMAKE_CURRENT_SOURCE_DIR}/attest_token_decode_symmetric.c>
-        $<$<BOOL:${SYMMETRIC_INITIAL_ATTESTATION}>:${CMAKE_CURRENT_SOURCE_DIR}/secure/attest_symmetric_s_interface_testsuite.c>
-        $<$<NOT:$<BOOL:${SYMMETRIC_INITIAL_ATTESTATION}>>:${CMAKE_CURRENT_SOURCE_DIR}/attest_token_decode_asymmetric.c>
-        $<$<NOT:$<BOOL:${SYMMETRIC_INITIAL_ATTESTATION}>>:${CMAKE_CURRENT_SOURCE_DIR}/secure/attest_asymmetric_s_interface_testsuite.c>
-)
+if (TEST_S)
+    target_sources(tfm_test_suite_attestation_s
+        PRIVATE
+            ${CMAKE_CURRENT_SOURCE_DIR}/attest_public_key.c
+            ${CMAKE_CURRENT_SOURCE_DIR}/attest_token_test.c
+            ${CMAKE_CURRENT_SOURCE_DIR}/attest_token_decode_common.c
+            $<$<BOOL:${SYMMETRIC_INITIAL_ATTESTATION}>:${CMAKE_CURRENT_SOURCE_DIR}/attest_token_decode_symmetric.c>
+            $<$<BOOL:${SYMMETRIC_INITIAL_ATTESTATION}>:${CMAKE_CURRENT_SOURCE_DIR}/secure/attest_symmetric_s_interface_testsuite.c>
+            $<$<NOT:$<BOOL:${SYMMETRIC_INITIAL_ATTESTATION}>>:${CMAKE_CURRENT_SOURCE_DIR}/attest_token_decode_asymmetric.c>
+            $<$<NOT:$<BOOL:${SYMMETRIC_INITIAL_ATTESTATION}>>:${CMAKE_CURRENT_SOURCE_DIR}/secure/attest_asymmetric_s_interface_testsuite.c>
+    )
 
-target_include_directories(tfm_test_suite_attestation_s
-    PUBLIC
-        ${CMAKE_CURRENT_SOURCE_DIR}/secure
-    PRIVATE
-        ${CMAKE_CURRENT_SOURCE_DIR}
-)
+    target_include_directories(tfm_test_suite_attestation_s
+        PUBLIC
+            ${CMAKE_CURRENT_SOURCE_DIR}/secure
+        PRIVATE
+            ${CMAKE_CURRENT_SOURCE_DIR}
+    )
 
-target_compile_definitions(tfm_test_suite_attestation_s
-    PRIVATE
-        $<$<CONFIG:Debug>:INCLUDE_TEST_CODE>
-        $<$<BOOL:${SYMMETRIC_INITIAL_ATTESTATION}>:SYMMETRIC_INITIAL_ATTESTATION>
-)
+    target_compile_definitions(tfm_test_suite_attestation_s
+        PRIVATE
+            $<$<CONFIG:Debug>:INCLUDE_TEST_CODE>
+            $<$<BOOL:${SYMMETRIC_INITIAL_ATTESTATION}>:SYMMETRIC_INITIAL_ATTESTATION>
+    )
 
-target_link_libraries(tfm_test_suite_attestation_s
-    PRIVATE
-        tfm_qcbor
-        tfm_t_cose
-        tfm_test_framework
-        tfm_partition_attestation
-        tfm_boot_status
-        tfm_partition_crypto
-        platform_s
-)
+    target_link_libraries(tfm_test_suite_attestation_s
+        PRIVATE
+            tfm_qcbor
+            tfm_t_cose
+            tfm_test_framework
+            tfm_partition_attestation
+            tfm_boot_status
+            tfm_partition_crypto
+            platform_s
+    )
 
-target_link_libraries(tfm_s_tests
-    INTERFACE
-        tfm_test_suite_attestation_s
-)
+    target_link_libraries(tfm_s_tests
+        INTERFACE
+            tfm_test_suite_attestation_s
+    )
+endif()
diff --git a/test/suites/audit/CMakeLists.txt b/test/suites/audit/CMakeLists.txt
index 35d5f3a..67e3578 100644
--- a/test/suites/audit/CMakeLists.txt
+++ b/test/suites/audit/CMakeLists.txt
@@ -48,23 +48,25 @@
 
 ####################### Secure #################################################
 
-target_sources(tfm_test_suite_audit_s
-    PRIVATE
-        ${CMAKE_CURRENT_SOURCE_DIR}/secure/audit_s_interface_testsuite.c
-)
+if (TEST_S)
+    target_sources(tfm_test_suite_audit_s
+        PRIVATE
+            ${CMAKE_CURRENT_SOURCE_DIR}/secure/audit_s_interface_testsuite.c
+    )
 
-target_include_directories(tfm_test_suite_audit_s
-    PUBLIC
-        ${CMAKE_CURRENT_SOURCE_DIR}/secure
-)
+    target_include_directories(tfm_test_suite_audit_s
+        PUBLIC
+            ${CMAKE_CURRENT_SOURCE_DIR}/secure
+    )
 
-target_link_libraries(tfm_test_suite_audit_s
-    PRIVATE
-        tfm_test_framework
-        tfm_partition_audit
-)
+    target_link_libraries(tfm_test_suite_audit_s
+        PRIVATE
+            tfm_test_framework
+            tfm_partition_audit
+    )
 
-target_link_libraries(tfm_s_tests
-    INTERFACE
-        tfm_test_suite_audit_s
-)
+    target_link_libraries(tfm_s_tests
+        INTERFACE
+            tfm_test_suite_audit_s
+    )
+endif()
diff --git a/test/suites/crypto/CMakeLists.txt b/test/suites/crypto/CMakeLists.txt
index 953d5bf..ba9f102 100644
--- a/test/suites/crypto/CMakeLists.txt
+++ b/test/suites/crypto/CMakeLists.txt
@@ -50,38 +50,39 @@
 
 ####################### Secure #################################################
 
-target_sources(tfm_test_suite_crypto_s
-    PRIVATE
-        ${CMAKE_CURRENT_SOURCE_DIR}/crypto_tests_common.c
-        ${CMAKE_CURRENT_SOURCE_DIR}/secure/crypto_sec_interface_testsuite.c
-)
+if (TEST_S)
+    target_sources(tfm_test_suite_crypto_s
+        PRIVATE
+            ${CMAKE_CURRENT_SOURCE_DIR}/crypto_tests_common.c
+            ${CMAKE_CURRENT_SOURCE_DIR}/secure/crypto_sec_interface_testsuite.c
+    )
 
-target_include_directories(tfm_test_suite_crypto_s
-    PUBLIC
-        ${CMAKE_CURRENT_SOURCE_DIR}/secure
-)
+    target_include_directories(tfm_test_suite_crypto_s
+        PUBLIC
+            ${CMAKE_CURRENT_SOURCE_DIR}/secure
+    )
 
-target_link_libraries(tfm_test_suite_crypto_s
-    PRIVATE
-        tfm_secure_api
-        tfm_test_framework
-        tfm_partition_secure_client_2
-        platform_s
-)
+    target_link_libraries(tfm_test_suite_crypto_s
+        PRIVATE
+            tfm_secure_api
+            tfm_test_framework
+            tfm_partition_secure_client_2
+            platform_s
+    )
 
-target_link_libraries(tfm_s_tests
-    INTERFACE
-        tfm_test_suite_crypto_s
-)
+    target_link_libraries(tfm_s_tests
+        INTERFACE
+            tfm_test_suite_crypto_s
+    )
 
-target_compile_definitions(tfm_test_suite_crypto_s
-    PRIVATE
-        $<$<BOOL:${TFM_CRYPTO_TEST_ALG_CBC}>:TFM_CRYPTO_TEST_ALG_CBC>
-        $<$<BOOL:${TFM_CRYPTO_TEST_ALG_CCM}>:TFM_CRYPTO_TEST_ALG_CCM>
-        $<$<BOOL:${TFM_CRYPTO_TEST_ALG_CFB}>:TFM_CRYPTO_TEST_ALG_CFB>
-        $<$<BOOL:${TFM_CRYPTO_TEST_ALG_CTR}>:TFM_CRYPTO_TEST_ALG_CTR>
-        $<$<BOOL:${TFM_CRYPTO_TEST_ALG_GCM}>:TFM_CRYPTO_TEST_ALG_GCM>
-        $<$<BOOL:${TFM_CRYPTO_TEST_ALG_SHA_512}>:TFM_CRYPTO_TEST_ALG_SHA_512>
-        $<$<BOOL:${TFM_CRYPTO_TEST_HKDF}>:TFM_CRYPTO_TEST_HKDF>
-)
-
+    target_compile_definitions(tfm_test_suite_crypto_s
+        PRIVATE
+            $<$<BOOL:${TFM_CRYPTO_TEST_ALG_CBC}>:TFM_CRYPTO_TEST_ALG_CBC>
+            $<$<BOOL:${TFM_CRYPTO_TEST_ALG_CCM}>:TFM_CRYPTO_TEST_ALG_CCM>
+            $<$<BOOL:${TFM_CRYPTO_TEST_ALG_CFB}>:TFM_CRYPTO_TEST_ALG_CFB>
+            $<$<BOOL:${TFM_CRYPTO_TEST_ALG_CTR}>:TFM_CRYPTO_TEST_ALG_CTR>
+            $<$<BOOL:${TFM_CRYPTO_TEST_ALG_GCM}>:TFM_CRYPTO_TEST_ALG_GCM>
+            $<$<BOOL:${TFM_CRYPTO_TEST_ALG_SHA_512}>:TFM_CRYPTO_TEST_ALG_SHA_512>
+            $<$<BOOL:${TFM_CRYPTO_TEST_HKDF}>:TFM_CRYPTO_TEST_HKDF>
+    )
+endif()
diff --git a/test/suites/ipc/CMakeLists.txt b/test/suites/ipc/CMakeLists.txt
index 8d3ac83..9551d4d 100644
--- a/test/suites/ipc/CMakeLists.txt
+++ b/test/suites/ipc/CMakeLists.txt
@@ -42,22 +42,24 @@
 
 ####################### Secure #################################################
 
-target_sources(tfm_test_suite_ipc_s
-    PRIVATE
-        ${CMAKE_CURRENT_SOURCE_DIR}/secure/ipc_s_interface_testsuite.c
-)
+if (TEST_S)
+    target_sources(tfm_test_suite_ipc_s
+        PRIVATE
+            ${CMAKE_CURRENT_SOURCE_DIR}/secure/ipc_s_interface_testsuite.c
+    )
 
-target_include_directories(tfm_test_suite_ipc_s
-    PUBLIC
-        ${CMAKE_CURRENT_SOURCE_DIR}/secure
-)
+    target_include_directories(tfm_test_suite_ipc_s
+        PUBLIC
+            ${CMAKE_CURRENT_SOURCE_DIR}/secure
+    )
 
-target_link_libraries(tfm_test_suite_ipc_s
-    PRIVATE
-        tfm_test_framework
-)
+    target_link_libraries(tfm_test_suite_ipc_s
+        PRIVATE
+            tfm_test_framework
+    )
 
-target_link_libraries(tfm_s_tests
-    INTERFACE
-        tfm_test_suite_ipc_s
-)
+    target_link_libraries(tfm_s_tests
+        INTERFACE
+            tfm_test_suite_ipc_s
+    )
+endif()
diff --git a/test/suites/its/CMakeLists.txt b/test/suites/its/CMakeLists.txt
index db9141d..6862c32 100644
--- a/test/suites/its/CMakeLists.txt
+++ b/test/suites/its/CMakeLists.txt
@@ -46,33 +46,35 @@
 
 ####################### Secure #################################################
 
-target_sources(tfm_test_suite_its_s
-    PRIVATE
-       ${CMAKE_CURRENT_SOURCE_DIR}/its_tests_common.c
-       ${CMAKE_CURRENT_SOURCE_DIR}/secure/psa_its_s_interface_testsuite.c
-       ${CMAKE_CURRENT_SOURCE_DIR}/secure/psa_its_s_reliability_testsuite.c
-)
+if (TEST_S)
+    target_sources(tfm_test_suite_its_s
+        PRIVATE
+           ${CMAKE_CURRENT_SOURCE_DIR}/its_tests_common.c
+           ${CMAKE_CURRENT_SOURCE_DIR}/secure/psa_its_s_interface_testsuite.c
+           ${CMAKE_CURRENT_SOURCE_DIR}/secure/psa_its_s_reliability_testsuite.c
+    )
 
-target_include_directories(tfm_test_suite_its_s
-    PUBLIC
-        ${CMAKE_CURRENT_SOURCE_DIR}/secure
-)
+    target_include_directories(tfm_test_suite_its_s
+        PUBLIC
+            ${CMAKE_CURRENT_SOURCE_DIR}/secure
+    )
 
-target_compile_definitions(tfm_test_suite_its_s
-    PRIVATE
-        ITS_MAX_ASSET_SIZE=${ITS_MAX_ASSET_SIZE}
-)
+    target_compile_definitions(tfm_test_suite_its_s
+        PRIVATE
+            ITS_MAX_ASSET_SIZE=${ITS_MAX_ASSET_SIZE}
+    )
 
-target_link_libraries(tfm_test_suite_its_s
-    PRIVATE
-        tfm_secure_api
-        tfm_test_framework
-        platform_region_defs
-        tfm_partition_secure_client_2
-        platform_s
-)
+    target_link_libraries(tfm_test_suite_its_s
+        PRIVATE
+            tfm_secure_api
+            tfm_test_framework
+            platform_region_defs
+            tfm_partition_secure_client_2
+            platform_s
+    )
 
-target_link_libraries(tfm_s_tests
-    INTERFACE
-        tfm_test_suite_its_s
-)
+    target_link_libraries(tfm_s_tests
+        INTERFACE
+            tfm_test_suite_its_s
+    )
+endif()
diff --git a/test/suites/platform/CMakeLists.txt b/test/suites/platform/CMakeLists.txt
index 0fa3632..b6a1f4f 100644
--- a/test/suites/platform/CMakeLists.txt
+++ b/test/suites/platform/CMakeLists.txt
@@ -40,27 +40,29 @@
 
 ####################### Secure #################################################
 
-target_sources(tfm_test_suite_platform_s
-    PRIVATE
-        ${CMAKE_CURRENT_SOURCE_DIR}/platform_tests_common.c
-        ${CMAKE_CURRENT_SOURCE_DIR}/secure/platform_s_interface_testsuite.c
-)
+if (TEST_S)
+    target_sources(tfm_test_suite_platform_s
+        PRIVATE
+            ${CMAKE_CURRENT_SOURCE_DIR}/platform_tests_common.c
+            ${CMAKE_CURRENT_SOURCE_DIR}/secure/platform_s_interface_testsuite.c
+    )
 
-target_include_directories(tfm_test_suite_platform_s
-    PUBLIC
-        ${CMAKE_CURRENT_SOURCE_DIR}/secure
-    PRIVATE
-        ${CMAKE_CURRENT_SOURCE_DIR}
-)
+    target_include_directories(tfm_test_suite_platform_s
+        PUBLIC
+            ${CMAKE_CURRENT_SOURCE_DIR}/secure
+        PRIVATE
+            ${CMAKE_CURRENT_SOURCE_DIR}
+    )
 
-target_link_libraries(tfm_test_suite_platform_s
-    PRIVATE
-        tfm_test_framework
-        tfm_secure_api
-        platform_s
-)
+    target_link_libraries(tfm_test_suite_platform_s
+        PRIVATE
+            tfm_test_framework
+            tfm_secure_api
+            platform_s
+    )
 
-target_link_libraries(tfm_s_tests
-    INTERFACE
-        tfm_test_suite_platform_s
-)
+    target_link_libraries(tfm_s_tests
+        INTERFACE
+            tfm_test_suite_platform_s
+    )
+endif()
diff --git a/test/suites/ps/CMakeLists.txt b/test/suites/ps/CMakeLists.txt
index 263b4f9..017acc6 100644
--- a/test/suites/ps/CMakeLists.txt
+++ b/test/suites/ps/CMakeLists.txt
@@ -47,37 +47,39 @@
 
 ####################### Secure #################################################
 
-target_sources(tfm_test_suite_ps_s
-    PRIVATE
-        ${CMAKE_CURRENT_SOURCE_DIR}/secure/psa_ps_s_interface_testsuite.c
-        ${CMAKE_CURRENT_SOURCE_DIR}/secure/psa_ps_s_reliability_testsuite.c
-        $<$<BOOL:${PS_TEST_NV_COUNTERS}>:${CMAKE_CURRENT_SOURCE_DIR}/secure/ps_rollback_protection_testsuite.c>
-        $<$<BOOL:${PS_TEST_NV_COUNTERS}>:${CMAKE_CURRENT_SOURCE_DIR}/secure/nv_counters/test_ps_nv_counters.c>
-)
+if (TEST_S)
+    target_sources(tfm_test_suite_ps_s
+        PRIVATE
+            ${CMAKE_CURRENT_SOURCE_DIR}/secure/psa_ps_s_interface_testsuite.c
+            ${CMAKE_CURRENT_SOURCE_DIR}/secure/psa_ps_s_reliability_testsuite.c
+            $<$<BOOL:${PS_TEST_NV_COUNTERS}>:${CMAKE_CURRENT_SOURCE_DIR}/secure/ps_rollback_protection_testsuite.c>
+            $<$<BOOL:${PS_TEST_NV_COUNTERS}>:${CMAKE_CURRENT_SOURCE_DIR}/secure/nv_counters/test_ps_nv_counters.c>
+    )
 
-target_include_directories(tfm_test_suite_ps_s
-    PUBLIC
-        ${CMAKE_CURRENT_SOURCE_DIR}/secure
-    PRIVATE
-        ${CMAKE_CURRENT_SOURCE_DIR}/secure/nv_counters
-)
+    target_include_directories(tfm_test_suite_ps_s
+        PUBLIC
+            ${CMAKE_CURRENT_SOURCE_DIR}/secure
+        PRIVATE
+            ${CMAKE_CURRENT_SOURCE_DIR}/secure/nv_counters
+    )
 
-target_compile_definitions(tfm_test_suite_ps_s
-    PRIVATE
-        PS_MAX_ASSET_SIZE=${PS_MAX_ASSET_SIZE}
-)
+    target_compile_definitions(tfm_test_suite_ps_s
+        PRIVATE
+            PS_MAX_ASSET_SIZE=${PS_MAX_ASSET_SIZE}
+    )
 
-target_link_libraries(tfm_test_suite_ps_s
-    PRIVATE
-        tfm_test_framework
-        platform_region_defs
-        tfm_partition_ps
-        tfm_partition_ps_test
-        tfm_spm
-        platform_s
-)
+    target_link_libraries(tfm_test_suite_ps_s
+        PRIVATE
+            tfm_test_framework
+            platform_region_defs
+            tfm_partition_ps
+            tfm_partition_ps_test
+            tfm_spm
+            platform_s
+    )
 
-target_link_libraries(tfm_s_tests
-    INTERFACE
-        tfm_test_suite_ps_s
-)
+    target_link_libraries(tfm_s_tests
+        INTERFACE
+            tfm_test_suite_ps_s
+    )
+endif()
diff --git a/test/test_services/CMakeLists.txt b/test/test_services/CMakeLists.txt
index e597623..eaab907 100644
--- a/test/test_services/CMakeLists.txt
+++ b/test/test_services/CMakeLists.txt
@@ -12,29 +12,31 @@
     tfm_toolchain_reload_compiler()
 endif()
 
-# Secure tests are declared in this dir so that it can use the secure CPU
-# definitions
-add_library(tfm_s_tests INTERFACE)
-if (TFM_PARTITION_CRYPTO)
-    add_library(tfm_test_suite_crypto_s STATIC EXCLUDE_FROM_ALL)
-endif()
-if (TFM_PARTITION_INITIAL_ATTESTATION)
-    add_library(tfm_test_suite_attestation_s STATIC EXCLUDE_FROM_ALL)
-endif()
-if(TFM_PARTITION_INTERNAL_TRUSTED_STORAGE)
-    add_library(tfm_test_suite_its_s STATIC EXCLUDE_FROM_ALL)
-endif()
-if (TFM_PARTITION_PROTECTED_STORAGE)
-    add_library(tfm_test_suite_ps_s STATIC EXCLUDE_FROM_ALL)
-endif()
-if(NOT TFM_PSA_API AND TFM_PARTITION_AUDIT_LOG)
-    add_library(tfm_test_suite_audit_s STATIC EXCLUDE_FROM_ALL)
-endif()
-if(TFM_PARTITION_PLATFORM)
-    add_library(tfm_test_suite_platform_s STATIC EXCLUDE_FROM_ALL)
-endif()
-if(TFM_PSA_API)
-    add_library(tfm_test_suite_ipc_s STATIC EXCLUDE_FROM_ALL)
+if (TEST_S)
+    # Secure tests are declared in this dir so that it can use the secure CPU
+    # definitions
+    add_library(tfm_s_tests INTERFACE)
+    if (TFM_PARTITION_CRYPTO)
+        add_library(tfm_test_suite_crypto_s STATIC EXCLUDE_FROM_ALL)
+    endif()
+    if (TFM_PARTITION_INITIAL_ATTESTATION)
+        add_library(tfm_test_suite_attestation_s STATIC EXCLUDE_FROM_ALL)
+    endif()
+    if(TFM_PARTITION_INTERNAL_TRUSTED_STORAGE)
+        add_library(tfm_test_suite_its_s STATIC EXCLUDE_FROM_ALL)
+    endif()
+    if (TFM_PARTITION_PROTECTED_STORAGE)
+        add_library(tfm_test_suite_ps_s STATIC EXCLUDE_FROM_ALL)
+    endif()
+    if(NOT TFM_PSA_API AND TFM_PARTITION_AUDIT_LOG)
+        add_library(tfm_test_suite_audit_s STATIC EXCLUDE_FROM_ALL)
+    endif()
+    if(TFM_PARTITION_PLATFORM)
+        add_library(tfm_test_suite_platform_s STATIC EXCLUDE_FROM_ALL)
+    endif()
+    if(TFM_PSA_API)
+        add_library(tfm_test_suite_ipc_s STATIC EXCLUDE_FROM_ALL)
+    endif()
 endif()
 
 add_subdirectory(tfm_core_test)
@@ -43,8 +45,10 @@
     add_subdirectory(tfm_irq_test_service_1)
 endif()
 add_subdirectory(tfm_ps_test_service)
-add_subdirectory(tfm_secure_client_service)
-add_subdirectory(tfm_secure_client_2)
+if (TEST_S)
+    add_subdirectory(tfm_secure_client_service)
+    add_subdirectory(tfm_secure_client_2)
+endif()
 if(TFM_PSA_API)
     add_subdirectory(tfm_ipc_service)
     add_subdirectory(tfm_ipc_client)