1# Copyright (c) 2024 Nordic Semiconductor 2# 3# SPDX-License-Identifier: Apache-2.0 4 5set_property(TARGET linker PROPERTY cpp_base -Hcplus) 6 7check_set_linker_property(TARGET linker PROPERTY baremetal 8 -Hnosdata 9 -Xtimer0 # to suppress the warning message 10 -Hnoxcheck_obj 11 -Hnocplus 12 -Hhostlib= 13 -Hheap=0 14 -Hnoivt 15 -Hnocrt 16) 17 18if(CONFIG_ARC) 19 check_set_linker_property(TARGET linker APPEND PROPERTY baremetal 20 -Hlld 21 ) 22endif() 23 24# There are two options: 25# - We have full MWDT libc support and we link MWDT libc - this is default 26# behavior and we don't need to do something for that. 27# - We use minimal libc provided by Zephyr itself. In that case we must not 28# link MWDT libc, but we still need to link libmw 29if(CONFIG_MINIMAL_LIBC) 30 check_set_linker_property(TARGET linker APPEND PROPERTY baremetal 31 -Hnolib 32 -Hldopt=-lmw 33 ) 34endif() 35 36check_set_linker_property(TARGET linker PROPERTY orphan_warning 37 ${LINKERFLAGPREFIX},--orphan-handling=warn 38) 39 40check_set_linker_property(TARGET linker PROPERTY orphan_error 41 ${LINKERFLAGPREFIX},--orphan-handling=error 42) 43 44set_property(TARGET linker PROPERTY partial_linking "-r") 45 46# Extra warnings options for twister run 47set_property(TARGET linker PROPERTY warnings_as_errors -Wl,--fatal-warnings) 48 49check_set_linker_property(TARGET linker PROPERTY sort_alignment -Wl,--sort-section=alignment) 50