nuttx/include/sys
Marco Casaroli 9b787d42b2 sched/arch/libc: make task_fork() optional
task_fork() is a NuttX extension, not POSIX, and a configuration that does
not call it has no reason to carry it.  Add CONFIG_TASK_FORK to leave it out.

It depends on ARCH_HAVE_TASK_FORK and defaults to y, so it is enabled exactly
where fork() existed before the split and no configuration loses the primitive
by upgrading.  ARCH_HAVE_TASK_FORK keeps its meaning -- the architecture *can*
clone the calling task -- and the new symbol says whether this build wants it.
Everything that provides task_fork() moves to the new symbol:  the declaration
in sched.h, up_task_fork() in arch.h, the two .csv entries that generate the
system call stub and proxy, the syscall_lookup.h table entry, the architecture
entry points, and the build rules for the files that hold them.

FORK_IS_TASK_FORK now depends on TASK_FORK rather than ARCH_HAVE_TASK_FORK.
Aliasing fork() to a task_fork() that was not built would not link.

vfork() and fork() are untouched; each is still selected on its own, and
task_fork.c, lib_fork.c and the architecture's fork file are still built when
any one of the three is present.

Signed-off-by: Marco Casaroli <marco.casaroli@gmail.com>

Assisted-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-30 11:45:24 +02:00
..
boardctl.h !boards/boardctl: Remove BOARDIOC_INIT 2026-05-26 09:57:29 +08:00
custom_file.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
endian.h !compiler: drop CONFIG_HAVE_LONG_LONG and require long long support 2026-05-19 16:21:28 +08:00
epoll.h !compiler: drop CONFIG_HAVE_LONG_LONG and require long long support 2026-05-19 16:21:28 +08:00
eventfd.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
fcntl.h fcntl: add sys/fcntl.h header file 2024-12-20 11:46:14 -03:00
file.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
gmon.h libs: add gprof arm64 support 2024-10-10 18:46:51 +08:00
inotify.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
ioctl.h sys/ioctl: extend the IOCTL defintion that compatible with linux kernel 2026-01-14 09:39:51 +08:00
ipc.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
mman.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
mount.h !include/fcntl.h: align open flags with Linux values 2026-06-30 13:43:44 +08:00
msg.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
param.h arm: systick: fix off-by-one in SysTick RELOAD programming 2026-01-26 19:34:00 +08:00
pciio.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
poll.h fs/poll: remove poll_fdsetup 2025-05-26 18:49:45 +08:00
prctl.h proctl: add PR_SET_DUMPABLE support 2024-12-20 11:46:14 -03:00
queue.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
random.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
resource.h sys/resouce: add RLIM_NLIMITS definition 2026-01-15 16:08:23 -03:00
select.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
sem.h sem: add sys/sem.h header file 2024-12-20 11:46:14 -03:00
sendfile.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
shm.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
signal.h signal: add include/sys/signal.h to the signal 2024-12-20 11:46:14 -03:00
signalfd.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
socket.h net: make the sendmsg param type consistent with posix specification 2026-01-16 21:11:39 +08:00
sockio.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
stat.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
statfs.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
statvfs.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
syscall.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
syscall_lookup.h sched/arch/libc: make task_fork() optional 2026-07-30 11:45:24 +02:00
sysinfo.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
sysmacros.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
time.h syscall/adjtime: fix minior issue about adjtime and add clock_adjtime to syscall 2025-12-30 10:22:09 -03:00
timerfd.h fs/timerfd: implement TFD_TIMER_CANCEL_ON_SET to detect clock changes 2026-01-30 17:20:24 +08:00
times.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
timex.h sched/clock: support using CLOCKFD to call clock_adjtime 2025-12-30 10:22:09 -03:00
tree.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
types.h libs/libc: Fix divide-by-zero in stat() with large filesystem block sizes 2026-07-16 23:37:22 +08:00
uio.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
un.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
utsname.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
vfs.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
video_controls.h include: migrate to SPDX identifier 2024-10-04 08:18:42 +08:00
videoio.h style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
wait.h sys/wait: add WCOREDUMP defintion 2026-01-15 23:16:27 +08:00