Build: Fix linker and preprocess define in cmake

This patch fixes the embedded_set_target_link_defines custom function
to handle more than one pre-processor defines and also modifies the
compiler_preprocess_file custom function to handle additional macro
definitions and include paths (the gnuarm specific version of this
function already handles these).

Change-Id: I46c6ae8c98d20e6e2eb8379eda460a0f973abf8e
Signed-off-by: David Vincze <david.vincze@arm.com>
diff --git a/cmake/Common/BuildSys.cmake b/cmake/Common/BuildSys.cmake
index 396e131..741042c 100644
--- a/cmake/Common/BuildSys.cmake
+++ b/cmake/Common/BuildSys.cmake
@@ -656,8 +656,8 @@
 #
 function(embedded_set_target_link_defines)
 	set( _OPTIONS_ARGS )				#Option (on/off) arguments (e.g. IGNORE_CASE)
-	set( _ONE_VALUE_ARGS  TARGET DEFINES)	#Single option arguments (e.g. PATH "./foo/bar")
-	set( _MULTI_VALUE_ARGS )			#List arguments (e.g. LANGUAGES C ASM CXX)
+	set( _ONE_VALUE_ARGS TARGET)	#Single option arguments (e.g. PATH "./foo/bar")
+	set( _MULTI_VALUE_ARGS DEFINES)			#List arguments (e.g. LANGUAGES C ASM CXX)
 	cmake_parse_arguments(_MY_PARAMS "${_OPTIONS_ARGS}" "${_ONE_VALUE_ARGS}" "${_MULTI_VALUE_ARGS}" ${ARGN} )
 
 	if (NOT DEFINED _MY_PARAMS_TARGET)