# Copyright (c) 2016 Intel Corporation # SPDX-License-Identifier: Apache-2.0 menu "Utility Library" config JSON_LIBRARY bool "Build JSON library" help Build a minimal JSON parsing/encoding library. Used by sample applications such as the NATS client. config RING_BUFFER bool "Ring buffers" help Enable usage of ring buffers. This is similar to kernel FIFOs but ring buffers manage their own buffer memory and can store arbitrary data. For optimal performance, use buffer sizes that are a power of 2. config NOTIFY bool "Asynchronous Notifications" help Use this API to support async transactions. config BASE64 bool "Base64 encoding and decoding" help Enable base64 encoding and decoding functionality config ONOFF bool "On-Off Manager" select NOTIFY help An on-off manager supports an arbitrary number of clients of a service which has a binary state. Example applications are power rails, clocks, and binary device power management. config WINSTREAM bool "Lockless shared memory window byte stream" help Winstream is a byte stream IPC for use in shared memory "windows", generally for transmit to non-Zephyr contexts that can't share Zephyr APIs or data structures. if WINSTREAM config WINSTREAM_STDLIB_MEMCOPY bool "Use standard memcpy() in winstream" help The sys_winstream utility is sometimes used in early boot environments before the standard library is usable. By default it uses a simple internal bytewise memcpy(). Set this to use the one from the standard library. endif config UTF8 bool "UTF-8 string operation supported" help Enable the utf8 API. The API implements functions to specifically handle UTF-8 encoded strings. endmenu