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 \
24 sigaction.c sigtramp.c crt_externs.c \
25 sem_open.c sem_unlink.c shm_open.c shm_unlink.c fix-3375657.c \
26 accessx_np.c chmodx_np.c getsgroups_np.c \
27 getwgroups_np.c openx_np.c mmap.c \
28 pthread_getuid_np.c pthread_setuid_np.c setsgroups_np.c \
29 setwgroups_np.c statx_np.c umaskx_np.c \
30 semctl.c shmctl.c msgctl.c \
31 mprotect.c msync.c munmap.c other_libc_init.c
33 .for _src in sem_open.c sem_unlink.c shm_open.c shm_unlink.c fix-3375657.c
34 CFLAGS-${_src} += -D__APPLE_PR3375657_HACK__
37 UNIX03SRCS += mmap.c mprotect.c msgctl.c msync.c munmap.c semctl.c shmctl.c
39 # Add machine dependent asm sources:
42 # Look though the complete list of syscalls (MIASM) for names that are
43 # not defined with machine dependent implementations (MDASM) and are
44 # not declared for no generation of default code (NOASM). Add each
45 # syscall that satisfies these conditions to the ASM list.
47 .if (${MDASM:R:M${_asm:R}} == "")
48 .if (${NOASM:R:M${_asm:R}} == "")
54 OBJS+= ${ASM} ${PSEUDO}
58 SPSEUDO= ${PSEUDO:S/.o/.S/}
60 SRCS+= ${SASM} ${SPSEUDO}
63 CLEANFILES+= ${SASM} ${SPSEUDO}
66 printf '#include "SYS.h"\nRSYSCALL(${.PREFIX})\n' > ${.TARGET}
69 printf '#include "SYS.h"\nPSEUDO(${.PREFIX:S/_//})\n' \
73 MAN2+= pthread_kill.2 pthread_sigmask.2 \
74 sem_close.2 sem_open.2 sem_post.2 sem_trywait.2 \
75 sem_unlink.2 sem_wait.2 shm_open.2 shm_unlink.2 \
76 sigwait.2 getdtablesize.2 setreuid.2 setregid.2 \
78 MAN3+= atomic.3 barrier.3 spinlock.3
79 MLINKS+= atomic.3 OSAtomicAdd32.3
80 MLINKS+= atomic.3 OSAtomicIncrement32.3
81 MLINKS+= atomic.3 OSAtomicDecrement32.3
82 MLINKS+= atomic.3 OSAtomicOr32.3
83 MLINKS+= atomic.3 OSAtomicAnd32.3
84 MLINKS+= atomic.3 OSAtomicXor32.3
85 MLINKS+= atomic.3 OSAtomicAdd64.3
86 MLINKS+= atomic.3 OSAtomicIncrement64.3
87 MLINKS+= atomic.3 OSAtomicDecrement64.3
88 MLINKS+= atomic.3 OSAtomicCompareAndSwap32.3
89 MLINKS+= atomic.3 OSAtomicCompareAndSwap64.3
90 MLINKS+= atomic.3 OSAtomicTestAndSet.3
91 MLINKS+= atomic.3 OSAtomicTestAndClear.3
92 MLINKS+= barrier.3 OSMemoryBarrier.3
93 MLINKS+= spinlock.3 OSSpinLockTry.3
94 MLINKS+= spinlock.3 OSSpinLockLock.3
95 MLINKS+= spinlock.3 OSSpinLockUnlock.3
97 #MAN+= _exit.2 accept.2 access.2 acct.2 adjtime.2 \
98 # aio_cancel.2 aio_error.2 aio_read.2 aio_return.2 \
99 # aio_suspend.2 aio_waitcomplete.2 aio_write.2 \
100 # bind.2 brk.2 chdir.2 chflags.2 \
101 # chmod.2 chown.2 chroot.2 clock_gettime.2 close.2 \
102 # connect.2 dup.2 execve.2 extattr_get_file.2 \
103 # fcntl.2 fhopen.2 flock.2 fork.2 fsync.2 \
104 # getdirentries.2 getdtablesize.2 \
105 # getfh.2 getfsstat.2 getgid.2 getgroups.2 getitimer.2 getlogin.2 \
106 # getpeername.2 getpgrp.2 getpid.2 getpriority.2 getrlimit.2 \
107 # getrusage.2 getsid.2 getsockname.2 \
108 # getsockopt.2 gettimeofday.2 getuid.2 \
109 # intro.2 ioctl.2 issetugid.2 jail.2 kill.2 \
110 # kldfind.2 kldfirstmod.2 kldload.2 kldnext.2 kldstat.2 kldsym.2 \
111 # kldunload.2 ktrace.2 kqueue.2 link.2 listen.2 lseek.2 \
112 # madvise.2 mincore.2 minherit.2 mkdir.2 mkfifo.2 mknod.2 mlock.2 mmap.2 \
113 # modfind.2 modnext.2 modstat.2 \
114 # mount.2 mprotect.2 msync.2 munmap.2 nanosleep.2 \
115 # nfssvc.2 open.2 pathconf.2 pipe.2 poll.2 profil.2 ptrace.2 quotactl.2 \
116 # read.2 readlink.2 reboot.2 recv.2 rename.2 revoke.2 rfork.2 rmdir.2 \
117 # rtprio.2 select.2 semctl.2 semget.2 semop.2 send.2 sendfile.2 \
118 # setgroups.2 setpgid.2 setregid.2 setresuid.2 setreuid.2 setsid.2 \
119 # setuid.2 shmat.2 shmctl.2 shmget.2 shutdown.2 \
120 # sigaction.2 sigaltstack.2 sigpending.2 sigprocmask.2 sigreturn.2 \
121 # sigstack.2 sigsuspend.2 socket.2 socketpair.2 stat.2 statfs.2 \
122 # swapon.2 symlink.2 sync.2 sysarch.2 syscall.2 \
123 # truncate.2 umask.2 undelete.2 \
124 # unlink.2 utimes.2 vfork.2 wait.2 write.2
125 #.if !defined(NO_P1003_1B)
126 #MAN+= sched_get_priority_max.2 sched_setparam.2 \
127 # sched_setscheduler.2 sched_yield.2
130 #MLINKS+=access.2 eaccess.2
131 #MLINKS+=brk.2 sbrk.2
132 #MLINKS+=chdir.2 fchdir.2
133 #MLINKS+=chflags.2 fchflags.2
134 #MLINKS+=chmod.2 fchmod.2 chmod.2 lchmod.2
135 #MLINKS+=chown.2 fchown.2 chown.2 lchown.2
136 #MLINKS+=clock_gettime.2 clock_getres.2 clock_gettime.2 clock_settime.2
137 #MLINKS+=dup.2 dup2.2
138 #MLINKS+=extattr_get_file.2 extattr_set_file.2 \
139 # extattr_get_file.2 extattr_delete_file.2 \
140 # extattr_get_file.2 extattr_get_fd.2 \
141 # extattr_get_file.2 extattr_set_fd.2 \
142 # extattr_get_file.2 extattr_delete_fd.2 \
143 # extattr_get_file.2 extattr.2
144 #MLINKS+=fhopen.2 fhstat.2 fhopen.2 fhstatfs.2
145 #MLINKS+=getdirentries.2 getdents.2
146 #MLINKS+=getgid.2 getegid.2
147 #MLINKS+=getitimer.2 setitimer.2
148 #MLINKS+=getlogin.2 getlogin_r.3
149 #MLINKS+=getlogin.2 setlogin.2
150 #MLINKS+=getpgrp.2 getpgid.2
151 #MLINKS+=getpid.2 getppid.2
152 #MLINKS+=getpriority.2 setpriority.2
153 #MLINKS+=getrlimit.2 setrlimit.2
154 #MLINKS+=getsockopt.2 setsockopt.2
155 #MLINKS+=gettimeofday.2 settimeofday.2
156 #MLINKS+=getuid.2 geteuid.2
157 #MLINKS+=intro.2 errno.2
158 #MLINKS+=kqueue.2 kevent.2
159 #MLINKS+=mlock.2 munlock.2
160 #MLINKS+=modnext.2 modfnext.2
161 #MLINKS+=mount.2 unmount.2
162 #MLINKS+=pathconf.2 fpathconf.2
163 #MLINKS+=read.2 pread.2 read.2 readv.2
164 #MLINKS+=recv.2 recvfrom.2 recv.2 recvmsg.2
165 #MLINKS+=send.2 sendmsg.2 send.2 sendto.2
166 #MLINKS+=setpgid.2 setpgrp.2
167 #MLINKS+=setresuid.2 setresgid.2 setresuid.2 getresuid.2 setresuid.2 getresgid.2
168 #MLINKS+=setuid.2 setegid.2 setuid.2 seteuid.2 setuid.2 setgid.2
169 #MLINKS+=shmat.2 shmdt.2
170 #MLINKS+=stat.2 fstat.2 stat.2 lstat.2
171 #MLINKS+=statfs.2 fstatfs.2
172 #MLINKS+=syscall.2 __syscall.2
173 #MLINKS+=truncate.2 ftruncate.2
174 #MLINKS+=utimes.2 futimes.2 utimes.2 lutimes.2
175 #MLINKS+=wait.2 wait3.2 wait.2 wait4.2 wait.2 waitpid.2
176 #MLINKS+=write.2 pwrite.2 write.2 writev.2
177 #.if !defined(NO_P1003_1B)
178 #MLINKS+=sched_get_priority_max.2 sched_get_priority_min.2 \
179 # sched_get_priority_max.2 sched_rr_get_interval.2
180 #MLINKS+=sched_setparam.2 sched_getparam.2
181 #MLINKS+=sched_setscheduler.2 sched_getscheduler.2