Home | History | Annotate | Line # | Download | only in sys
Makefile.inc revision 1.155
      1 #	$NetBSD: Makefile.inc,v 1.155 2005/02/25 21:51:10 matt 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 	getcontext.S \
     10 	ptrace.S sbrk.S __semctl.S shmat.S shmctl.S sigaction.S \
     11 	sigpending.S sigprocmask.S sigreturn.S __sigreturn14.S sigsuspend.S \
     12 	syscall.S __syscall.S __clone.S cerror.S
     13 
     14 _LSRC=	Lint_Ovfork.c Lint___clone.c Lint___vfork14.c Lint_brk.c Lint_clone.c \
     15 	Lint_getcontext.c \
     16 	Lint_exect.c Lint_fork.c Lint_pipe.c Lint_ptrace.c Lint_sbrk.c \
     17 	Lint_setlogin.c Lint_syscall.c Lint___syscall.c \
     18 	LintSysNormal.c LintSysNoerr.c LintSysPseudoNoerr.c
     19 
     20 .if ${MKLINT} != "no"
     21 LSRCS+=		${_LSRC}
     22 DPSRCS+=	${_LSRC:MLintSys*.c}
     23 CLEANFILES+=	${_LSRC:MLintSys*.c}
     24 .endif
     25 
     26 # glue to offer userland wrappers for some syscalls
     27 SRCS+=	sigtimedwait.c sigwait.c sigwaitinfo.c statvfs.c
     28 
     29 # glue to provide compatibility between GCC 1.X and 2.X and for compat
     30 # with old syscall interfaces.
     31 SRCS+=	adjtime.c clock_settime.c ftruncate.c getdirentries.c lseek.c mmap.c \
     32 	msync.c ntp_adjtime.c pread.c preadv.c pwrite.c pwritev.c semctl.c \
     33 	settimeofday.c sigaltstack.c stat.c statfs.c swapon.c truncate.c
     34 
     35 # glue to syscalls that may pass structs or unions, which cannot be
     36 # handled portably and easily by the syscall interface. The glue
     37 # converts structs and unions to pointers to them.
     38 SRCS+=	__semctl13.c
     39 
     40 # namespace purity wrappers
     41 SRCS+=	_brk.c _fork.c _getcontext.c _pipe.c _sbrk.c
     42 
     43 # modules with default implementations on all architectures:
     44 ASM=	access.S acct.S \
     45 	bind.S \
     46 	chdir.S chflags.S chmod.S chown.S chroot.S clock_getres.S \
     47 		clock_gettime.S \
     48 	dup.S dup2.S  \
     49 	extattrctl.S \
     50 		extattr_delete_fd.S extattr_delete_file.S \
     51 		extattr_delete_link.S extattr_get_fd.S extattr_get_file.S \
     52 		extattr_get_link.S extattr_list_fd.S extattr_list_file.S \
     53 		extattr_list_link.S extattr_set_fd.S extattr_set_file.S \
     54 		extattr_set_link.S \
     55 	fchdir.S fchflags.S fchmod.S fchown.S fchroot.S \
     56 		fhopen.S fhstat.S fhstatvfs1.S fktrace.S \
     57 		flock.S fpathconf.S __fstat13.S fstatvfs1.S futimes.S \
     58 	__getcwd.S getdents.S getfh.S getvfsstat.S getgroups.S getitimer.S \
     59 		__getlogin.S getpeername.S getpgid.S getpgrp.S \
     60 		getpriority.S getrlimit.S getrusage.S getsid.S getsockname.S \
     61 		getsockopt.S gettimeofday.S \
     62 	ioctl.S \
     63 	kevent.S kqueue.S ktrace.S \
     64 		_ksem_close.S _ksem_destroy.S _ksem_getvalue.S _ksem_init.S \
     65 		_ksem_post.S _ksem_trywait.S _ksem_unlink.S _ksem_wait.S \
     66 		_ksem_open.S \
     67 	lchflags.S lchmod.S lchown.S lfs_bmapv.S lfs_markv.S lfs_segclean.S \
     68 		lfs_segwait.S link.S listen.S __lstat13.S lutimes.S \
     69 		_lwp_create.S _lwp_exit.S _lwp_self.S _lwp_wait.S \
     70 		_lwp_suspend.S _lwp_continue.S _lwp_wakeup.S \
     71 		_lwp_getprivate.S _lwp_setprivate.S \
     72 	madvise.S mincore.S minherit.S mkdir.S mkfifo.S mknod.S \
     73 		mlock.S mlockall.S mount.S mprotect.S __msgctl13.S msgget.S \
     74 		munlock.S munlockall.S munmap.S \
     75 	nfssvc.S ntp_gettime.S \
     76 	pathconf.S pmc_get_info.S pmc_control.S __posix_chown.S \
     77 		__posix_fchown.S __posix_lchown.S __posix_rename.S profil.S \
     78 	quotactl.S \
     79 	rasctl.S readlink.S reboot.S recvfrom.S recvmsg.S rename.S revoke.S \
     80 		rmdir.S \
     81 	sa_register.S sa_stacks.S sa_enable.S sa_setconcurrency.S sa_yield.S \
     82 		sa_preempt.S semconfig.S semget.S semop.S ____semctl13.S \
     83 		sendmsg.S sendto.S setegid.S setcontext.S seteuid.S setgid.S \
     84 		setgroups.S setitimer.S __setlogin.S setpgid.S setpriority.S \
     85 		setregid.S setreuid.S setrlimit.S setsid.S setsockopt.S \
     86 		setuid.S __shmctl13.S shmdt.S shmget.S shutdown.S \
     87 		__sigaltstack14.S __sigpending14.S __sigaction_sigtramp.S \
     88 		__sigtimedwait.S socket.S socketpair.S __stat13.S statvfs1.S \
     89 		swapctl.S symlink.S __sysctl.S \
     90 	timer_create.S timer_delete.S timer_gettime.S timer_getoverrun.S \
     91 		timer_settime.S \
     92 	umask.S undelete.S unlink.S unmount.S utimes.S utrace.S uuidgen.S \
     93 	vadvise.S
     94 
     95 WEAKASM= accept.S close.S connect.S execve.S \
     96 	fcntl.S fdatasync.S fsync.S fsync_range.S \
     97 	kill.S msgrcv.S msgsnd.S __msync13.S \
     98 	nanosleep.S open.S poll.S read.S readv.S \
     99 	select.S __sigprocmask14.S __sigsuspend14.S sysarch.S \
    100 	wait4.S write.S writev.S
    101 
    102 NOERR=	getegid.S geteuid.S getgid.S getpid.S getppid.S getuid.S \
    103 	issetugid.S sync.S
    104 
    105 PSEUDONOERR=	_exit.S
    106 
    107 SRCS+=		${ASM} ${WEAKASM} ${NOERR} ${PSEUDONOERR}
    108 CLEANFILES+=	${ASM} ${WEAKASM} ${NOERR} ${PSEUDONOERR}
    109 
    110 ASMDEPS=	${.CURDIR}/sys/Makefile.inc ${ARCHDIR}/SYS.h \
    111 		${DESTDIR}/usr/include/sys/syscall.h
    112 
    113 ${ASM}: ${ASMDEPS}
    114 	${_MKTARGET_CREATE}
    115 	printf '#include "SYS.h"\nRSYSCALL(${.PREFIX})\n' >${.TARGET}
    116 
    117 ${WEAKASM}: ${ASMDEPS}
    118 	${_MKTARGET_CREATE}
    119 	printf '#include "SYS.h"\nWSYSCALL(${.PREFIX},_sys_${.PREFIX})\nWEAK_ALIAS(_${.PREFIX},_sys_${.PREFIX})\n' >${.TARGET}
    120 
    121 ${NOERR}: ${ASMDEPS}
    122 	${_MKTARGET_CREATE}
    123 	printf '#include "SYS.h"\nRSYSCALL_NOERROR(${.PREFIX})\n' >${.TARGET}
    124 
    125 ${PSEUDONOERR}: ${ASMDEPS}
    126 	${_MKTARGET_CREATE}
    127 	printf '#include "SYS.h"\nPSEUDO_NOERROR(${.PREFIX},${.PREFIX:S/_//})\n' >${.TARGET}
    128 
    129 LintSysNormal.c: ${.CURDIR}/sys/makelintstub \
    130     ${DESTDIR}/usr/include/sys/syscall.h
    131 	${_MKTARGET_CREATE}
    132 	CPP=${CPP:Q} ${HOST_SH} ${.CURDIR}/sys/makelintstub -o ${.TARGET} \
    133 	    -s ${DESTDIR}/usr/include/sys/syscall.h ${ASM} ${WEAKASM}
    134 
    135 LintSysNoerr.c: ${.CURDIR}/sys/makelintstub \
    136     ${DESTDIR}/usr/include/sys/syscall.h
    137 	${_MKTARGET_CREATE}
    138 	CPP=${CPP:Q} ${HOST_SH} ${.CURDIR}/sys/makelintstub -o ${.TARGET} -n \
    139 	    -s ${DESTDIR}/usr/include/sys/syscall.h ${NOERR}
    140 
    141 LintSysPseudoNoerr.c: ${.CURDIR}/sys/makelintstub \
    142     ${DESTDIR}/usr/include/sys/syscall.h
    143 	${_MKTARGET_CREATE}
    144 	CPP=${CPP:Q} ${HOST_SH} ${.CURDIR}/sys/makelintstub -o ${.TARGET} -p \
    145 	    -s ${DESTDIR}/usr/include/sys/syscall.h ${PSEUDONOERR}
    146 
    147 MAN+=	accept.2 access.2 acct.2 adjtime.2 bind.2 brk.2 chdir.2 \
    148 	chflags.2 chmod.2 chown.2 chroot.2 clock_settime.2 clone.2 close.2 \
    149 	connect.2 dup.2 execve.2 _exit.2 extattr_get_file.2 \
    150 	fcntl.2 fdatasync.2 fhopen.2 \
    151 	flock.2 fork.2 fsync.2 getcontext.2 getdents.2 getdirentries.3 \
    152 	getfh.2 getvfsstat.2 getgid.2 getgroups.2 \
    153 	getitimer.2 getlogin.2 getpeername.2 getpgrp.2 getpid.2 \
    154 	getpriority.2 getrlimit.2 getrusage.2 getsid.2 getsockname.2 \
    155 	getsockopt.2 gettimeofday.2 getuid.2 intro.2 ioctl.2 issetugid.2 \
    156 	kill.2 kqueue.2 ktrace.2 \
    157 	lfs_bmapv.2 lfs_markv.2 lfs_segclean.2 lfs_segwait.2 \
    158 	link.2 listen.2 lseek.2 _lwp_create.2 _lwp_exit.2 _lwp_self.2 \
    159 	_lwp_suspend.2 _lwp_wakeup.2 _lwp_wait.2 _lwp_getprivate.2 \
    160 	mkdir.2 mkfifo.2 mknod.2 \
    161 	madvise.2 mincore.2 minherit.2 mlock.2 mlockall.2 mmap.2 mount.2 \
    162 	mprotect.2 msgctl.2 msgget.2 msgrcv.2 msgsnd.2 msync.2 \
    163 	munmap.2 nanosleep.2 nfssvc.2 ntp_adjtime.2 open.2 pathconf.2 pipe.2 \
    164 	pmc_control.2 poll.2 profil.2 ptrace.2 quotactl.2 rasctl.2 \
    165 	read.2 readlink.2 \
    166 	reboot.2 recv.2 rename.2 revoke.2 rmdir.2 \
    167 	sa_register.2 sa_stacks.2 sa_enable.2 sa_setconcurrency.2 sa_yield.2 \
    168 	select.2 semctl.2 \
    169 	semget.2 semop.2 send.2 setgroups.2 setpgid.2 setregid.2 \
    170 	setreuid.2 setsid.2 setuid.2 shmat.2 shmctl.2 shmget.2 \
    171 	shutdown.2 sigaction.2 sigaltstack.2 sigpending.2 \
    172 	sigprocmask.2 sigstack.2 sigsuspend.2 sigtimedwait.2 \
    173 	socket.2 \
    174 	socketpair.2 stat.2 statvfs.2 swapctl.2 swapon.3 symlink.2 \
    175 	sync.2 sysarch.2 syscall.2 timer_create.2 timer_delete.2 \
    176 	timer_settime.2 truncate.2 umask.2 undelete.2 \
    177 	unlink.2 utimes.2 utrace.2 uuidgen.2 vfork.2 wait.2 write.2
    178 
    179 MLINKS+=_exit.2 _Exit.2
    180 MLINKS+=brk.2 sbrk.2
    181 MLINKS+=clone.2 __clone.2
    182 MLINKS+=dup.2 dup2.2
    183 MLINKS+=chdir.2 fchdir.2
    184 MLINKS+=chflags.2 fchflags.2 chflags.2 lchflags.2
    185 MLINKS+=chmod.2 fchmod.2 chmod.2 lchmod.2
    186 MLINKS+=chown.2 fchown.2 chown.2 lchown.2
    187 MLINKS+=chroot.2 fchroot.2
    188 MLINKS+=clock_settime.2 clock_gettime.2
    189 MLINKS+=clock_settime.2 clock_getres.2
    190 MLINKS+=extattr_get_file.2 extattr_set_file.2 \
    191 	extattr_get_file.2 extattr_delete_file.2 \
    192 	extattr_get_file.2 extattr_list_file.2 \
    193 	extattr_get_file.2 extattr_get_fd.2 \
    194 	extattr_get_file.2 extattr_set_fd.2 \
    195 	extattr_get_file.2 extattr_delete_fd.2 \
    196 	extattr_get_file.2 extattr_list_fd.2 \
    197 	extattr_get_file.2 extattr_get_link.2 \
    198 	extattr_get_file.2 extattr_set_link.2 \
    199 	extattr_get_file.2 extattr_delete_link.2 \
    200 	extattr_get_file.2 extattr_list_link.2
    201 MLINKS+=fhopen.2 fhstat.2 fhopen.2 fhstatvfs.2 fhopen.2 fhstatvfs1.2
    202 MLINKS+=fsync.2 fsync_range.2
    203 MLINKS+=getcontext.2 setcontext.2
    204 MLINKS+=getgid.2 getegid.2
    205 MLINKS+=getitimer.2 setitimer.2
    206 MLINKS+=getlogin.2 setlogin.2
    207 MLINKS+=getpgrp.2 getpgid.2
    208 MLINKS+=getpid.2 getppid.2
    209 MLINKS+=getpriority.2 setpriority.2
    210 MLINKS+=getrlimit.2 setrlimit.2
    211 MLINKS+=getsockopt.2 setsockopt.2
    212 MLINKS+=gettimeofday.2 settimeofday.2
    213 MLINKS+=getuid.2 geteuid.2
    214 MLINKS+=intro.2 errno.2
    215 MLINKS+=kqueue.2 kevent.2
    216 MLINKS+=ktrace.2 fktrace.2
    217 MLINKS+=lseek.2 seek.2
    218 MLINKS+=_lwp_suspend.2 _lwp_continue.2
    219 MLINKS+=_lwp_getprivate.2 _lwp_setprivate.2
    220 MLINKS+=mlock.2 munlock.2
    221 MLINKS+=mlockall.2 munlockall.2
    222 MLINKS+=mount.2 unmount.2
    223 MLINKS+=ntp_adjtime.2 ntp_gettime.2
    224 MLINKS+=pathconf.2 fpathconf.2
    225 MLINKS+=pmc_control.2 pmc_get_info.2
    226 MLINKS+=read.2 readv.2 read.2 pread.2 read.2 preadv.2
    227 MLINKS+=recv.2 recvfrom.2 recv.2 recvmsg.2
    228 MLINKS+=send.2 sendmsg.2 send.2 sendto.2
    229 MLINKS+=setpgid.2 setpgrp.2
    230 MLINKS+=setuid.2 setegid.2 setuid.2 seteuid.2 setuid.2 setgid.2
    231 MLINKS+=shmat.2 shmdt.2
    232 MLINKS+=timer_settime.2 timer_gettime.2 timer_settime.2 timer_getoverrun.2
    233 MLINKS+=sigtimedwait.2 sigwaitinfo.2
    234 MLINKS+=sigtimedwait.2 sigwait.2
    235 MLINKS+=stat.2 fstat.2 stat.2 lstat.2
    236 MLINKS+=statvfs.2 fstatvfs.2
    237 MLINKS+=statvfs.2 statvfs1.2
    238 MLINKS+=statvfs.2 fstatvfs1.2
    239 MLINKS+=syscall.2 __syscall.2
    240 MLINKS+=truncate.2 ftruncate.2
    241 MLINKS+=utimes.2 futimes.2 utimes.2 lutimes.2
    242 MLINKS+=wait.2 wait3.2 wait.2 wait4.2 wait.2 waitpid.2
    243 MLINKS+=write.2 writev.2 write.2 pwrite.2 write.2 pwritev.2
    244