1 # @(#)Makefile.inc 8.3 (Berkeley) 10/24/94
2 # $FreeBSD: src/lsys/Makefile.inc,v 1.91 2001/09/21 21:35:22 rwatson Exp $
4 # Include machine dependent definitions.
6 # MDASM names override the default syscall names in MIASM.
7 # NOASM will prevent the default syscall code from being generated.
9 .if exists(${.CURDIR}/${MACHINE_ARCH}/sys/Makefile.inc)
10 .include "${.CURDIR}/${MACHINE_ARCH}/sys/Makefile.inc"
16 # Include the generated makefile containing the *complete* list
17 # of syscall names in MIASM.
18 #.include "${.CURDIR}/../../sys/sys/syscall.mk"
20 # Sources common to both syscall interfaces:
22 # 3375657: patches for sem_open() sem_unlink() shm_open() shm_unlink()
23 MISRCS+= errno.c gettimeofday.c sigcatch.c sigsuspend.c getdtablesize.c \
24 sigaction.c sigtramp.c crt_externs.c \
25 sem_open.c sem_unlink.c shm_open.c shm_unlink.c fix-3375657.c
27 .for _src in sem_open.c sem_unlink.c shm_open.c shm_unlink.c fix-3375657.c
28 CFLAGS-${_src} += -D__APPLE_PR3375657_HACK__
31 # Add machine dependent asm sources:
34 # Look though the complete list of syscalls (MIASM) for names that are
35 # not defined with machine dependent implementations (MDASM) and are
36 # not declared for no generation of default code (NOASM). Add each
37 # syscall that satisfies these conditions to the ASM list.
39 .if (${MDASM:R:M${_asm:R}} == "")
40 .if (${NOASM:R:M${_asm:R}} == "")
46 OBJS+= ${ASM} ${PSEUDO}
50 SPSEUDO= ${PSEUDO:S/.o/.S/}
52 SRCS+= ${SASM} ${SPSEUDO}
55 CLEANFILES+= ${SASM} ${SPSEUDO}
58 printf '#include "SYS.h"\nRSYSCALL(${.PREFIX})\n' > ${.TARGET}
61 printf '#include "SYS.h"\nPSEUDO(${.PREFIX:S/_//})\n' \
65 MAN2+= pthread_kill.2 pthread_sigmask.2 \
66 sem_close.2 sem_open.2 sem_post.2 sem_trywait.2 \
67 sem_unlink.2 sem_wait.2 shm_open.2 shm_unlink.2 \
68 sigwait.2 getdtablesize.2 setreuid.2 setregid.2 \
70 MAN3+= atomic.3 atomicqueue.3 barrier.3 spinlock.3
71 MLINKS+= atomic.3 OSAtomicAdd32.3
72 MLINKS+= atomic.3 OSAtomicIncrement32.3
73 MLINKS+= atomic.3 OSAtomicDecrement32.3
74 MLINKS+= atomic.3 OSAtomicOr32.3
75 MLINKS+= atomic.3 OSAtomicAnd32.3
76 MLINKS+= atomic.3 OSAtomicXor32.3
77 MLINKS+= atomic.3 OSAtomicAdd64.3
78 MLINKS+= atomic.3 OSAtomicIncrement64.3
79 MLINKS+= atomic.3 OSAtomicDecrement64.3
80 MLINKS+= atomic.3 OSAtomicCompareAndSwap32.3
81 MLINKS+= atomic.3 OSAtomicCompareAndSwap64.3
82 MLINKS+= atomic.3 OSAtomicTestAndSet.3
83 MLINKS+= atomic.3 OSAtomicTestAndClear.3
84 MLINKS+= atomicqueue.3 OSAtomicDequeue.3
85 MLINKS+= atomicqueue.3 OSAtomicEnqueue.3
86 MLINKS+= barrier.3 OSMemoryBarrier.3
87 MLINKS+= spinlock.3 OSSpinLockTry.3
88 MLINKS+= spinlock.3 OSSpinLockLock.3
89 MLINKS+= spinlock.3 OSSpinLockUnlock.3
91 #MAN+= _exit.2 accept.2 access.2 acct.2 adjtime.2 \
92 # aio_cancel.2 aio_error.2 aio_read.2 aio_return.2 \
93 # aio_suspend.2 aio_waitcomplete.2 aio_write.2 \
94 # bind.2 brk.2 chdir.2 chflags.2 \
95 # chmod.2 chown.2 chroot.2 clock_gettime.2 close.2 \
96 # connect.2 dup.2 execve.2 extattr_get_file.2 \
97 # fcntl.2 fhopen.2 flock.2 fork.2 fsync.2 \
98 # getdirentries.2 getdtablesize.2 \
99 # getfh.2 getfsstat.2 getgid.2 getgroups.2 getitimer.2 getlogin.2 \
100 # getpeername.2 getpgrp.2 getpid.2 getpriority.2 getrlimit.2 \
101 # getrusage.2 getsid.2 getsockname.2 \
102 # getsockopt.2 gettimeofday.2 getuid.2 \
103 # intro.2 ioctl.2 issetugid.2 jail.2 kill.2 \
104 # kldfind.2 kldfirstmod.2 kldload.2 kldnext.2 kldstat.2 kldsym.2 \
105 # kldunload.2 ktrace.2 kqueue.2 link.2 listen.2 lseek.2 \
106 # madvise.2 mincore.2 minherit.2 mkdir.2 mkfifo.2 mknod.2 mlock.2 mmap.2 \
107 # modfind.2 modnext.2 modstat.2 \
108 # mount.2 mprotect.2 msync.2 munmap.2 nanosleep.2 \
109 # nfssvc.2 open.2 pathconf.2 pipe.2 poll.2 profil.2 ptrace.2 quotactl.2 \
110 # read.2 readlink.2 reboot.2 recv.2 rename.2 revoke.2 rfork.2 rmdir.2 \
111 # rtprio.2 select.2 semctl.2 semget.2 semop.2 send.2 sendfile.2 \
112 # setgroups.2 setpgid.2 setregid.2 setresuid.2 setreuid.2 setsid.2 \
113 # setuid.2 shmat.2 shmctl.2 shmget.2 shutdown.2 \
114 # sigaction.2 sigaltstack.2 sigpending.2 sigprocmask.2 sigreturn.2 \
115 # sigstack.2 sigsuspend.2 socket.2 socketpair.2 stat.2 statfs.2 \
116 # swapon.2 symlink.2 sync.2 sysarch.2 syscall.2 \
117 # truncate.2 umask.2 undelete.2 \
118 # unlink.2 utimes.2 vfork.2 wait.2 write.2
119 #.if !defined(NO_P1003_1B)
120 #MAN+= sched_get_priority_max.2 sched_setparam.2 \
121 # sched_setscheduler.2 sched_yield.2
124 #MLINKS+=access.2 eaccess.2
125 #MLINKS+=brk.2 sbrk.2
126 #MLINKS+=chdir.2 fchdir.2
127 #MLINKS+=chflags.2 fchflags.2
128 #MLINKS+=chmod.2 fchmod.2 chmod.2 lchmod.2
129 #MLINKS+=chown.2 fchown.2 chown.2 lchown.2
130 #MLINKS+=clock_gettime.2 clock_getres.2 clock_gettime.2 clock_settime.2
131 #MLINKS+=dup.2 dup2.2
132 #MLINKS+=extattr_get_file.2 extattr_set_file.2 \
133 # extattr_get_file.2 extattr_delete_file.2 \
134 # extattr_get_file.2 extattr_get_fd.2 \
135 # extattr_get_file.2 extattr_set_fd.2 \
136 # extattr_get_file.2 extattr_delete_fd.2 \
137 # extattr_get_file.2 extattr.2
138 #MLINKS+=fhopen.2 fhstat.2 fhopen.2 fhstatfs.2
139 #MLINKS+=getdirentries.2 getdents.2
140 #MLINKS+=getgid.2 getegid.2
141 #MLINKS+=getitimer.2 setitimer.2
142 #MLINKS+=getlogin.2 getlogin_r.3
143 #MLINKS+=getlogin.2 setlogin.2
144 #MLINKS+=getpgrp.2 getpgid.2
145 #MLINKS+=getpid.2 getppid.2
146 #MLINKS+=getpriority.2 setpriority.2
147 #MLINKS+=getrlimit.2 setrlimit.2
148 #MLINKS+=getsockopt.2 setsockopt.2
149 #MLINKS+=gettimeofday.2 settimeofday.2
150 #MLINKS+=getuid.2 geteuid.2
151 #MLINKS+=intro.2 errno.2
152 #MLINKS+=kqueue.2 kevent.2
153 #MLINKS+=mlock.2 munlock.2
154 #MLINKS+=modnext.2 modfnext.2
155 #MLINKS+=mount.2 unmount.2
156 #MLINKS+=pathconf.2 fpathconf.2
157 #MLINKS+=read.2 pread.2 read.2 readv.2
158 #MLINKS+=recv.2 recvfrom.2 recv.2 recvmsg.2
159 #MLINKS+=send.2 sendmsg.2 send.2 sendto.2
160 #MLINKS+=setpgid.2 setpgrp.2
161 #MLINKS+=setresuid.2 setresgid.2 setresuid.2 getresuid.2 setresuid.2 getresgid.2
162 #MLINKS+=setuid.2 setegid.2 setuid.2 seteuid.2 setuid.2 setgid.2
163 #MLINKS+=shmat.2 shmdt.2
164 #MLINKS+=stat.2 fstat.2 stat.2 lstat.2
165 #MLINKS+=statfs.2 fstatfs.2
166 #MLINKS+=syscall.2 __syscall.2
167 #MLINKS+=truncate.2 ftruncate.2
168 #MLINKS+=utimes.2 futimes.2 utimes.2 lutimes.2
169 #MLINKS+=wait.2 wait3.2 wait.2 wait4.2 wait.2 waitpid.2
170 #MLINKS+=write.2 pwrite.2 write.2 writev.2
171 #.if !defined(NO_P1003_1B)
172 #MLINKS+=sched_get_priority_max.2 sched_get_priority_min.2 \
173 # sched_get_priority_max.2 sched_rr_get_interval.2
174 #MLINKS+=sched_setparam.2 sched_getparam.2
175 #MLINKS+=sched_setscheduler.2 sched_getscheduler.2