posix: deprecate POSIX_ENV _CONFSTR _SYSCONF and _UNAME
This change deprecates the following Kconfig options * CONFIG_POSIX_ENV * CONFIG_POSIX_CONFSTR * CONFIG_POSIX_SYSCONF * CONFIG_POSIX_UNAME and instead groups them into a single Kconfig option that maps directly to the standard. Namely, CONFIG_POSIX_SINGLE_PROCESS. Signed-off-by: Chris Friedt <cfriedt@tenstorrent.com>
This commit is contained in:
parent
b639604833
commit
2fe9d6cd68
16 changed files with 133 additions and 117 deletions
|
@ -52,7 +52,7 @@ The *Minimal Realtime System Profile* (PSE51) includes all of the
|
||||||
:ref:`POSIX_C_LANG_SUPPORT <posix_option_group_c_lang_support>`, yes,
|
:ref:`POSIX_C_LANG_SUPPORT <posix_option_group_c_lang_support>`, yes,
|
||||||
:ref:`POSIX_DEVICE_IO <posix_option_group_device_io>`,, :kconfig:option:`CONFIG_POSIX_DEVICE_IO`
|
:ref:`POSIX_DEVICE_IO <posix_option_group_device_io>`,, :kconfig:option:`CONFIG_POSIX_DEVICE_IO`
|
||||||
:ref:`POSIX_SIGNALS <posix_option_group_signals>`,,
|
:ref:`POSIX_SIGNALS <posix_option_group_signals>`,,
|
||||||
:ref:`POSIX_SINGLE_PROCESS <posix_option_group_single_process>`, yes,
|
:ref:`POSIX_SINGLE_PROCESS <posix_option_group_single_process>`, yes, :kconfig:option:`CONFIG_POSIX_SINGLE_PROCESS`
|
||||||
:ref:`POSIX_THREADS_BASE <posix_option_group_threads_base>`, yes,
|
:ref:`POSIX_THREADS_BASE <posix_option_group_threads_base>`, yes,
|
||||||
:ref:`XSI_THREADS_EXT <posix_option_group_xsi_threads_ext>`, yes,
|
:ref:`XSI_THREADS_EXT <posix_option_group_xsi_threads_ext>`, yes,
|
||||||
|
|
||||||
|
|
|
@ -30,7 +30,6 @@ implementation of the POSIX API.
|
||||||
* :kconfig:option:`CONFIG_POSIX_RTSIG_MAX`
|
* :kconfig:option:`CONFIG_POSIX_RTSIG_MAX`
|
||||||
* :kconfig:option:`CONFIG_POSIX_SIGNAL`
|
* :kconfig:option:`CONFIG_POSIX_SIGNAL`
|
||||||
* :kconfig:option:`CONFIG_POSIX_SIGNAL_STRING_DESC`
|
* :kconfig:option:`CONFIG_POSIX_SIGNAL_STRING_DESC`
|
||||||
* :kconfig:option:`CONFIG_POSIX_UNAME`
|
|
||||||
* :kconfig:option:`CONFIG_POSIX_UNAME_NODENAME_LEN`
|
* :kconfig:option:`CONFIG_POSIX_UNAME_NODENAME_LEN`
|
||||||
* :kconfig:option:`CONFIG_POSIX_UNAME_VERSION_LEN`
|
* :kconfig:option:`CONFIG_POSIX_UNAME_VERSION_LEN`
|
||||||
* :kconfig:option:`CONFIG_PTHREAD`
|
* :kconfig:option:`CONFIG_PTHREAD`
|
||||||
|
|
|
@ -6,15 +6,23 @@
|
||||||
#ifndef ZEPHYR_INCLUDE_POSIX_SYS_UTSNAME_H_
|
#ifndef ZEPHYR_INCLUDE_POSIX_SYS_UTSNAME_H_
|
||||||
#define ZEPHYR_INCLUDE_POSIX_SYS_UTSNAME_H_
|
#define ZEPHYR_INCLUDE_POSIX_SYS_UTSNAME_H_
|
||||||
|
|
||||||
|
#include <zephyr/sys/util_macro.h>
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
extern "C" {
|
extern "C" {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* These are for compatibility / practicality */
|
||||||
|
#define _UTSNAME_NODENAME_LENGTH \
|
||||||
|
COND_CODE_1(CONFIG_POSIX_SINGLE_PROCESS, (CONFIG_POSIX_UNAME_VERSION_LEN), (0))
|
||||||
|
#define _UTSNAME_VERSION_LENGTH \
|
||||||
|
COND_CODE_1(CONFIG_POSIX_SINGLE_PROCESS, (CONFIG_POSIX_UNAME_VERSION_LEN), (0))
|
||||||
|
|
||||||
struct utsname {
|
struct utsname {
|
||||||
char sysname[sizeof("Zephyr")];
|
char sysname[sizeof("Zephyr")];
|
||||||
char nodename[CONFIG_POSIX_UNAME_NODENAME_LEN + 1];
|
char nodename[_UTSNAME_NODENAME_LENGTH + 1];
|
||||||
char release[sizeof("99.99.99-rc1")];
|
char release[sizeof("99.99.99-rc1")];
|
||||||
char version[CONFIG_POSIX_UNAME_VERSION_LEN + 1];
|
char version[_UTSNAME_VERSION_LENGTH + 1];
|
||||||
char machine[sizeof(CONFIG_ARCH)];
|
char machine[sizeof(CONFIG_ARCH)];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -25,7 +25,8 @@ if(CONFIG_POSIX_SIGNAL)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(CONFIG_POSIX_API OR CONFIG_PTHREAD_IPC OR CONFIG_POSIX_TIMERS OR
|
if(CONFIG_POSIX_API OR CONFIG_PTHREAD_IPC OR CONFIG_POSIX_TIMERS OR
|
||||||
CONFIG_POSIX_MQUEUE OR CONFIG_POSIX_FS OR CONFIG_EVENTFD OR CONFIG_GETOPT)
|
CONFIG_POSIX_MQUEUE OR CONFIG_POSIX_FS OR CONFIG_EVENTFD OR CONFIG_GETOPT OR
|
||||||
|
CONFIG_POSIX_SINGLE_PROCESS)
|
||||||
# This is a temporary workaround so that Newlib declares the appropriate
|
# This is a temporary workaround so that Newlib declares the appropriate
|
||||||
# types for us. POSIX features to be formalized as part of #51211
|
# types for us. POSIX features to be formalized as part of #51211
|
||||||
zephyr_compile_options($<$<COMPILE_LANGUAGE:C>:-D_POSIX_THREADS>)
|
zephyr_compile_options($<$<COMPILE_LANGUAGE:C>:-D_POSIX_THREADS>)
|
||||||
|
@ -39,13 +40,11 @@ zephyr_library_sources_ifdef(CONFIG_FNMATCH fnmatch.c)
|
||||||
zephyr_library_sources_ifdef(CONFIG_GETENTROPY getentropy.c)
|
zephyr_library_sources_ifdef(CONFIG_GETENTROPY getentropy.c)
|
||||||
zephyr_library_sources_ifdef(CONFIG_POSIX_ASYNCHRONOUS_IO aio.c)
|
zephyr_library_sources_ifdef(CONFIG_POSIX_ASYNCHRONOUS_IO aio.c)
|
||||||
zephyr_library_sources_ifdef(CONFIG_POSIX_BARRIERS barrier.c)
|
zephyr_library_sources_ifdef(CONFIG_POSIX_BARRIERS barrier.c)
|
||||||
zephyr_library_sources_ifdef(CONFIG_POSIX_CONFSTR confstr.c)
|
|
||||||
zephyr_library_sources_ifdef(CONFIG_POSIX_DEVICE_IO
|
zephyr_library_sources_ifdef(CONFIG_POSIX_DEVICE_IO
|
||||||
# perror should be moved to the common libc
|
# perror should be moved to the common libc
|
||||||
perror.c
|
perror.c
|
||||||
device_io.c
|
device_io.c
|
||||||
)
|
)
|
||||||
zephyr_library_sources_ifdef(CONFIG_POSIX_ENV env.c)
|
|
||||||
zephyr_library_sources_ifdef(CONFIG_POSIX_FD_MGMT
|
zephyr_library_sources_ifdef(CONFIG_POSIX_FD_MGMT
|
||||||
fd_mgmt.c
|
fd_mgmt.c
|
||||||
)
|
)
|
||||||
|
@ -57,13 +56,17 @@ zephyr_library_sources_ifdef(CONFIG_POSIX_MULTI_PROCESS
|
||||||
zephyr_library_sources_ifdef(CONFIG_POSIX_NETWORKING net.c)
|
zephyr_library_sources_ifdef(CONFIG_POSIX_NETWORKING net.c)
|
||||||
zephyr_library_sources_ifdef(CONFIG_POSIX_PUTMSG stropts.c)
|
zephyr_library_sources_ifdef(CONFIG_POSIX_PUTMSG stropts.c)
|
||||||
zephyr_library_sources_ifdef(CONFIG_POSIX_SIGNAL signal.c ${STRSIGNAL_TABLE_H})
|
zephyr_library_sources_ifdef(CONFIG_POSIX_SIGNAL signal.c ${STRSIGNAL_TABLE_H})
|
||||||
zephyr_library_sources_ifdef(CONFIG_POSIX_SYSCONF_IMPL_FULL sysconf.c)
|
zephyr_library_sources_ifdef(CONFIG_POSIX_SINGLE_PROCESS
|
||||||
|
confstr.c
|
||||||
|
env.c
|
||||||
|
sysconf.c
|
||||||
|
uname.c
|
||||||
|
)
|
||||||
zephyr_library_sources_ifdef(CONFIG_POSIX_SYSLOG syslog.c)
|
zephyr_library_sources_ifdef(CONFIG_POSIX_SYSLOG syslog.c)
|
||||||
zephyr_library_sources_ifdef(CONFIG_POSIX_TIMERS
|
zephyr_library_sources_ifdef(CONFIG_POSIX_TIMERS
|
||||||
clock.c
|
clock.c
|
||||||
timer.c
|
timer.c
|
||||||
)
|
)
|
||||||
zephyr_library_sources_ifdef(CONFIG_POSIX_UNAME uname.c)
|
|
||||||
zephyr_library_sources_ifdef(CONFIG_PTHREAD_IPC _common.c)
|
zephyr_library_sources_ifdef(CONFIG_PTHREAD_IPC _common.c)
|
||||||
zephyr_library_sources_ifdef(CONFIG_PTHREAD_COND cond.c)
|
zephyr_library_sources_ifdef(CONFIG_PTHREAD_COND cond.c)
|
||||||
zephyr_library_sources_ifdef(CONFIG_PTHREAD_KEY key.c)
|
zephyr_library_sources_ifdef(CONFIG_PTHREAD_KEY key.c)
|
||||||
|
|
|
@ -26,9 +26,7 @@ config PTHREAD_IPC
|
||||||
rsource "Kconfig.aio"
|
rsource "Kconfig.aio"
|
||||||
rsource "Kconfig.barrier"
|
rsource "Kconfig.barrier"
|
||||||
rsource "Kconfig.cond"
|
rsource "Kconfig.cond"
|
||||||
rsource "Kconfig.confstr"
|
|
||||||
rsource "Kconfig.device_io"
|
rsource "Kconfig.device_io"
|
||||||
rsource "Kconfig.env"
|
|
||||||
rsource "Kconfig.eventfd"
|
rsource "Kconfig.eventfd"
|
||||||
rsource "Kconfig.fd_mgmt"
|
rsource "Kconfig.fd_mgmt"
|
||||||
rsource "Kconfig.fnmatch"
|
rsource "Kconfig.fnmatch"
|
||||||
|
@ -36,9 +34,11 @@ rsource "Kconfig.fs"
|
||||||
rsource "Kconfig.getentropy"
|
rsource "Kconfig.getentropy"
|
||||||
rsource "Kconfig.getopt"
|
rsource "Kconfig.getopt"
|
||||||
rsource "Kconfig.key"
|
rsource "Kconfig.key"
|
||||||
|
rsource "Kconfig.mem"
|
||||||
rsource "Kconfig.mqueue"
|
rsource "Kconfig.mqueue"
|
||||||
rsource "Kconfig.mutex"
|
rsource "Kconfig.mutex"
|
||||||
rsource "Kconfig.net"
|
rsource "Kconfig.net"
|
||||||
|
rsource "Kconfig.proc1"
|
||||||
rsource "Kconfig.procN"
|
rsource "Kconfig.procN"
|
||||||
rsource "Kconfig.pthread"
|
rsource "Kconfig.pthread"
|
||||||
rsource "Kconfig.rwlock"
|
rsource "Kconfig.rwlock"
|
||||||
|
@ -47,10 +47,8 @@ rsource "Kconfig.semaphore"
|
||||||
rsource "Kconfig.signal"
|
rsource "Kconfig.signal"
|
||||||
rsource "Kconfig.spinlock"
|
rsource "Kconfig.spinlock"
|
||||||
rsource "Kconfig.stropts"
|
rsource "Kconfig.stropts"
|
||||||
rsource "Kconfig.sysconf"
|
|
||||||
rsource "Kconfig.syslog"
|
rsource "Kconfig.syslog"
|
||||||
rsource "Kconfig.timer"
|
rsource "Kconfig.timer"
|
||||||
rsource "Kconfig.uname"
|
|
||||||
rsource "Kconfig.xsi"
|
rsource "Kconfig.xsi"
|
||||||
|
|
||||||
rsource "Kconfig.deprecated"
|
rsource "Kconfig.deprecated"
|
||||||
|
|
|
@ -1,9 +0,0 @@
|
||||||
# Copyright (c) 2024, Meta
|
|
||||||
#
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
|
||||||
|
|
||||||
config POSIX_CONFSTR
|
|
||||||
bool "Retrieve string system configuration"
|
|
||||||
default y if POSIX_API
|
|
||||||
help
|
|
||||||
This enables the POSIX confstr() function.
|
|
|
@ -28,6 +28,24 @@ config POSIX_CLOCK
|
||||||
|
|
||||||
Please use CONFIG_POSIX_TIMERS instead.
|
Please use CONFIG_POSIX_TIMERS instead.
|
||||||
|
|
||||||
|
config POSIX_CONFSTR
|
||||||
|
bool "Retrieve string system configuration [DEPRECATED]"
|
||||||
|
select DEPRECATED
|
||||||
|
select POSIX_SINGLE_PROCESS
|
||||||
|
help
|
||||||
|
This option is deprecated.
|
||||||
|
|
||||||
|
Please use CONFIG_POSIX_SINGLE_PROCESS instead.
|
||||||
|
|
||||||
|
config POSIX_ENV
|
||||||
|
bool "Support for environ, getenv(), getenv_r(), setenv(), and unsetenv() [DEPRECATED]"
|
||||||
|
select DEPRECATED
|
||||||
|
select POSIX_SINGLE_PROCESS
|
||||||
|
help
|
||||||
|
This option is deprecated.
|
||||||
|
|
||||||
|
Please use CONFIG_POSIX_SINGLE_PROCESS instead.
|
||||||
|
|
||||||
config POSIX_LIMITS_RTSIG_MAX
|
config POSIX_LIMITS_RTSIG_MAX
|
||||||
int "_POSIX_RTSIG_MAX value in limits.h [DEPRECATED]"
|
int "_POSIX_RTSIG_MAX value in limits.h [DEPRECATED]"
|
||||||
default POSIX_RTSIG_MAX if POSIX_REALTIME_SIGNALS
|
default POSIX_RTSIG_MAX if POSIX_REALTIME_SIGNALS
|
||||||
|
@ -57,6 +75,24 @@ config POSIX_MAX_OPEN_FILES
|
||||||
|
|
||||||
See also CONFIG_ZVFS_OPEN_MAX.
|
See also CONFIG_ZVFS_OPEN_MAX.
|
||||||
|
|
||||||
|
config POSIX_SYSCONF
|
||||||
|
bool "Support for sysconf() [DEPRECATED]"
|
||||||
|
select DEPRECATED
|
||||||
|
select POSIX_SINGLE_PROCESS
|
||||||
|
help
|
||||||
|
This option is deprecated.
|
||||||
|
|
||||||
|
Please use CONFIG_POSIX_SINGLE_PROCESS instead.
|
||||||
|
|
||||||
|
config POSIX_UNAME
|
||||||
|
bool "Support for uname [DEPRECATED]"
|
||||||
|
select DEPRECATED
|
||||||
|
select POSIX_SINGLE_PROCESS
|
||||||
|
help
|
||||||
|
This option is deprecated.
|
||||||
|
|
||||||
|
Please use CONFIG_POSIX_SINGLE_PROCESS instead.
|
||||||
|
|
||||||
config PTHREAD_BARRIER
|
config PTHREAD_BARRIER
|
||||||
bool "pthread_barrier_t support [DEPRECATED]"
|
bool "pthread_barrier_t support [DEPRECATED]"
|
||||||
select DEPRECATED
|
select DEPRECATED
|
||||||
|
|
|
@ -1,14 +0,0 @@
|
||||||
# Copyright (c) 2023, Meta
|
|
||||||
#
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
|
||||||
|
|
||||||
config POSIX_ENV
|
|
||||||
bool "Support for environ, getenv(), getenv_r(), setenv(), and unsetenv()"
|
|
||||||
depends on COMMON_LIBC_MALLOC
|
|
||||||
default y if POSIX_API
|
|
||||||
help
|
|
||||||
Select this option to add support for environment variables.
|
|
||||||
|
|
||||||
module = POSIX_ENV
|
|
||||||
module-str = POSIX env logging
|
|
||||||
source "subsys/logging/Kconfig.template.log_config"
|
|
13
lib/posix/options/Kconfig.mem
Normal file
13
lib/posix/options/Kconfig.mem
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
# Copyright (c) 2024 BayLibre SAS
|
||||||
|
#
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
config POSIX_PAGE_SIZE_BITS
|
||||||
|
int "Number of bits to use for PAGE_SIZE"
|
||||||
|
range 6 16
|
||||||
|
default 12 if POSIX_API
|
||||||
|
default 6
|
||||||
|
help
|
||||||
|
Define PAGE_SIZE as BIT(n), where n is the value configured here.
|
||||||
|
PAGE_SIZE is supported in the range [64, 65536]
|
||||||
|
If CONFIG_POSIX_API=y, PAGE_SIZE defaults to 4096, otherwise, it is 64 bytes.
|
57
lib/posix/options/Kconfig.proc1
Normal file
57
lib/posix/options/Kconfig.proc1
Normal file
|
@ -0,0 +1,57 @@
|
||||||
|
# Copyright (c) 2023 Meta
|
||||||
|
# Copyright (c) 2024 BayLibre SAS
|
||||||
|
# Copyright (c) 2024 Tenstorrent AI ULC
|
||||||
|
#
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
|
menuconfig POSIX_SINGLE_PROCESS
|
||||||
|
bool "POSIX single process support"
|
||||||
|
default y if POSIX_API
|
||||||
|
# imply COMMON_LIBC_MALLOC # for env.c
|
||||||
|
help
|
||||||
|
Select 'y' here to use confstr(), environ, errno, getenv(), setenv(), sysconf(), uname(),
|
||||||
|
or unsetenv().
|
||||||
|
|
||||||
|
For more information, please see
|
||||||
|
https://pubs.opengroup.org/onlinepubs/9699919799/xrat/V4_subprofiles.html
|
||||||
|
|
||||||
|
if POSIX_SINGLE_PROCESS
|
||||||
|
|
||||||
|
choice POSIX_SYSCONF_IMPL_CHOICE
|
||||||
|
default POSIX_SYSCONF_IMPL_FULL if CPP
|
||||||
|
default POSIX_SYSCONF_IMPL_MACRO
|
||||||
|
prompt "Sysconf implementation method"
|
||||||
|
|
||||||
|
config POSIX_SYSCONF_IMPL_MACRO
|
||||||
|
bool "Macro"
|
||||||
|
help
|
||||||
|
The sysconf() function is implemented compile-time constant via macros. This is the option
|
||||||
|
with the least overhead. The downside is that sysconf() is not an addressable function.
|
||||||
|
|
||||||
|
config POSIX_SYSCONF_IMPL_FULL
|
||||||
|
bool "Full"
|
||||||
|
help
|
||||||
|
The sysconf() function is implemented as a large integer-integer array. The advantage if this
|
||||||
|
option is that all sysconf() options can be queried and that the sysconf() symbol is
|
||||||
|
addressable.
|
||||||
|
|
||||||
|
endchoice
|
||||||
|
|
||||||
|
config POSIX_UNAME_VERSION_LEN
|
||||||
|
int "uname version string length"
|
||||||
|
default 70
|
||||||
|
help
|
||||||
|
Defines the maximum string length of uname version.
|
||||||
|
|
||||||
|
config POSIX_UNAME_NODENAME_LEN
|
||||||
|
int "uname nodename string length"
|
||||||
|
default 6 if !NET_HOSTNAME_UNIQUE
|
||||||
|
default 22 if NET_HOSTNAME_UNIQUE
|
||||||
|
help
|
||||||
|
Defines the maximum string length of nodename version.
|
||||||
|
|
||||||
|
module = POSIX_ENV
|
||||||
|
module-str = POSIX env logging
|
||||||
|
source "subsys/logging/Kconfig.template.log_config"
|
||||||
|
|
||||||
|
endif # POSIX_SINGLE_PROCESS
|
|
@ -1,48 +0,0 @@
|
||||||
# Copyright (c) 2024 BayLibre SAS
|
|
||||||
#
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
|
||||||
|
|
||||||
menu "Sysconf support"
|
|
||||||
|
|
||||||
config POSIX_SYSCONF
|
|
||||||
bool "Support for sysconf"
|
|
||||||
default y if POSIX_API
|
|
||||||
help
|
|
||||||
The sysconf() function provides a method for the application to determine
|
|
||||||
the current value of a configurable system limit or option (variable).
|
|
||||||
|
|
||||||
config POSIX_PAGE_SIZE_BITS
|
|
||||||
int "Number of bits to use for PAGE_SIZE"
|
|
||||||
range 6 16
|
|
||||||
default 12 if POSIX_API
|
|
||||||
default 6
|
|
||||||
help
|
|
||||||
Define PAGE_SIZE as BIT(n), where n is the value configured here.
|
|
||||||
PAGE_SIZE is supported in the range [64, 65536]
|
|
||||||
If CONFIG_POSIX_API=y, PAGE_SIZE defaults to 4096, otherwise, it is 64 bytes.
|
|
||||||
|
|
||||||
if POSIX_SYSCONF
|
|
||||||
|
|
||||||
choice POSIX_SYSCONF_IMPL_CHOICE
|
|
||||||
default POSIX_SYSCONF_IMPL_FULL if CPP
|
|
||||||
default POSIX_SYSCONF_IMPL_MACRO
|
|
||||||
prompt "Sysconf implementation method"
|
|
||||||
|
|
||||||
config POSIX_SYSCONF_IMPL_MACRO
|
|
||||||
bool "Macro"
|
|
||||||
help
|
|
||||||
The sysconf() function is implemented compile-time constant via macros. This is the option
|
|
||||||
with the least overhead. The downside is that sysconf() is not an addressable function.
|
|
||||||
|
|
||||||
config POSIX_SYSCONF_IMPL_FULL
|
|
||||||
bool "Full"
|
|
||||||
help
|
|
||||||
The sysconf() function is implemented as a large integer-integer array. The advantage if this
|
|
||||||
option is that all sysconf() options can be queried and that the sysconf() symbol is
|
|
||||||
addressable.
|
|
||||||
|
|
||||||
endchoice
|
|
||||||
|
|
||||||
endif # POSIX_SYSCONF
|
|
||||||
|
|
||||||
endmenu # "Sysconf support"
|
|
|
@ -1,26 +0,0 @@
|
||||||
# Copyright (c) 2023 Meta
|
|
||||||
#
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
|
||||||
|
|
||||||
menuconfig POSIX_UNAME
|
|
||||||
bool "Support for uname"
|
|
||||||
default y if POSIX_API
|
|
||||||
help
|
|
||||||
The uname() function shall store information identifying the current
|
|
||||||
system in the structure pointed to by name.
|
|
||||||
|
|
||||||
if POSIX_UNAME
|
|
||||||
config POSIX_UNAME_VERSION_LEN
|
|
||||||
int "uname version string length"
|
|
||||||
default 70
|
|
||||||
help
|
|
||||||
Defines the maximum string length of uname version.
|
|
||||||
|
|
||||||
config POSIX_UNAME_NODENAME_LEN
|
|
||||||
int "uname nodename string length"
|
|
||||||
default 6 if !NET_HOSTNAME_UNIQUE
|
|
||||||
default 22 if NET_HOSTNAME_UNIQUE
|
|
||||||
help
|
|
||||||
Defines the maximum string length of nodename version.
|
|
||||||
|
|
||||||
endif # POSIX_UNAME
|
|
|
@ -5,9 +5,8 @@
|
||||||
config XSI_SINGLE_PROCESS
|
config XSI_SINGLE_PROCESS
|
||||||
bool "X/Open single process"
|
bool "X/Open single process"
|
||||||
default y if POSIX_API
|
default y if POSIX_API
|
||||||
depends on POSIX_ENV
|
depends on POSIX_SINGLE_PROCESS
|
||||||
depends on POSIX_UNAME
|
depends on POSIX_TIMERS
|
||||||
depends on POSIX_CLOCK_SELECTION
|
|
||||||
help
|
help
|
||||||
Select 'y' here and Zephyr will provide implementations of
|
Select 'y' here and Zephyr will provide implementations of
|
||||||
gethostid(), gettimeofday(), and putenv().
|
gethostid(), gettimeofday(), and putenv().
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
|
|
||||||
config POSIX_ENV_SHELL
|
config POSIX_ENV_SHELL
|
||||||
bool "Support for shell"
|
bool "Support for shell"
|
||||||
select POSIX_ENV
|
select POSIX_SINGLE_PROCESS
|
||||||
select POSIX_SHELL
|
select POSIX_SHELL
|
||||||
help
|
help
|
||||||
This shell provides access to system environment variables.
|
This shell provides access to system environment variables.
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
# Copyright (c) 2024 Meta
|
# Copyright (c) 2024 Meta
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
if POSIX_UNAME
|
if POSIX_SINGLE_PROCESS
|
||||||
|
|
||||||
config POSIX_UNAME_SHELL
|
config POSIX_UNAME_SHELL
|
||||||
bool "Support for `uname` command"
|
bool "Support for `uname` command"
|
||||||
|
@ -10,4 +10,4 @@ config POSIX_UNAME_SHELL
|
||||||
help
|
help
|
||||||
Support for `uname` command in the terminal.
|
Support for `uname` command in the terminal.
|
||||||
|
|
||||||
endif # POSIX_UNAME
|
endif # POSIX_SINGLE_PROCESS
|
||||||
|
|
2
tests/posix/env/prj.conf
vendored
2
tests/posix/env/prj.conf
vendored
|
@ -1,5 +1,5 @@
|
||||||
CONFIG_ZTEST=y
|
CONFIG_ZTEST=y
|
||||||
CONFIG_POSIX_ENV=y
|
CONFIG_POSIX_SINGLE_PROCESS=y
|
||||||
# Let's explicitly choose PICOLIBC, so it is used if supported even if it would not have been the
|
# Let's explicitly choose PICOLIBC, so it is used if supported even if it would not have been the
|
||||||
# default (otherwise native targets default to the host C library)
|
# default (otherwise native targets default to the host C library)
|
||||||
CONFIG_PICOLIBC=y
|
CONFIG_PICOLIBC=y
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue