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>
+)