1998-01-05 05:29:04 +03:00
|
|
|
# $NetBSD: Makefile.inc,v 1.78 1998/01/05 02:29:04 thorpej Exp $
|
1995-02-27 14:22:54 +03:00
|
|
|
# @(#)Makefile.inc 8.1 (Berkeley) 6/17/93
|
1993-03-21 12:45:37 +03:00
|
|
|
|
|
|
|
# sys sources
|
1993-12-04 05:33:35 +03:00
|
|
|
.PATH: ${.CURDIR}/arch/${MACHINE_ARCH}/sys ${.CURDIR}/sys
|
1993-03-21 12:45:37 +03:00
|
|
|
|
|
|
|
# modules with non-default implementations on at least one architecture:
|
1998-01-05 05:29:04 +03:00
|
|
|
SRCS+= Ovfork.S __vfork14.S brk.S exect.S fork.S pipe.S ptrace.S sbrk.S \
|
|
|
|
setlogin.S sigpending.S sigprocmask.S sigreturn.S sigsuspend.S \
|
|
|
|
syscall.S
|
1997-11-06 02:37:06 +03:00
|
|
|
SRCS+= cerror.S
|
|
|
|
|
1998-01-05 05:29:04 +03:00
|
|
|
LSRCS+= Lint_Ovfork.c Lint___vfork14.c Lint_brk.c Lint_exect.c Lint_fork.c \
|
|
|
|
Lint_pipe.c Lint_ptrace.c Lint_sbrk.c Lint_setlogin.c \
|
|
|
|
Lint_sigpending.c Lint_sigprocmask.c Lint_sigreturn.c \
|
|
|
|
Lint_sigsuspend.c Lint_syscall.c
|
|
|
|
DPSRCS+= Lint_Ovfork.c Lint___vfork14.c Lint_brk.c Lint_exect.c Lint_fork.c \
|
|
|
|
Lint_pipe.c Lint_ptrace.c Lint_sbrk.c Lint_setlogin.c \
|
|
|
|
Lint_sigpending.c Lint_sigprocmask.c Lint_sigreturn.c \
|
|
|
|
Lint_sigsuspend.c Lint_syscall.c
|
1993-03-21 12:45:37 +03:00
|
|
|
|
1995-02-27 14:22:54 +03:00
|
|
|
# glue to provide compatibility between GCC 1.X and 2.X and for compat
|
|
|
|
# with old syscall interfaces.
|
1997-11-29 21:38:20 +03:00
|
|
|
SRCS+= ftruncate.c getdirentries.c lseek.c mmap.c msync.c semctl.c \
|
|
|
|
sigaltstack.c stat.c swapon.c truncate.c
|
1994-04-02 09:38:15 +04:00
|
|
|
|
1997-04-17 23:07:15 +04:00
|
|
|
# "stub" POSIX.1b interfaces which return -1 and set errno to ENOSYS, so
|
|
|
|
# we can avoid bumping libc's minor number as functions are added to the
|
|
|
|
# kernel.
|
|
|
|
SRCS+= timer_create.c timer_delete.c timer_gettime.c timer_settime.c \
|
1997-08-20 08:58:41 +04:00
|
|
|
timer_getoverrun.c
|
1997-04-17 23:07:15 +04:00
|
|
|
|
1993-03-21 12:45:37 +03:00
|
|
|
# modules with default implementations on all architectures:
|
1994-06-13 02:58:03 +04:00
|
|
|
ASM= accept.o access.o acct.o adjtime.o bind.o chdir.o chflags.o chmod.o \
|
1996-10-19 04:54:22 +04:00
|
|
|
chown.o chroot.o \
|
1996-11-19 05:48:26 +03:00
|
|
|
clock_getres.o clock_gettime.o clock_settime.o \
|
1996-10-19 04:54:22 +04:00
|
|
|
close.o connect.o dup.o dup2.o execve.o fchdir.o \
|
1997-10-21 02:05:06 +04:00
|
|
|
fchflags.o fchmod.o fchown.o fcntl.o flock.o fpathconf.o \
|
|
|
|
__fstat13.o fstatfs.o fsync.o futimes.o \
|
|
|
|
getdents.o getfh.o getfsstat.o \
|
1996-09-19 08:50:02 +04:00
|
|
|
getgroups.o getitimer.o __getlogin.o getpeername.o getpgid.o \
|
1996-10-19 04:54:22 +04:00
|
|
|
getpgrp.o getpriority.o getrlimit.o getrusage.o \
|
|
|
|
getsockname.o getsockopt.o gettimeofday.o ioctl.o kill.o \
|
1997-10-21 02:05:06 +04:00
|
|
|
ktrace.o lchmod.o lchown.o __lstat13.o \
|
1997-10-06 05:12:02 +04:00
|
|
|
lfs_bmapv.o lfs_markv.o lfs_segclean.o lfs_segwait.o link.o \
|
1997-10-21 02:05:06 +04:00
|
|
|
listen.o lutimes.o madvise.o mincore.o minherit.o \
|
1997-09-08 22:42:43 +04:00
|
|
|
mkdir.o mkfifo.o mknod.o mlock.o \
|
1997-10-21 22:56:44 +04:00
|
|
|
mount.o mprotect.o msgctl.o msgget.o msgrcv.o msgsnd.o __msync13.o \
|
1997-04-17 22:13:41 +04:00
|
|
|
munlock.o munmap.o nanosleep.o nfssvc.o ntp_adjtime.o ntp_gettime.o \
|
1996-11-19 05:48:26 +03:00
|
|
|
open.o pathconf.o poll.o \
|
1996-09-07 18:25:51 +04:00
|
|
|
profil.o quotactl.o \
|
1996-11-11 16:41:08 +03:00
|
|
|
read.o readlink.o readv.o reboot.o \
|
|
|
|
recvfrom.o recvmsg.o rename.o revoke.o \
|
1995-02-27 16:22:55 +03:00
|
|
|
rmdir.o select.o semconfig.o semget.o semop.o sendmsg.o sendto.o \
|
|
|
|
setegid.o seteuid.o setgid.o setgroups.o setitimer.o setpgid.o \
|
1996-06-23 15:52:49 +04:00
|
|
|
setpriority.o setregid.o setreuid.o \
|
|
|
|
setrlimit.o setsid.o setsockopt.o settimeofday.o \
|
1995-02-27 16:22:55 +03:00
|
|
|
setuid.o shmat.o shmctl.o shmdt.o shmget.o shutdown.o sigaction.o \
|
1997-11-29 21:38:20 +03:00
|
|
|
__sigaltstack14.o socket.o socketpair.o __stat13.o statfs.o swapctl.o \
|
1996-10-19 04:54:22 +04:00
|
|
|
symlink.o sysarch.o umask.o undelete.o unlink.o unmount.o \
|
1995-02-27 16:22:55 +03:00
|
|
|
utimes.o vadvise.o wait4.o write.o writev.o __semctl.o __syscall.o \
|
|
|
|
__sysctl.o
|
1994-04-02 09:38:15 +04:00
|
|
|
|
1993-08-16 07:32:58 +04:00
|
|
|
PASM= ${ASM:.o=.po}
|
1993-09-29 04:27:10 +03:00
|
|
|
SASM= ${ASM:.o=.so}
|
1993-03-21 12:45:37 +03:00
|
|
|
|
1996-10-19 04:54:22 +04:00
|
|
|
NOERR= getegid.o geteuid.o getgid.o getpid.o getppid.o getuid.o sync.o
|
|
|
|
PNOERR= ${NOERR:.o=.po}
|
|
|
|
SNOERR= ${NOERR:.o=.so}
|
|
|
|
|
1997-05-02 22:16:50 +04:00
|
|
|
PSEUDONOERR= _exit.o
|
|
|
|
PPSEUDONOERR= ${PSEUDONOERR:.o=.po}
|
|
|
|
SPSEUDONOERR= ${PSEUDONOERR:.o=.so}
|
1993-03-21 12:45:37 +03:00
|
|
|
|
1997-05-02 22:16:50 +04:00
|
|
|
OBJS+= ${ASM} ${NOERR} ${PSEUDONOERR}
|
1993-03-21 12:45:37 +03:00
|
|
|
|
1997-05-14 17:33:23 +04:00
|
|
|
${PASM}: ${.CURDIR}/arch/${MACHINE_ARCH}/SYS.h \
|
1997-06-01 02:38:59 +04:00
|
|
|
${DESTDIR}/usr/include/sys/syscall.h
|
1993-08-16 07:32:58 +04:00
|
|
|
@echo creating ${.TARGET}
|
1993-03-21 12:45:37 +03:00
|
|
|
@printf '#include "SYS.h"\nRSYSCALL(${.PREFIX})\n' | \
|
1997-10-23 03:14:04 +04:00
|
|
|
${CPP} -DPROF ${CPPFLAGS:M-[ID]*} ${AINC} | ${AS} -o ${.TARGET}.o
|
1995-09-25 03:57:28 +03:00
|
|
|
@${LD} -X -r ${.TARGET}.o -o ${.TARGET}
|
|
|
|
@rm -f ${.TARGET}.o
|
1993-08-16 06:44:19 +04:00
|
|
|
|
1997-05-14 17:33:23 +04:00
|
|
|
${SASM}: ${.CURDIR}/arch/${MACHINE_ARCH}/SYS.h \
|
1997-06-01 02:38:59 +04:00
|
|
|
${DESTDIR}/usr/include/sys/syscall.h
|
1993-09-29 04:27:10 +03:00
|
|
|
@echo creating ${.TARGET}
|
|
|
|
@printf '#include "SYS.h"\nRSYSCALL(${.PREFIX})\n' | \
|
1997-10-23 03:14:04 +04:00
|
|
|
${CPP} ${CPPPICFLAGS} ${CPPFLAGS:M-[ID]*} ${AINC} | \
|
1997-05-24 05:42:36 +04:00
|
|
|
${AS} ${APICFLAGS} -o ${.TARGET}
|
1993-09-29 04:27:10 +03:00
|
|
|
|
1997-05-14 17:33:23 +04:00
|
|
|
${ASM}: ${.CURDIR}/arch/${MACHINE_ARCH}/SYS.h \
|
1997-06-01 02:38:59 +04:00
|
|
|
${DESTDIR}/usr/include/sys/syscall.h
|
1993-08-16 07:32:58 +04:00
|
|
|
@echo creating ${.TARGET}
|
1993-03-21 12:45:37 +03:00
|
|
|
@printf '#include "SYS.h"\nRSYSCALL(${.PREFIX})\n' | \
|
1997-10-23 03:14:04 +04:00
|
|
|
${CPP} ${CPPFLAGS:M-[ID]*} ${AINC} | ${AS} -o ${.TARGET}.o
|
1995-09-25 03:57:28 +03:00
|
|
|
@${LD} -x -r ${.TARGET}.o -o ${.TARGET}
|
|
|
|
@rm -f ${.TARGET}.o
|
1993-08-16 06:44:19 +04:00
|
|
|
|
1997-05-14 17:33:23 +04:00
|
|
|
${PNOERR}: ${.CURDIR}/arch/${MACHINE_ARCH}/SYS.h \
|
1997-06-01 02:38:59 +04:00
|
|
|
${DESTDIR}/usr/include/sys/syscall.h
|
1996-10-19 04:54:22 +04:00
|
|
|
@echo creating ${.TARGET}
|
|
|
|
@printf '#include "SYS.h"\nRSYSCALL_NOERROR(${.PREFIX})\n' | \
|
1997-10-23 03:14:04 +04:00
|
|
|
${CPP} -DPROF ${CPPFLAGS:M-[ID]*} ${AINC} | ${AS} -o ${.TARGET}.o
|
1996-10-19 04:54:22 +04:00
|
|
|
@${LD} -X -r ${.TARGET}.o -o ${.TARGET}
|
|
|
|
@rm -f ${.TARGET}.o
|
|
|
|
|
1997-05-14 17:33:23 +04:00
|
|
|
${SNOERR}: ${.CURDIR}/arch/${MACHINE_ARCH}/SYS.h \
|
1997-06-01 02:38:59 +04:00
|
|
|
${DESTDIR}/usr/include/sys/syscall.h
|
1996-10-19 04:54:22 +04:00
|
|
|
@echo creating ${.TARGET}
|
|
|
|
@printf '#include "SYS.h"\nRSYSCALL_NOERROR(${.PREFIX})\n' | \
|
1997-10-23 03:14:04 +04:00
|
|
|
${CPP} ${CPPPICFLAGS} ${CPPFLAGS:M-[ID]*} ${AINC} | \
|
1997-05-24 05:42:36 +04:00
|
|
|
${AS} ${APICFLAGS} -o ${.TARGET}
|
1996-10-19 04:54:22 +04:00
|
|
|
|
1997-05-14 17:33:23 +04:00
|
|
|
${NOERR}: ${.CURDIR}/arch/${MACHINE_ARCH}/SYS.h \
|
1997-06-01 02:38:59 +04:00
|
|
|
${DESTDIR}/usr/include/sys/syscall.h
|
1996-10-19 04:54:22 +04:00
|
|
|
@echo creating ${.TARGET}
|
|
|
|
@printf '#include "SYS.h"\nRSYSCALL_NOERROR(${.PREFIX})\n' | \
|
1997-10-23 03:14:04 +04:00
|
|
|
${CPP} ${CPPFLAGS:M-[ID]*} ${AINC} | ${AS} -o ${.TARGET}.o
|
1996-10-19 04:54:22 +04:00
|
|
|
@${LD} -x -r ${.TARGET}.o -o ${.TARGET}
|
|
|
|
@rm -f ${.TARGET}.o
|
|
|
|
|
1997-05-02 22:16:50 +04:00
|
|
|
${PPSEUDONOERR}: ${.CURDIR}/arch/${MACHINE_ARCH}/SYS.h \
|
1997-06-01 02:38:59 +04:00
|
|
|
${DESTDIR}/usr/include/sys/syscall.h
|
1993-08-16 07:32:58 +04:00
|
|
|
@echo creating ${.TARGET}
|
1997-05-02 22:16:50 +04:00
|
|
|
@printf '#include "SYS.h"\n \
|
|
|
|
PSEUDO_NOERROR(${.PREFIX},${.PREFIX:S/_//})\n' | \
|
1997-10-23 03:14:04 +04:00
|
|
|
${CPP} -DPROF ${CPPFLAGS:M-[ID]*} ${AINC} | ${AS} -o ${.TARGET}.o
|
1995-09-25 03:57:28 +03:00
|
|
|
@${LD} -X -r ${.TARGET}.o -o ${.TARGET}
|
|
|
|
@rm -f ${.TARGET}.o
|
1993-03-21 12:45:37 +03:00
|
|
|
|
1997-05-02 22:16:50 +04:00
|
|
|
${SPSEUDONOERR}: ${.CURDIR}/arch/${MACHINE_ARCH}/SYS.h \
|
1997-06-01 02:38:59 +04:00
|
|
|
${DESTDIR}/usr/include/sys/syscall.h
|
1996-10-14 00:28:55 +04:00
|
|
|
@echo creating ${.TARGET}
|
1997-05-02 22:16:50 +04:00
|
|
|
@printf '#include "SYS.h"\n \
|
|
|
|
PSEUDO_NOERROR(${.PREFIX},${.PREFIX:S/_//})\n' | \
|
1997-10-23 03:14:04 +04:00
|
|
|
${CPP} ${CPPPICFLAGS} ${CPPFLAGS:M-[ID]*} ${AINC} | \
|
1997-05-24 05:42:36 +04:00
|
|
|
${AS} ${APICFLAGS} -o ${.TARGET}
|
|
|
|
|
1993-09-29 04:27:10 +03:00
|
|
|
|
1997-05-02 22:16:50 +04:00
|
|
|
${PSEUDONOERR}: ${.CURDIR}/arch/${MACHINE_ARCH}/SYS.h \
|
1997-06-01 02:38:59 +04:00
|
|
|
${DESTDIR}/usr/include/sys/syscall.h
|
1993-08-16 07:32:58 +04:00
|
|
|
@echo creating ${.TARGET}
|
1997-05-02 22:16:50 +04:00
|
|
|
@printf '#include "SYS.h"\n \
|
|
|
|
PSEUDO_NOERROR(${.PREFIX},${.PREFIX:S/_//})\n' | \
|
1997-10-23 03:14:04 +04:00
|
|
|
${CPP} ${CPPFLAGS:M-[ID]*} ${AINC} | ${AS} -o ${.TARGET}.o
|
1995-09-25 03:57:28 +03:00
|
|
|
@${LD} -X -r ${.TARGET}.o -o ${.TARGET}
|
|
|
|
@rm -f ${.TARGET}.o
|
1993-03-21 12:45:37 +03:00
|
|
|
|
1997-11-05 08:46:18 +03:00
|
|
|
# Lint stubs for all automatically-generated assembly stubs (GENERATED)
|
|
|
|
LSRCS+= LintSysNormal.c LintSysNoerr.c LintSysPseudoNoerr.c
|
|
|
|
DPSRCS+= LintSysNormal.c LintSysNoerr.c LintSysPseudoNoerr.c
|
|
|
|
|
|
|
|
CLEANFILES+= LintSysNormal.c LintSysNoerr.c LintSysPseudo.c
|
|
|
|
|
|
|
|
LintSysNormal.c: ${.CURDIR}/sys/makelintstub \
|
|
|
|
${DESTDIR}/usr/include/sys/syscall.h
|
|
|
|
@echo creating ${.TARGET}
|
1997-11-07 01:34:01 +03:00
|
|
|
@sh ${.CURDIR}/sys/makelintstub -o ${.TARGET} \
|
1997-11-05 08:46:18 +03:00
|
|
|
-s ${DESTDIR}/usr/include/sys/syscall.h ${ASM}
|
|
|
|
|
|
|
|
LintSysNoerr.c: ${.CURDIR}/sys/makelintstub \
|
|
|
|
${DESTDIR}/usr/include/sys/syscall.h
|
|
|
|
@echo creating ${.TARGET}
|
1997-11-07 01:34:01 +03:00
|
|
|
@sh ${.CURDIR}/sys/makelintstub -o ${.TARGET} -n \
|
1997-11-05 08:46:18 +03:00
|
|
|
-s ${DESTDIR}/usr/include/sys/syscall.h ${NOERR}
|
|
|
|
|
|
|
|
LintSysPseudoNoerr.c: ${.CURDIR}/sys/makelintstub \
|
|
|
|
${DESTDIR}/usr/include/sys/syscall.h
|
1996-12-22 14:37:37 +03:00
|
|
|
@echo creating ${.TARGET}
|
1997-11-07 01:34:01 +03:00
|
|
|
@sh ${.CURDIR}/sys/makelintstub -o ${.TARGET} -p \
|
1997-11-05 08:46:18 +03:00
|
|
|
-s ${DESTDIR}/usr/include/sys/syscall.h ${PSEUDONOERR}
|
1996-12-22 14:37:37 +03:00
|
|
|
|
1995-02-27 14:22:54 +03:00
|
|
|
MAN+= accept.2 access.2 acct.2 adjtime.2 bind.2 brk.2 chdir.2 chflags.2 \
|
|
|
|
chmod.2 chown.2 chroot.2 close.2 connect.2 dup.2 execve.2 _exit.2 \
|
1997-10-20 20:04:24 +04:00
|
|
|
fcntl.2 flock.2 fork.2 fsync.2 getdents.2 getdirentries.3 getfh.2 \
|
1997-10-13 03:06:53 +04:00
|
|
|
getfsstat.2 getgid.2 getgroups.2 getitimer.2 getlogin.2 getpeername.2 \
|
|
|
|
getpgrp.2 getpid.2 getpriority.2 getrlimit.2 getrusage.2 getsockname.2 \
|
1997-03-27 05:39:15 +03:00
|
|
|
getsockopt.2 gettimeofday.2 getuid.2 intro.2 ioctl.2 kill.2 ktrace.2 \
|
1997-09-08 22:42:43 +04:00
|
|
|
link.2 listen.2 lseek.2 mkdir.2 \
|
|
|
|
mkfifo.2 mknod.2 madvise.2 mincore.2 minherit.2 \
|
1997-03-27 05:39:15 +03:00
|
|
|
mlock.2 mmap.2 mount.2 mprotect.2 msgctl.2 msgget.2 msgrcv.2 \
|
1997-04-17 22:13:41 +04:00
|
|
|
msgsnd.2 msync.2 munmap.2 nanosleep.2 nfssvc.2 open.2 pathconf.2 \
|
|
|
|
pipe.2 poll.2 \
|
1996-09-07 23:05:32 +04:00
|
|
|
profil.2 ptrace.2 quotactl.2 read.2 readlink.2 reboot.2 recv.2 \
|
1997-04-01 11:50:19 +04:00
|
|
|
rename.2 revoke.2 rmdir.2 select.2 semctl.2 semget.2 semop.2 \
|
1997-03-27 05:39:15 +03:00
|
|
|
send.2 setgroups.2 setpgid.2 setregid.2 setreuid.2 setsid.2 setuid.2 \
|
|
|
|
shmat.2 shmctl.2 shmget.2 \
|
|
|
|
shutdown.2 sigaction.2 sigaltstack.2 sigpending.2 \
|
1995-02-27 14:22:54 +03:00
|
|
|
sigprocmask.2 sigreturn.2 sigstack.2 sigsuspend.2 socket.2 \
|
1997-10-20 20:04:24 +04:00
|
|
|
socketpair.2 stat.2 statfs.2 swapctl.2 swapon.3 symlink.2 sync.2 \
|
|
|
|
sysarch.2 syscall.2 truncate.2 umask.2 unlink.2 utimes.2 vfork.2 \
|
|
|
|
wait.2 write.2
|
1993-03-21 12:45:37 +03:00
|
|
|
|
|
|
|
MLINKS+=brk.2 sbrk.2
|
|
|
|
MLINKS+=dup.2 dup2.2
|
|
|
|
MLINKS+=chdir.2 fchdir.2
|
|
|
|
MLINKS+=chflags.2 fchflags.2
|
1997-10-06 05:12:02 +04:00
|
|
|
MLINKS+=chmod.2 fchmod.2 chmod.2 lchmod.2
|
|
|
|
MLINKS+=chown.2 fchown.2 chown.2 lchown.2
|
1993-03-21 12:45:37 +03:00
|
|
|
MLINKS+=getgid.2 getegid.2
|
|
|
|
MLINKS+=getitimer.2 setitimer.2
|
|
|
|
MLINKS+=getlogin.2 setlogin.2
|
1997-03-27 05:39:15 +03:00
|
|
|
MLINKS+=getpgrp.2 getpgid.2
|
1993-03-21 12:45:37 +03:00
|
|
|
MLINKS+=getpid.2 getppid.2
|
|
|
|
MLINKS+=getpriority.2 setpriority.2
|
|
|
|
MLINKS+=getrlimit.2 setrlimit.2
|
|
|
|
MLINKS+=getsockopt.2 setsockopt.2
|
|
|
|
MLINKS+=gettimeofday.2 settimeofday.2
|
|
|
|
MLINKS+=getuid.2 geteuid.2
|
|
|
|
MLINKS+=intro.2 errno.2
|
|
|
|
MLINKS+=lseek.2 seek.2
|
1994-05-07 08:11:08 +04:00
|
|
|
MLINKS+=mlock.2 munlock.2
|
1993-03-21 12:45:37 +03:00
|
|
|
MLINKS+=mount.2 unmount.2
|
1994-05-07 08:11:08 +04:00
|
|
|
MLINKS+=pathconf.2 fpathconf.2
|
1993-03-21 12:45:37 +03:00
|
|
|
MLINKS+=read.2 readv.2
|
|
|
|
MLINKS+=recv.2 recvfrom.2 recv.2 recvmsg.2
|
|
|
|
MLINKS+=send.2 sendmsg.2 send.2 sendto.2
|
1993-11-21 22:32:11 +03:00
|
|
|
MLINKS+=setpgid.2 setpgrp.2
|
1994-04-10 02:57:32 +04:00
|
|
|
MLINKS+=setuid.2 setegid.2 setuid.2 seteuid.2 setuid.2 setgid.2
|
1997-03-27 05:39:15 +03:00
|
|
|
MLINKS+=shmat.2 shmdt.2
|
1993-03-21 12:45:37 +03:00
|
|
|
MLINKS+=stat.2 fstat.2 stat.2 lstat.2
|
|
|
|
MLINKS+=statfs.2 fstatfs.2
|
1995-02-27 14:22:54 +03:00
|
|
|
MLINKS+=syscall.2 __syscall.2
|
1993-03-21 12:45:37 +03:00
|
|
|
MLINKS+=truncate.2 ftruncate.2
|
1997-10-06 05:12:02 +04:00
|
|
|
MLINKS+=utimes.2 futimes.2 utimes.2 lutimes.2
|
1993-03-21 12:45:37 +03:00
|
|
|
MLINKS+=wait.2 wait3.2 wait.2 wait4.2 wait.2 waitpid.2
|
|
|
|
MLINKS+=write.2 writev.2
|