d8da8dcc44
Ref: Linux print unknown errors like "Unknown error nnn" https://man7.org/linux/man-pages/man3/strerror.3.html#RETURN_VALUE Note: These interfaces are called at low freq, so a static buffer may be enough. Signed-off-by: Zhe Weng <wengzhe@xiaomi.com>
128 lines
4.1 KiB
Plaintext
128 lines
4.1 KiB
Plaintext
#
|
|
# For a description of the syntax of this configuration file,
|
|
# see the file kconfig-language.txt in the NuttX tools repository.
|
|
#
|
|
|
|
menu "errno Decode Support"
|
|
|
|
config LIBC_STRERROR
|
|
bool "Enable strerror"
|
|
default n
|
|
---help---
|
|
strerror() is useful because it decodes 'errno' values into human readable
|
|
strings. But it can also require a lot of memory. If this option is not
|
|
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 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" if LIBC_STRERROR_SHORT
|
|
is not defined but the string "ENOENT" if LIBC_STRERROR_SHORT is defined.
|
|
|
|
config LIBC_STRERROR_ERRNUM
|
|
bool "Print unknown error code in strerror()"
|
|
default !LIBC_STRERROR
|
|
---help---
|
|
If this option is selected, then strerror() will print error code
|
|
for unknown errors like "Unknown error 101". Default enabled when
|
|
LIBC_STRERROR is not selected.
|
|
|
|
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.
|
|
|
|
endmenu # errno Decode Support
|
|
|
|
menu "memcpy/memset Options"
|
|
|
|
config MEMCPY_VIK
|
|
bool "Vik memcpy()"
|
|
default n
|
|
depends on !LIBC_ARCH_MEMCPY
|
|
---help---
|
|
Select this option to use the optimized memcpy() function by Daniel Vik.
|
|
Select this option for improved performance at the expense of increased
|
|
size. See licensing information in the top-level LICENSE file.
|
|
|
|
if MEMCPY_VIK
|
|
|
|
config MEMCPY_PRE_INC_PTRS
|
|
bool "Pre-increment pointers"
|
|
default n
|
|
---help---
|
|
Use pre-increment of pointers. Default is post increment of pointers.
|
|
|
|
config MEMCPY_INDEXED_COPY
|
|
bool "Array indexing"
|
|
default y
|
|
---help---
|
|
Copying data using array indexing. Using this option, disables the
|
|
MEMCPY_PRE_INC_PTRS option.
|
|
|
|
config MEMCPY_64BIT
|
|
bool "64-bit memcpy()"
|
|
default n
|
|
---help---
|
|
Compiles memcpy() for architectures that support 64-bit operations
|
|
efficiently.
|
|
|
|
endif # MEMCPY_VIK
|
|
|
|
config MEMSET_OPTSPEED
|
|
bool "Optimize memset() for speed"
|
|
default n
|
|
depends on !LIBC_ARCH_MEMSET
|
|
---help---
|
|
Select this option to use a version of memcpy() optimized for speed.
|
|
Default: memcpy() is optimized for size.
|
|
|
|
config MEMSET_64BIT
|
|
bool "64-bit memset()"
|
|
default n
|
|
depends on MEMSET_OPTSPEED
|
|
---help---
|
|
Compiles memset() for architectures that support 64-bit operations
|
|
efficiently.
|
|
|
|
endmenu # memcpy/memset Options
|
|
|
|
menu "signal Decode Support"
|
|
|
|
config LIBC_STRSIGNAL
|
|
bool "Enable strsignal"
|
|
default y
|
|
---help---
|
|
strsignal() is useful because it decodes signal number values into
|
|
human readable strings. But it can also require additional memory.
|
|
If this option is not selected, strsignal() will still exist in the
|
|
build but it will not decode signal number values to specific string
|
|
equivalents, but a generic string 'Signal X' will be returned for the
|
|
valid signal number value and 'Real-time Signal X' will be returned
|
|
for the valid real-time signal number value.
|
|
|
|
config LIBC_STRSIGNAL_SHORT
|
|
bool "Use short message string descriptions in strsignal()"
|
|
default DEFAULT_SMALL
|
|
depends on LIBC_STRSIGNAL
|
|
---help---
|
|
If this option is selected, then strsignal() will use a symbolic value
|
|
string equivalent to the signal number when signal value is decoded.
|
|
For example, the signal value for SIGTRAP will produce the string
|
|
"Trace/breakpoint trap" if LIBC_STRSIGNAL_SHORT is not defined but the
|
|
string "SIGTRAP" if LIBC_STRSIGNAL_SHORT is defined.
|
|
|
|
endmenu # signal Decode Support
|