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