1 # $NetBSD: Makefile.inc,v 1.113 2001/07/18 23:03:10 thorpej Exp $ 2 # @(#)Makefile.inc 8.3 (Berkeley) 10/24/94 3 4 # sys sources 5 .PATH: ${ARCHDIR}/sys ${.CURDIR}/sys 6 7 # modules with non-default implementations on at least one architecture: 8 SRCS+= Ovfork.S __clone.S __vfork14.S brk.S exect.S fork.S msgctl.S pipe.S \ 9 ptrace.S sbrk.S __semctl.S setlogin.S shmat.S shmctl.S sigaction.S \ 10 sigpending.S sigprocmask.S sigreturn.S __sigreturn14.S sigsuspend.S \ 11 syscall.S __syscall.S 12 SRCS+= cerror.S 13 14 LSRCS+= Lint_Ovfork.c Lint___clone.c Lint___vfork14.c Lint_brk.c Lint_clone.c \ 15 Lint_exect.c Lint_fork.c Lint_pipe.c Lint_ptrace.c Lint_sbrk.c \ 16 Lint_setlogin.c Lint___sigreturn14.c Lint_syscall.c Lint___syscall.c 17 DPSRCS+= Lint_Ovfork.c Lint___clone.c Lint___vfork14.c Lint_brk.c Lint_clone.c \ 18 Lint_exect.c Lint_fork.c Lint_pipe.c Lint_ptrace.c Lint_sbrk.c \ 19 Lint_setlogin.c Lint___sigreturn14.c Lint_syscall.c Lint___syscall.c 20 21 # glue to provide compatibility between GCC 1.X and 2.X and for compat 22 # with old syscall interfaces. 23 SRCS+= ftruncate.c getdirentries.c lseek.c mmap.c msync.c \ 24 pread.c preadv.c pwrite.c pwritev.c semctl.c \ 25 sigaltstack.c stat.c swapon.c truncate.c 26 27 # glue to syscalls that may pass structs or unions, which cannot be 28 # handled portably and easily by the syscall interface. The glue 29 # converts structs and unions to pointers to them. 30 SRCS+= __semctl13.c 31 32 # "stub" POSIX.1b interfaces which return -1 and set errno to ENOSYS, so 33 # we can avoid bumping libc's minor number as functions are added to the 34 # kernel. 35 SRCS+= timer_create.c timer_delete.c timer_gettime.c timer_settime.c \ 36 timer_getoverrun.c 37 38 # namespace purity wrappers 39 SRCS+= _brk.c _fork.c _pipe.c _sbrk.c 40 41 # modules with default implementations on all architectures: 42 ASM= accept.o access.o acct.o adjtime.o bind.o chdir.o chflags.o \ 43 chmod.o chown.o chroot.o clock_getres.o clock_gettime.o \ 44 clock_settime.o close.o connect.o dup.o dup2.o execve.o \ 45 fchdir.o fchflags.o fchmod.o fchown.o fchroot.o fcntl.o \ 46 fdatasync.o fhopen.o fhstat.o fhstatfs.o \ 47 fktrace.o flock.o fpathconf.o __fstat13.o fstatfs.o \ 48 fsync.o futimes.o __getcwd.o \ 49 getdents.o getfh.o getfsstat.o getgroups.o getitimer.o \ 50 __getlogin.o getpeername.o getpgid.o getpgrp.o \ 51 getpriority.o getrlimit.o getrusage.o getsid.o getsockname.o \ 52 getsockopt.o gettimeofday.o ioctl.o kill.o ktrace.o \ 53 lchflags.o lchmod.o lchown.o __lstat13.o lfs_bmapv.o lfs_markv.o \ 54 lfs_segclean.o lfs_segwait.o link.o listen.o lutimes.o \ 55 madvise.o mincore.o minherit.o mkdir.o mkfifo.o mknod.o \ 56 mlock.o mlockall.o mount.o mprotect.o __msgctl13.o msgget.o msgrcv.o \ 57 msgsnd.o __msync13.o munlock.o munlockall.o munmap.o nanosleep.o \ 58 nfssvc.o ntp_adjtime.o ntp_gettime.o open.o pathconf.o \ 59 poll.o profil.o quotactl.o read.o \ 60 readlink.o readv.o reboot.o recvfrom.o recvmsg.o rename.o revoke.o \ 61 rmdir.o select.o semconfig.o semget.o semop.o ____semctl13.o sendmsg.o \ 62 sendto.o setegid.o seteuid.o setgid.o setgroups.o setitimer.o \ 63 setpgid.o setpriority.o setregid.o setreuid.o setrlimit.o \ 64 setsid.o setsockopt.o settimeofday.o setuid.o \ 65 __shmctl13.o shmdt.o shmget.o shutdown.o __sigaction14.o \ 66 __sigaltstack14.o __sigpending14.o __sigprocmask14.o __sigsuspend14.o \ 67 socket.o socketpair.o __stat13.o statfs.o \ 68 swapctl.o symlink.o sysarch.o umask.o undelete.o unlink.o \ 69 unmount.o utimes.o utrace.o vadvise.o wait4.o write.o writev.o \ 70 __sysctl.o \ 71 __posix_chown.o __posix_fchown.o __posix_lchown.o __posix_rename.o 72 73 PASM= ${ASM:.o=.po} 74 SASM= ${ASM:.o=.so} 75 76 NOERR= getegid.o geteuid.o getgid.o getpid.o getppid.o getuid.o \ 77 issetugid.o sync.o 78 PNOERR= ${NOERR:.o=.po} 79 SNOERR= ${NOERR:.o=.so} 80 81 PSEUDONOERR= _exit.o 82 PPSEUDONOERR= ${PSEUDONOERR:.o=.po} 83 SPSEUDONOERR= ${PSEUDONOERR:.o=.so} 84 85 ACPPFLAGS=${CPPFLAGS:M-[ID]*} 86 .if defined(DESTDIR) 87 ACPPFLAGS+= -nostdinc -idirafter ${DESTDIR}/usr/include 88 .endif 89 90 OBJS+= ${ASM} ${NOERR} ${PSEUDONOERR} 91 92 ${PASM}: ${ARCHDIR}/SYS.h \ 93 ${DESTDIR}/usr/include/sys/syscall.h 94 @echo creating ${.TARGET} 95 @printf '#include "SYS.h"\nRSYSCALL(${.PREFIX})\n' | \ 96 ${CPP} -DGPROF ${ACPPFLAGS} ${AINC} | \ 97 ${AS} -o ${.TARGET}.o 98 @${LD} -X -r ${.TARGET}.o -o ${.TARGET} 99 @rm -f ${.TARGET}.o 100 101 ${SASM}: ${ARCHDIR}/SYS.h \ 102 ${DESTDIR}/usr/include/sys/syscall.h 103 @echo creating ${.TARGET} 104 @printf '#include "SYS.h"\nRSYSCALL(${.PREFIX})\n' | \ 105 ${CPP} ${CPPPICFLAGS} ${ACPPFLAGS} ${AINC} | \ 106 ${AS} ${APICFLAGS} -o ${.TARGET} 107 108 ${ASM}: ${ARCHDIR}/SYS.h \ 109 ${DESTDIR}/usr/include/sys/syscall.h 110 @echo creating ${.TARGET} 111 @printf '#include "SYS.h"\nRSYSCALL(${.PREFIX})\n' | \ 112 ${CPP} ${ACPPFLAGS} ${AINC} | ${AS} -o ${.TARGET}.o 113 @${LD} -x -r ${.TARGET}.o -o ${.TARGET} 114 @rm -f ${.TARGET}.o 115 116 ${PNOERR}: ${ARCHDIR}/SYS.h \ 117 ${DESTDIR}/usr/include/sys/syscall.h 118 @echo creating ${.TARGET} 119 @printf '#include "SYS.h"\nRSYSCALL_NOERROR(${.PREFIX})\n' | \ 120 ${CPP} -DGPROF ${ACPPFLAGS} ${AINC} | ${AS} -o ${.TARGET}.o 121 @${LD} -X -r ${.TARGET}.o -o ${.TARGET} 122 @rm -f ${.TARGET}.o 123 124 ${SNOERR}: ${ARCHDIR}/SYS.h \ 125 ${DESTDIR}/usr/include/sys/syscall.h 126 @echo creating ${.TARGET} 127 @printf '#include "SYS.h"\nRSYSCALL_NOERROR(${.PREFIX})\n' | \ 128 ${CPP} ${CPPPICFLAGS} ${ACPPFLAGS} ${AINC} | \ 129 ${AS} ${APICFLAGS} -o ${.TARGET} 130 131 ${NOERR}: ${ARCHDIR}/SYS.h \ 132 ${DESTDIR}/usr/include/sys/syscall.h 133 @echo creating ${.TARGET} 134 @printf '#include "SYS.h"\nRSYSCALL_NOERROR(${.PREFIX})\n' | \ 135 ${CPP} ${ACPPFLAGS} ${AINC} | ${AS} -o ${.TARGET}.o 136 @${LD} -x -r ${.TARGET}.o -o ${.TARGET} 137 @rm -f ${.TARGET}.o 138 139 ${PPSEUDONOERR}: ${ARCHDIR}/SYS.h \ 140 ${DESTDIR}/usr/include/sys/syscall.h 141 @echo creating ${.TARGET} 142 @printf '#include "SYS.h"\n \ 143 PSEUDO_NOERROR(${.PREFIX},${.PREFIX:S/_//})\n' | \ 144 ${CPP} -DGPROF ${ACPPFLAGS} ${AINC} | ${AS} -o ${.TARGET}.o 145 @${LD} -X -r ${.TARGET}.o -o ${.TARGET} 146 @rm -f ${.TARGET}.o 147 148 ${SPSEUDONOERR}: ${ARCHDIR}/SYS.h \ 149 ${DESTDIR}/usr/include/sys/syscall.h 150 @echo creating ${.TARGET} 151 @printf '#include "SYS.h"\n \ 152 PSEUDO_NOERROR(${.PREFIX},${.PREFIX:S/_//})\n' | \ 153 ${CPP} ${CPPPICFLAGS} ${ACPPFLAGS} ${AINC} | \ 154 ${AS} ${APICFLAGS} -o ${.TARGET} 155 156 157 ${PSEUDONOERR}: ${ARCHDIR}/SYS.h \ 158 ${DESTDIR}/usr/include/sys/syscall.h 159 @echo creating ${.TARGET} 160 @printf '#include "SYS.h"\n \ 161 PSEUDO_NOERROR(${.PREFIX},${.PREFIX:S/_//})\n' | \ 162 ${CPP} ${ACPPFLAGS} ${AINC} | ${AS} -o ${.TARGET}.o 163 @${LD} -X -r ${.TARGET}.o -o ${.TARGET} 164 @rm -f ${.TARGET}.o 165 166 # Lint stubs for all automatically-generated assembly stubs (GENERATED) 167 LSRCS+= LintSysNormal.c LintSysNoerr.c LintSysPseudoNoerr.c 168 DPSRCS+= LintSysNormal.c LintSysNoerr.c LintSysPseudoNoerr.c 169 170 CLEANFILES+= LintSysNormal.c LintSysNoerr.c LintSysPseudo.c 171 172 LintSysNormal.c: ${.CURDIR}/sys/makelintstub \ 173 ${DESTDIR}/usr/include/sys/syscall.h 174 @echo creating ${.TARGET} 175 @sh ${.CURDIR}/sys/makelintstub -o ${.TARGET} \ 176 -s ${DESTDIR}/usr/include/sys/syscall.h ${ASM} 177 178 LintSysNoerr.c: ${.CURDIR}/sys/makelintstub \ 179 ${DESTDIR}/usr/include/sys/syscall.h 180 @echo creating ${.TARGET} 181 @sh ${.CURDIR}/sys/makelintstub -o ${.TARGET} -n \ 182 -s ${DESTDIR}/usr/include/sys/syscall.h ${NOERR} 183 184 LintSysPseudoNoerr.c: ${.CURDIR}/sys/makelintstub \ 185 ${DESTDIR}/usr/include/sys/syscall.h 186 @echo creating ${.TARGET} 187 @sh ${.CURDIR}/sys/makelintstub -o ${.TARGET} -p \ 188 -s ${DESTDIR}/usr/include/sys/syscall.h ${PSEUDONOERR} 189 190 MAN+= accept.2 access.2 acct.2 adjtime.2 bind.2 brk.2 chdir.2 \ 191 chflags.2 chmod.2 chown.2 chroot.2 clock_settime.2 clone.2 close.2 \ 192 connect.2 dup.2 execve.2 _exit.2 fcntl.2 fdatasync.2 fhopen.2 \ 193 flock.2 fork.2 fsync.2 getdents.2 getdirentries.3 \ 194 getfh.2 getfsstat.2 getgid.2 getgroups.2 \ 195 getitimer.2 getlogin.2 getpeername.2 getpgrp.2 getpid.2 \ 196 getpriority.2 getrlimit.2 getrusage.2 getsid.2 getsockname.2 \ 197 getsockopt.2 gettimeofday.2 getuid.2 intro.2 ioctl.2 issetugid.2 \ 198 kill.2 ktrace.2 lfs_bmapv.2 lfs_markv.2 lfs_segclean.2 lfs_segwait.2 \ 199 link.2 listen.2 lseek.2 mkdir.2 mkfifo.2 mknod.2 \ 200 madvise.2 mincore.2 minherit.2 mlock.2 mlockall.2 mmap.2 mount.2 \ 201 mprotect.2 msgctl.2 msgget.2 msgrcv.2 msgsnd.2 msync.2 \ 202 munmap.2 nanosleep.2 nfssvc.2 open.2 pathconf.2 pipe.2 \ 203 poll.2 profil.2 ptrace.2 quotactl.2 read.2 readlink.2 \ 204 reboot.2 recv.2 rename.2 revoke.2 rmdir.2 select.2 semctl.2 \ 205 semget.2 semop.2 send.2 setgroups.2 setpgid.2 setregid.2 \ 206 setreuid.2 setsid.2 setuid.2 shmat.2 shmctl.2 shmget.2 \ 207 shutdown.2 sigaction.2 sigaltstack.2 sigpending.2 \ 208 sigprocmask.2 sigreturn.2 sigstack.2 sigsuspend.2 socket.2 \ 209 socketpair.2 stat.2 statfs.2 swapctl.2 swapon.3 symlink.2 \ 210 sync.2 sysarch.2 syscall.2 truncate.2 umask.2 undelete.2 \ 211 unlink.2 utimes.2 utrace.2 vfork.2 wait.2 write.2 212 213 MLINKS+=brk.2 sbrk.2 214 MLINKS+=clone.2 __clone.2 215 MLINKS+=dup.2 dup2.2 216 MLINKS+=chdir.2 fchdir.2 217 MLINKS+=chflags.2 fchflags.2 chflags.2 lchflags.2 218 MLINKS+=chmod.2 fchmod.2 chmod.2 lchmod.2 219 MLINKS+=chown.2 fchown.2 chown.2 lchown.2 220 MLINKS+=chroot.2 fchroot.2 221 MLINKS+=clock_settime.2 clock_gettime.2 222 MLINKS+=clock_settime.2 clock_getres.2 223 MLINKS+=fhopen.2 fhstat.2 fhopen.2 fhstatfs.2 224 MLINKS+=getgid.2 getegid.2 225 MLINKS+=getitimer.2 setitimer.2 226 MLINKS+=getlogin.2 setlogin.2 227 MLINKS+=getpgrp.2 getpgid.2 228 MLINKS+=getpid.2 getppid.2 229 MLINKS+=getpriority.2 setpriority.2 230 MLINKS+=getrlimit.2 setrlimit.2 231 MLINKS+=getsockopt.2 setsockopt.2 232 MLINKS+=gettimeofday.2 settimeofday.2 233 MLINKS+=getuid.2 geteuid.2 234 MLINKS+=intro.2 errno.2 235 MLINKS+=ktrace.2 fktrace.2 236 MLINKS+=lseek.2 seek.2 237 MLINKS+=mlock.2 munlock.2 238 MLINKS+=mlockall.2 munlockall.2 239 MLINKS+=mount.2 unmount.2 240 MLINKS+=pathconf.2 fpathconf.2 241 MLINKS+=read.2 readv.2 read.2 pread.2 read.2 preadv.2 242 MLINKS+=recv.2 recvfrom.2 recv.2 recvmsg.2 243 MLINKS+=send.2 sendmsg.2 send.2 sendto.2 244 MLINKS+=setpgid.2 setpgrp.2 245 MLINKS+=setuid.2 setegid.2 setuid.2 seteuid.2 setuid.2 setgid.2 246 MLINKS+=shmat.2 shmdt.2 247 MLINKS+=stat.2 fstat.2 stat.2 lstat.2 248 MLINKS+=statfs.2 fstatfs.2 249 MLINKS+=syscall.2 __syscall.2 250 MLINKS+=truncate.2 ftruncate.2 251 MLINKS+=utimes.2 futimes.2 utimes.2 lutimes.2 252 MLINKS+=wait.2 wait3.2 wait.2 wait4.2 wait.2 waitpid.2 253 MLINKS+=write.2 writev.2 write.2 pwrite.2 write.2 pwritev.2 254