Apps: CMake: allow system machine linker option
authorWendy Liang <jliang@xilinx.com>
Tue, 16 Aug 2016 04:59:47 +0000 (21:59 -0700)
committerWendy Liang <jliang@xilinx.com>
Thu, 13 Oct 2016 05:01:49 +0000 (22:01 -0700)
Allow to specify system/machine specific linker option.

Signed-off-by: Wendy Liang <jliang@xilinx.com>
apps/echo_test/CMakeLists.txt
apps/func_test_suite/CMakeLists.txt
apps/matrix_multiply/CMakeLists.txt
apps/rpc_demo/CMakeLists.txt

index 8d76d5ad1a5cddcf108b968073922a0be2a2c1c6..37fdf44f727e42558dd026d64beb9449ddd009d3 100644 (file)
@@ -10,7 +10,7 @@ collector_list (_list PROJECT_LIB_DIRS)
 collector_list (_app_list APP_LIB_DIRS)
 link_directories (${_list} ${_app_list})
 
-get_property (_linker_script GLOBAL PROPERTY APP_LINKER_SCRIPT)
+get_property (_linker_opt GLOBAL PROPERTY APP_LINKER_OPT)
 collector_list (_deps PROJECT_LIB_DEPS)
 
 set (OPENAMP_LIB open_amp)
@@ -46,7 +46,7 @@ foreach (_app echo_test echo_testd)
         set_source_files_properties(${_sources} PROPERTIES COMPILE_FLAGS "${_cflags}")
   
         if (WITH_REMOTEPROC_MASTER)
