posix: features: correction on posix2 feature test macros
The _POSIX2_VERSION feature test macro should be either -1 or left undefined on systems that do not have a POSIX-conformant shell or utilities. Otherwise, it should be defined to the value _POSIX_VERSION. Since Zephyr has neither a conformant shell nor utilities, leave _POSIX2_VERSION undefined. Similarly, the _POSIX2_C_DEV macro should be either -1 or left undefined if the implementation does not support the c99, lex, and yacc shell utilities. Otherwise it should be defined to the value _POSIX_VERSION. Although _POSIX2_C_BIND appears to be related to the _POSIX2 family of feature test macros, all it conveys is that the implementation supports POSIX C Language bindings, which is always the case if the implementation uses the C programming language, even if the implementation does not support a conformant shell and utilities. _POSIX2_C_BIND should be defined to the same value as _POSIX_VERSION. Define _POSIX2_C_BIND as _POSIX_VERSION since Zephyr's implementation of the POSIX API supports C language bindings. The information above comes from the "unistd.h" page in the spec and also through word search of the term "C-Language Development Utilities". https://pubs.opengroup.org/onlinepubs/9699919799/index.html Signed-off-by:Chris Friedt <cfriedt@tenstorrent.com>
Loading
Please sign in to comment