# # For a description of the syntax of this configuration file, # see misc/tools/kconfig-language.txt. # config STDIO_BUFFER_SIZE int "C STDIO buffer size" default 64 ---help--- Size of buffers using within the C buffered I/O interfaces. (printf, putchar, fwrite, etc.). config STDIO_LINEBUFFER bool "STDIO line buffering" default y ---help--- Flush buffer I/O whenever a newline character is found in the output data stream. config NUNGET_CHARS int "Number unget() characters" default 2 ---help--- Number of characters that can be buffered by ungetc() (Only if NFILE_STREAMS > 0) config LIB_HOMEDIR string "Home directory" default "/" depends on !DISABLE_ENVIRON ---help--- The home directory to use with operations like such as 'cd ~' config HAVE_LIBM bool "Architecture-specific libm.a" default n ---help--- Architecture specific logic provides an implementation of libm.a and a math.h header file that can be found at include/arch/math.h. config NOPRINTF_FIELDWIDTH bool "Disable sprintf support fieldwidth" default n ---help--- sprintf-related logic is a little smaller if we do not support fieldwidthes config LIBC_FLOATINGPOINT bool "Enable floating point in printf" default n ---help--- By default, floating point support in printf, sscanf, etc. is disabled. config LIBC_STRERROR bool "Enable strerror" default n ---help--- strerror() is useful because it decodes 'errno' values into a human readable strings. But it can also require a lot of memory. If this option is selected, strerror() will still exist in the build but it will not decode error values. This option should be used by other logic to decide if it should use strerror() or not. For example, the NSH application will not use strerror() if this option is not selected; perror() will not use strerror() is this option is not selected (see also NSH_STRERROR). config LIBC_STRERROR_SHORT bool "Use short error descriptions in strerror()" default n depends on LIBC_STRERROR ---help--- If this option is selected, then strerror() will use a shortened string when it decodes the error. Specifically, strerror() is simply use the string that is the common name for the error. For example, the 'errno' value of 2 will produce the string "No such file or directory" is LIBC_STRERROR_SHORT is not defined but the string "ENOENT" is LIBC_STRERROR_SHORT is defined. config LIBC_PERROR_STDOUT bool "perror() to stdout" default n ---help--- POSIX requires that perror() provide its output on stderr. This option may be defined, however, to provide perror() output that is serialized with other stdout messages. config ARCH_LOWPUTC bool "Low-level console output" default "y" ---help--- architecture supports low-level, boot time console output config LIB_SENDFILE_BUFSIZE int "sendfile() buffer size" default 512 ---help--- Size of the I/O buffer to allocate in sendfile(). Default: 512b config ARCH_ROMGETC bool "Support for ROM string access" default n ---help--- In Harvard architectures, data accesses and instruction accesses occur on different busses, perhaps concurrently. All data accesses are performed on the data bus unless special machine instructions are used to read data from the instruction address space. Also, in the typical MCU, the available SRAM data memory is much smaller that the non-volatile FLASH instruction memory. So if the application requires many constant strings, the only practical solution may be to store those constant strings in FLASH memory where they can only be accessed using architecture-specific machine instructions. If ARCH_ROMGETC is defined, then the architecture logic must export the function up_romgetc(). up_romgetc() will simply read one byte of data from the instruction space. If ARCH_ROMGETC, certain C stdio functions are effected: (1) All format strings in printf, fprintf, sprintf, etc. are assumed to lie in FLASH (string arguments for %s are still assumed to reside in SRAM). And (2), the string argument to puts and fputs is assumed to reside in FLASH. Clearly, these assumptions may have to modified for the particular needs of your environment. There is no "one-size-fits-all" solution for this problem. config ARCH_OPTIMIZED_FUNCTIONS bool "Enable arch optimized functions" default n ---help--- Allow for architecture optimized implementations of certain library functions. Architecture-specific implementations can improve overall system performance. if ARCH_OPTIMIZED_FUNCTIONS config ARCH_MEMCPY bool "memcpy" default n config ARCH_MEMCMP bool "memcmp" default n config ARCH_MEMMOVE bool "memmove" default n config ARCH_MEMSET bool "memset" default n config ARCH_STRCMP bool "strcmp" default n config ARCH_STRCPY bool "strcpy" default n config ARCH_STRNCPY bool "strncpy" default n config ARCH_STRLEN bool "strlen" default n config ARCH_STRNLEN bool "strlen" default n config ARCH_BZERO bool "bzero" default n endif