FIH: Split FIH library into headers and impl
In order to work with BL1 code-sharing. Create generic hal target to
avoid having to link to platform_s.
Change-Id: Id138b2a5e37790ffc482b2b3afdd9dbab2d7ba04
Signed-off-by: Raef Coles <raef.coles@arm.com>
diff --git a/lib/fih/CMakeLists.txt b/lib/fih/CMakeLists.txt
index e9e1a9c..a03aff5 100644
--- a/lib/fih/CMakeLists.txt
+++ b/lib/fih/CMakeLists.txt
@@ -7,25 +7,32 @@
cmake_minimum_required(VERSION 3.15)
-add_library(tfm_fih STATIC)
+add_library(tfm_fih_headers INTERFACE)
+add_library(tfm_fih_implementation STATIC)
-target_sources(tfm_fih
+target_sources(tfm_fih_implementation
PRIVATE
src/fih.c
)
-target_include_directories(tfm_fih
- PUBLIC
+target_include_directories(tfm_fih_headers
+ INTERFACE
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/inc>
)
-target_link_libraries(tfm_fih
- PRIVATE
- platform_s
+target_link_libraries(tfm_fih_implementation
+ PUBLIC
+ tfm_fih_headers
+ platform_common_interface
)
-target_compile_definitions(tfm_fih
- PUBLIC
+target_compile_definitions(tfm_fih_headers
+ INTERFACE
TFM_FIH_PROFILE_${TFM_FIH_PROFILE}
$<$<NOT:$<STREQUAL:${TFM_FIH_PROFILE},OFF>>:TFM_FIH_PROFILE_ON>
)
+
+target_compile_options(tfm_fih_headers
+ INTERFACE
+ $<$<C_COMPILER_ID:GNU>:-Wno-unused-value>
+)