blob: 5733b881eef8cbebd40323fd1aecfa419d2c96b0 [file] [log] [blame]
# Copyright (c) 2025 IAR Systems AB
#
# SPDX-License-Identifier: Apache-2.0
config LD_LINKER_SCRIPT_SUPPORTED
default n
choice LINKER_SCRIPT
default CMAKE_LINKER_GENERATOR
endchoice
menu "IAR options"
choice IAR_INIT
bool "Static initialization method"
depends on XIP
default IAR_ZEPHYR_INIT
config IAR_DATA_INIT
bool "IAR"
select SKIP_BSS_CLEAR # IAR handles zeroing.
help
IAR handles initialization of static variables.
Instead of `z_prep_c` calling Zephyrs `arch_data_copy`
we call IARs own proprietary initialization method
which can save time and space.
config IAR_ZEPHYR_INIT
bool "Zephyr"
help
Zephyr handles initialization of static variables.
This is the regular `arch_data_copy`.
endchoice
config IAR_SEMIHOSTING
bool "Use the IAR semihosting implementation."
depends on IAR_LIBC
help
Use the semihosting implementation in the IAR library
instead of the Zephyr implementation.
config IAR_BUFFERED_WRITE
bool "Use buffered write"
depends on IAR_SEMIHOSTING
help
Instead of printing one character at a time
this option uses a buffer to print a line
at a time instead, increasing speed of printout.
endmenu
config TOOLCHAIN_IAR_SUPPORTS_THREAD_LOCAL_STORAGE
def_bool y
select TOOLCHAIN_SUPPORTS_THREAD_LOCAL_STORAGE
# Should we set this? It doesn't seem to be used
# We support most but don't set __GNUC__
#
config TOOLCHAIN_IAR_SUPPORTS_GNU_EXTENSIONS
def_bool y
select TOOLCHAIN_SUPPORTS_GNU_EXTENSIONS