-          target_link_libraries(${_app}.out -Wl,-Map=${_app}.map -Wl,--gc-sections -T\"${_linker_script}\" -Wl,--start-group ${_fw_dir}/firmware1.o ${_fw_dir}/firmware2.o ${OPENAM__LIB}-static ${_deps} -Wl,--end-group)
+          target_link_libraries(${_app}.out -Wl,-Map=${_app}.map -Wl,--gc-sections ${_linker_opt} -Wl,--start-group ${_fw_dir}/firmware1.o ${_fw_dir}/firmware2.o ${OPENAM__LIB}-static ${_deps} -Wl,--end-group)
           add_custom_target (${_app}.bin ALL
           ${CROSS_PREFIX}objcopy -O binary ${_app}.out ${_app}.bin
           DEPENDS ${_app}.out)
@@ -57,7 +57,7 @@ foreach (_app echo_test echo_testd)
   
         else (WITH_REMOTEPROC_MASTER)
   
-          target_link_libraries(${_app}.out -Wl,-Map=${_app}.map -Wl,--gc-sections -T\"${_linker_script}\" -Wl,--start-group ${OPENAMP_LIB}-static ${_deps} -Wl,--end-group)
+          target_link_libraries(${_app}.out -Wl,-Map=${_app}.map -Wl,--gc-sections ${_linker_opt} -Wl,--start-group ${OPENAMP_LIB}-static ${_deps} -Wl,--end-group)
   
           install (TARGETS ${_app}.out RUNTIME DESTINATION bin)
         endif (WITH_REMOTEPROC_MASTER)
index ae5aeb1ea441fd717d00f61147db7f2fbf2a2cb3..b66603b2c73241af403ee27eaf2618ff73c12fe3 100644 (file)
@@ -22,13 +22,13 @@ add_executable (${_app}.out ${_list})
 
 set_source_files_properties(${_list} PROPERTIES COMPILE_FLAGS "${_cflags}")
 
-get_property (_linker_script GLOBAL PROPERTY APP_LINKER_SCRIPT)
+get_property (_linker_opt GLOBAL PROPERTY APP_LINKER_OPT)
 get_property (_deps GLOBAL PROPERTY APP_LIB_DEPS)
 set (_deps "${_deps} ${PLATFORM_LIB_DEPS}")
 string (STRIP "${_deps}" _deps)
 
 if (WITH_REMOTEPROC_MASTER)
-target_link_libraries(${_app}.out -Wl,-Map=${_app}.map -Wl,--gc-sections -T\"${_linker_script}\" -Wl,--start-group ${_fw_dir}/firmware1.o ${_fw_dir}/firmware2.o ${_deps} -Wl,--end-group)
+target_link_libraries(${_app}.out -Wl,-Map=${_app}.map -Wl,--gc-sections ${_linker_opt} -Wl,--start-group ${_fw_dir}/firmware1.o ${_fw_dir}/firmware2.o ${_deps} -Wl,--end-group)
 add_custom_target (${_app}.bin ALL
   ${CROSS_PREFIX}objcopy -O binary ${_app}.out ${_app}.bin
   DEPENDS ${_app}.out)
@@ -37,7 +37,7 @@ add_dependencies (${_app}.out ${_fw_dir}/firmware1.o ${_fw_dir}/firmware2.o)
 
 install (FILES "${CMAKE_CURRENT_BINARY_DIR}/${_app}.bin" DESTINATION bin)
 else (WITH_REMOTEPROC_MASTER)
-target_link_libraries(${_app}.out -Wl,-Map=${_app}.map -Wl,--gc-sections -T\"${_linker_script}\" -Wl,--start-group ${_deps} -Wl,--end-group)
+target_link_libraries(${_app}.out -Wl,-Map=${_app}.map -Wl,--gc-sections ${_linker_opt} -Wl,--start-group ${_deps} -Wl,--end-group)
 
 install (TARGETS ${_app}.out RUNTIME DESTINATION bin)
 endif (WITH_REMOTEPROC_MASTER)
index d7ada392744e7923ce16cca2b1085c1fe1a5acc5..0432160d683f311b10b293d86b7868231abab41e 100644 (file)
@@ -9,7 +9,7 @@ collector_list (_list PROJECT_LIB_DIRS)
 collector_list (_app_list APP_LIB_DIRS)
 link_directories (${_list} ${_app_list})
 
-get_property (_linker_script GLOBAL PROPERTY APP_LINKER_SCRIPT)
+get_property (_linker_opt GLOBAL PROPERTY APP_LINKER_OPT)
 collector_list (_deps PROJECT_LIB_DEPS)
 
 set (OPENAMP_LIB open_amp)
@@ -44,7 +44,7 @@ foreach (_app matrix_multiply matrix_multiplyd)
         set_source_files_properties(${_sources} PROPERTIES COMPILE_FLAGS "${_cflags}")
   
         if (WITH_REMOTEPROC_MASTER)
-          target_link_libraries(${_app}.out -Wl,-Map=${_app}.map -Wl,--gc-sections -T\"${_linker_script}\" -Wl,--start-group ${_fw_dir}/firmware1.o ${_fw_dir}/firmware2.o ${OPENAM__LIB}-static ${_deps} -Wl,--end-group)
+          target_link_libraries(${_app}.out -Wl,-Map=${_app}.map -Wl,--gc-sections ${_linker_opt} -Wl,--start-group ${_fw_dir}/firmware1.o ${_fw_dir}/firmware2.o ${OPENAM__LIB}-static ${_deps} -Wl,--end-group)
           add_custom_target (${_app}.bin ALL
           ${CROSS_PREFIX}objcopy -O binary ${_app}.out ${_app}.bin
           DEPENDS ${_app}.out)
@@ -55,7 +55,7 @@ foreach (_app matrix_multiply matrix_multiplyd)
   
         else (WITH_REMOTEPROC_MASTER)
   
-          target_link_libraries(${_app}.out -Wl,-Map=${_app}.map -Wl,--gc-sections -T\"${_linker_script}\" -Wl,--start-group ${OPENAMP_LIB}-static ${_deps} -Wl,--end-group)
+          target_link_libraries(${_app}.out -Wl,-Map=${_app}.map -Wl,--gc-sections ${_linker_opt} -Wl,--start-group ${OPENAMP_LIB}-static ${_deps} -Wl,--end-group)
   
           install (TARGETS ${_app}.out RUNTIME DESTINATION bin)
         endif (WITH_REMOTEPROC_MASTER)
index 1103a173fbf31936a36b0dcfb1cf8e8bf3d8ab58..d73188960075c6b0c098b426b4d0f0cabeaff5d4 100644 (file)
@@ -9,7 +9,7 @@ collector_list (_list PROJECT_LIB_DIRS)
 collector_list (_app_list APP_LIB_DIRS)
 link_directories (${_list} ${_app_list})
 
-get_property (_linker_script GLOBAL PROPERTY APP_LINKER_SCRIPT)
+get_property (_linker_opt GLOBAL PROPERTY APP_LINKER_OPT)
 collector_list (_deps PROJECT_LIB_DEPS)
 
 set (OPENAMP_LIB open_amp)
@@ -39,7 +39,7 @@ foreach (_app ${app_list})
       add_executable (${_app}.out ${_sources})
       set_source_files_properties(${_sources} PROPERTIES COMPILE_FLAGS "${_cflags}")
 
-      target_link_libraries(${_app}.out -Wl,-Map=${_app}.map -Wl,--gc-sections -T\"${_linker_script}\" -Wl,--start-group ${OPENAMP_LIB}-static ${_deps} -Wl,--end-group)
+      target_link_libraries(${_app}.out -Wl,-Map=${_app}.map -Wl,--gc-sections ${_linker_opt} -Wl,--start-group ${OPENAMP_LIB}-static ${_deps} -Wl,--end-group)
       install (TARGETS ${_app}.out RUNTIME DESTINATION bin)
     endif (${PROJECT_SYSTEM} STREQUAL "linux" )
   endif (WITH_STATIC_LIB)