mirror of
https://github.com/freebsd/freebsd-src
synced 2024-07-22 18:56:38 +00:00
![Brooks Davis](/assets/img/avatar_default.png)
These provide standard APIs, but are implemented using another system call (e.g., pipe implemented in terms of pipe2) or are interposed by the threading library to support cancelation. After discussion with kib (see D44111), I've concluded that it is better to keep most public interfaces in libc with as little as possible in libsys. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D44241
39 lines
698 B
Makefile
39 lines
698 B
Makefile
# libc-specific portion of the system call interface
|
|
|
|
.PATH: ${LIBC_SRCTOP}/sys
|
|
|
|
# Most of the implementation is shared with libsys:
|
|
.include "${LIBSYS_SRCTOP}/Makefile.sys"
|
|
|
|
# emit empty assembly stubs for syscalls in dynamic libc
|
|
SHARED_CFLAGS+= -D'_SYSCALL_BODY(name)='
|
|
|
|
SYM_MAPS+= ${LIBC_SRCTOP}/sys/Symbol.map
|
|
|
|
# Add the interposer wrappers
|
|
SRCS+= ${INTERPOSED:S/$/.c/}
|
|
|
|
# Pseudo system calls implemented atop other interfaces.
|
|
SRCS+= \
|
|
POSIX2x_Fork.c \
|
|
brk.c \
|
|
closefrom.c \
|
|
compat-stub.c \
|
|
creat.c \
|
|
getdents.c \
|
|
lockf.c \
|
|
lstat.c \
|
|
mknod.c \
|
|
pipe.c \
|
|
recv.c \
|
|
recvmmsg.c \
|
|
send.c \
|
|
sendmmsg.c \
|
|
shm_open.c \
|
|
stat.c \
|
|
vadvise.c \
|
|
wait.c \
|
|
wait3.c \
|
|
waitid.c \
|
|
waitpid.c
|