This is an automated email from the ASF dual-hosted git repository. acassis pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/nuttx.git
commit 016e30100fe7b83fa988e40165debcb311883853 Author: Marco Casaroli <[email protected]> AuthorDate: Sun Oct 18 16:23:20 2026 +0200 Documentation: Describe the libc and the apps popen(). Say when libc has popen(), pclose(), dpopen() and dpclose(), and when the copy in apps/system/popen is used instead. Assisted-by: Claude Code:claude-opus-5-5 Signed-off-by: Marco Casaroli <[email protected]> --- Documentation/applications/system/popen/index.rst | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/Documentation/applications/system/popen/index.rst b/Documentation/applications/system/popen/index.rst index 7a97adce806..47626e49aac 100644 --- a/Documentation/applications/system/popen/index.rst +++ b/Documentation/applications/system/popen/index.rst @@ -1,3 +1,14 @@ ==================================== ``popen`` popen()/pclose() Functions ==================================== + +This library provides ``popen()``, ``pclose()``, ``dpopen()`` and +``dpclose()``. Without a shell (no ``CONFIG_NSH_LIBRARY``), it starts the +command directly with ``posix_spawnp()``. + +libc also has these functions when ``CONFIG_PIPES``, +``CONFIG_LIBC_EXECFUNCS`` and ``CONFIG_SCHED_WAITPID`` are enabled. The +libc version starts ``sh -c command``. If there is no shell, it splits +the command at blanks and starts the program directly, without shell +syntax. When ``CONFIG_SYSTEM_POPEN`` is selected, libc does not build its +copy and this library is used.
