mirror of
https://github.com/zephyrproject-rtos/zephyr
synced 2025-08-26 20:36:23 +00:00
This adds the necessary bits to utilize the x86_64 toolchain built by sdk-ng for x86_64 when toolchain variant is either zephyr or xtools. This allows decoupling the builds from the host toolchain. Newlib is also available with this toolchain so remove the Kconfig restriction on CONFIG_NEWLIB_LIBC. Signed-off-by: Daniel Leung <daniel.leung@intel.com>
86 lines
2.4 KiB
Plaintext
86 lines
2.4 KiB
Plaintext
# 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
|
|
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
|