| # Kconfig - C library |
| |
| # |
| # Copyright (c) 2016 Intel Corporation |
| # |
| # SPDX-License-Identifier: Apache-2.0 |
| # |
| |
| menu "C Library" |
| depends on !NATIVE_APPLICATION |
| |
| config NEWLIB_LIBC |
| bool "Build with newlib c library" |
| help |
| Build with newlib library. The newlib library is expected to be |
| part of the SDK in this case. |
| |
| if "$(ZEPHYR_TOOLCHAIN_VARIANT)" = "gnuarmemb" |
| config NEWLIB_LIBC_NANO |
| bool "Build with newlib-nano c library" |
| depends on NEWLIB_LIBC |
| default y |
| help |
| Build with newlib-nano library, for small embedded apps. |
| The newlib-nano library for ARM embedded processors is a part of the |
| GNU Tools for ARM Embedded Processors. |
| endif |
| |
| config NEWLIB_LIBC_ALIGNED_HEAP_SIZE |
| int "Newlib aligned heap size" |
| depends on MPU_REQUIRES_POWER_OF_TWO_ALIGNMENT |
| depends on NEWLIB_LIBC |
| depends on USERSPACE |
| default 0 |
| help |
| If user mode is enabled, and MPU hardware has requirements that |
| regions be sized to a power of two and aligned to their size, |
| and user mode threads need to access this heap, then this is necessary |
| to properly define an MPU region for the heap. |
| |
| If this is left at 0, then remaining system RAM will be used for this |
| area and it may not be possible to program it as an MPU region. |
| |
| config NEWLIB_LIBC_FLOAT_PRINTF |
| bool "Build with newlib float printf" |
| depends on NEWLIB_LIBC |
| help |
| Build with floating point printf enabled. This will increase the size of |
| the image. |
| |
| config NEWLIB_LIBC_FLOAT_SCANF |
| bool "Build with newlib float scanf" |
| depends on NEWLIB_LIBC |
| help |
| Build with floating point scanf enabled. This will increase the size of |
| the image. |
| |
| config STDOUT_CONSOLE |
| bool "Send stdout to console" |
| depends on CONSOLE_HAS_DRIVER |
| default y |
| help |
| This option directs standard output (e.g. printf) to the console |
| device, rather than suppressing it entirely. See also EARLY_CONSOLE |
| option. |
| |
| # Minimal libc options |
| |
| config MINIMAL_LIBC_MALLOC_ARENA_SIZE |
| int "Size of the minimal libc malloc arena" |
| depends on !NEWLIB_LIBC |
| default 0 |
| help |
| Indicate the size of the memory arena used for minimal libc's |
| malloc() implementation. This size value must be compatible with |
| a sys_mem_pool definition with nmax of 1 and minsz of 16. |
| |
| config MINIMAL_LIBC_LL_PRINTF |
| bool "Build with minimal libc long long printf" if !64BIT |
| depends on !NEWLIB_LIBC |
| default y if 64BIT |
| help |
| Build with long long printf enabled. This will increase the size of |
| the image. |
| |
| endmenu |