diff --git a/cmake/install.cmake b/cmake/install.cmake
index 106369e..11a8076 100644
--- a/cmake/install.cmake
+++ b/cmake/install.cmake
@@ -69,18 +69,18 @@
             DESTINATION ${INSTALL_INTERFACE_INC_DIR})
 endif()
 
-if (TFM_PARTITION_PROTECTED_STORAGE)
+if (TFM_PARTITION_PROTECTED_STORAGE OR FORWARD_PROT_MSG)
     install(FILES       ${INTERFACE_INC_DIR}/psa/protected_storage.h
             DESTINATION ${INSTALL_INTERFACE_INC_DIR}/psa)
 endif()
 
-if (TFM_PARTITION_INTERNAL_TRUSTED_STORAGE)
+if (TFM_PARTITION_INTERNAL_TRUSTED_STORAGE OR FORWARD_PROT_MSG)
     install(FILES       ${INTERFACE_INC_DIR}/psa/internal_trusted_storage.h
                         ${INTERFACE_INC_DIR}/psa/storage_common.h
             DESTINATION ${INSTALL_INTERFACE_INC_DIR}/psa)
 endif()
 
-if (TFM_PARTITION_CRYPTO)
+if (TFM_PARTITION_CRYPTO OR FORWARD_PROT_MSG)
     install(FILES       ${INTERFACE_INC_DIR}/psa/crypto_extra.h
                         ${INTERFACE_INC_DIR}/psa/crypto_compat.h
                         ${INTERFACE_INC_DIR}/psa/crypto.h
@@ -94,7 +94,7 @@
             DESTINATION ${INSTALL_INTERFACE_INC_DIR})
 endif()
 
-if (TFM_PARTITION_INITIAL_ATTESTATION)
+if (TFM_PARTITION_INITIAL_ATTESTATION OR FORWARD_PROT_MSG)
     install(FILES       ${INTERFACE_INC_DIR}/psa/initial_attestation.h
             DESTINATION ${INSTALL_INTERFACE_INC_DIR}/psa)
 endif()
@@ -105,7 +105,7 @@
             DESTINATION ${INSTALL_INTERFACE_INC_DIR})
 endif()
 
-if(TFM_PARTITION_PLATFORM)
+if(TFM_PARTITION_PLATFORM OR FORWARD_PROT_MSG)
     install(FILES       ${INTERFACE_INC_DIR}/tfm_platform_api.h
             DESTINATION ${INSTALL_INTERFACE_INC_DIR})
 endif()
@@ -134,7 +134,7 @@
             DESTINATION ${INSTALL_INTERFACE_SRC_DIR})
 endif()
 
-if (TFM_PARTITION_PROTECTED_STORAGE)
+if (TFM_PARTITION_PROTECTED_STORAGE OR FORWARD_PROT_MSG)
     if (TFM_PSA_API)
         install(FILES       ${INTERFACE_SRC_DIR}/tfm_ps_ipc_api.c
                 DESTINATION ${INSTALL_INTERFACE_SRC_DIR})
@@ -144,7 +144,7 @@
     endif()
 endif()
 
-if (TFM_PARTITION_INTERNAL_TRUSTED_STORAGE)
+if (TFM_PARTITION_INTERNAL_TRUSTED_STORAGE OR FORWARD_PROT_MSG)
     if (TFM_PSA_API)
         install(FILES       ${INTERFACE_SRC_DIR}/tfm_its_ipc_api.c
                 DESTINATION ${INSTALL_INTERFACE_SRC_DIR})
@@ -154,7 +154,7 @@
     endif()
 endif()
 
-if (TFM_PARTITION_CRYPTO)
+if (TFM_PARTITION_CRYPTO OR FORWARD_PROT_MSG)
     if (TFM_PSA_API)
         install(FILES       ${INTERFACE_SRC_DIR}/tfm_crypto_ipc_api.c
                 DESTINATION ${INSTALL_INTERFACE_SRC_DIR})
@@ -164,7 +164,7 @@
     endif()
 endif()
 
-if (TFM_PARTITION_INITIAL_ATTESTATION)
+if (TFM_PARTITION_INITIAL_ATTESTATION OR FORWARD_PROT_MSG)
     if (TFM_PSA_API)
         install(FILES       ${INTERFACE_SRC_DIR}/tfm_initial_attestation_ipc_api.c
                 DESTINATION ${INSTALL_INTERFACE_SRC_DIR})
@@ -179,7 +179,7 @@
             DESTINATION ${INSTALL_INTERFACE_SRC_DIR})
 endif()
 
-if(TFM_PARTITION_PLATFORM)
+if(TFM_PARTITION_PLATFORM OR FORWARD_PROT_MSG)
     if(TFM_PSA_API)
         install(FILES       ${INTERFACE_SRC_DIR}/tfm_platform_ipc_api.c
                 DESTINATION ${INSTALL_INTERFACE_SRC_DIR})
