Buildsystem restructuring

- Allow linker file to be overriden
- Disable Trustzone build for other targets than Corstone-300
- Make toolchain TARGET_CPU variable cached

Change-Id: I98a15e1080e4bf49e029578888b1e4ce362bbab7
diff --git a/cmake/toolchain/arm-none-eabi-gcc.cmake b/cmake/toolchain/arm-none-eabi-gcc.cmake
index 2c0ebd0..b0a27fd 100644
--- a/cmake/toolchain/arm-none-eabi-gcc.cmake
+++ b/cmake/toolchain/arm-none-eabi-gcc.cmake
@@ -16,9 +16,7 @@
 # limitations under the License.
 #
 
-if (NOT TARGET_CPU)
-    set(TARGET_CPU "cortex-m4")
-endif()
+set(TARGET_CPU "cortex-m4" CACHE STRING "Target CPU")
 
 set(CMAKE_SYSTEM_NAME Generic)
 set(CMAKE_C_COMPILER "arm-none-eabi-gcc")