xref: /freebsd/lib/libc/sys/Makefile.inc (revision 5ebc7e6281887681c3a348a5a4c902e262ccd656)
1#	@(#)Makefile.inc	8.1 (Berkeley) 6/17/93
2
3# sys sources
4.PATH: ${.CURDIR}/${MACHINE}/sys ${.CURDIR}/sys
5
6# modules with non-default implementations on at least one architecture:
7SRCS+=	Ovfork.S brk.S cerror.S exect.S fork.S pipe.S ptrace.S reboot.S \
8	sbrk.S setlogin.S sigpending.S sigprocmask.S sigreturn.S \
9	sigsuspend.S syscall.S
10
11# glue to provide compatibility between GCC 1.X and 2.X
12SRCS+=	ftruncate.c lseek.c mmap.c truncate.c
13
14# modules with default implementations on all architectures:
15ASM=	accept.o access.o acct.o adjtime.o bind.o chdir.o chflags.o chmod.o \
16	chown.o chroot.o close.o connect.o dup.o dup2.o execve.o fchdir.o \
17	fchflags.o fchmod.o fchown.o fcntl.o flock.o fpathconf.o fstat.o \
18	fstatfs.o fsync.o getdirentries.o getdtablesize.o getegid.o \
19	geteuid.o getfh.o getfsstat.o getgid.o getgroups.o getitimer.o \
20	getpeername.o getpgrp.o getpid.o getppid.o getpriority.o \
21	getrlimit.o getrusage.o getsockname.o getsockopt.o gettimeofday.o \
22	getuid.o ioctl.o kill.o ktrace.o lfs_bmapv.o lfs_markv.o \
23	lfs_segclean.o lfs_segwait.o link.o listen.o lstat.o \
24	madvise.o mincore.o mkdir.o mkfifo.o mknod.o mlock.o mount.o \
25	mprotect.o msgsys.o msync.o munlock.o munmap.o nfssvc.o \
26	ntp_adjtime.o open.o pathconf.o profil.o quotactl.o read.o \
27	readlink.o readv.o recvfrom.o recvmsg.o rename.o revoke.o rmdir.o \
28	rtprio.o select.o semsys.o sendmsg.o sendto.o setegid.o seteuid.o setgid.o \
29	setgroups.o setitimer.o	setpgid.o setpriority.o	\
30	setregid.o setreuid.o setrlimit.o \
31	setsid.o setsockopt.o settimeofday.o setuid.o shmsys.o shutdown.o \
32	sigaction.o sigaltstack.o socket.o socketpair.o stat.o statfs.o \
33	swapon.o symlink.o sync.o sysarch.o umask.o unlink.o unmount.o \
34	utimes.o vadvise.o wait4.o write.o writev.o __syscall.o __sysctl.o
35
36PSEUDO=	_exit.o _getlogin.o
37
38OBJS+=	${ASM} ${PSEUDO}
39
40${ASM}: ${.CURDIR}/${MACHINE}/SYS.h /usr/include/sys/syscall.h
41	@${ECHO} creating ${.PREFIX}.o
42	@printf '#include "SYS.h"\nRSYSCALL(${.PREFIX})\n' | \
43	    ${CPP} ${CFLAGS:M-[ID]*} ${AINC} | ${AS} -o ${.PREFIX}.o
44	@${LD} -x -r ${.PREFIX}.o
45	@mv a.out ${.PREFIX}.o
46
47PASM=	${ASM:.o=.po}
48${PASM}: ${.CURDIR}/${MACHINE}/SYS.h /usr/include/sys/syscall.h
49	@${ECHO} creating ${.PREFIX}.po
50	@printf '#include "SYS.h"\nRSYSCALL(${.PREFIX})\n' | \
51	    ${CPP} -DPROF ${CFLAGS:M-[ID]*} ${AINC} | ${AS} -o ${.PREFIX}.po
52	@${LD} -x -r ${.PREFIX}.po
53	@mv a.out ${.PREFIX}.po
54
55SASM=	${ASM:.o=.so}
56${SASM}: ${.CURDIR}/${MACHINE}/SYS.h /usr/include/sys/syscall.h
57	@${ECHO} creating ${.PREFIX}.so
58	@printf '#include "SYS.h"\nRSYSCALL(${.PREFIX})\n' | \
59	    ${CPP} -DPIC ${CFLAGS:M-[ID]*} ${AINC} | ${AS} -k -o ${.PREFIX}.so
60
61${PSEUDO}: ${.CURDIR}/${MACHINE}/SYS.h /usr/include/sys/syscall.h
62	@${ECHO} creating ${.PREFIX}.o
63	@printf '#include "SYS.h"\nPSEUDO(${.PREFIX},${.PREFIX:S/_//})\n' | \
64	    ${CPP} ${CFLAGS:M-[ID]*} ${AINC} | ${AS} -o ${.PREFIX}.o
65	@${LD} -x -r ${.PREFIX}.o
66	@mv a.out ${.PREFIX}.o
67
68PPSEUDO=${PSEUDO:.o=.po}
69${PPSEUDO}: ${.CURDIR}/${MACHINE}/SYS.h /usr/include/sys/syscall.h
70	@${ECHO} creating ${.PREFIX}.po
71	@printf '#include "SYS.h"\nPSEUDO(${.PREFIX},${.PREFIX:S/_//})\n' | \
72	    ${CPP} -DPROF ${CFLAGS:M-[ID]*} ${AINC} | ${AS} -o ${.PREFIX}.po
73	@${LD} -x -r ${.PREFIX}.po
74	@mv a.out ${.PREFIX}.po
75
76SPSEUDO=${PSEUDO:.o=.so}
77${SPSEUDO}: ${.CURDIR}/${MACHINE}/SYS.h /usr/include/sys/syscall.h
78	@${ECHO} creating ${.PREFIX}.so
79	@printf '#include "SYS.h"\nPSEUDO(${.PREFIX},${.PREFIX:S/_//})\n' | \
80	    ${CPP} -DPIC ${CFLAGS:M-[ID]*} ${AINC} | ${AS} -k -o ${.PREFIX}.so
81
82MAN2+=	sys/accept.2 sys/access.2 sys/acct.2 sys/adjtime.2 sys/bind.2 \
83	sys/brk.2 sys/chdir.2 sys/chflags.2 sys/chmod.2 sys/chown.2 \
84	sys/chroot.2 sys/close.2 sys/connect.2 sys/dup.2 sys/execve.2 \
85	sys/_exit.2 sys/fcntl.2 sys/flock.2 sys/fork.2 sys/fsync.2 \
86	sys/getdirentries.2 sys/getdtablesize.2 sys/getfh.2 sys/getfsstat.2 \
87	sys/getgid.2 sys/getgroups.2 sys/getitimer.2 sys/getlogin.2 \
88	sys/getpeername.2 sys/getpgrp.2 sys/getpid.2 sys/getpriority.2 \
89	sys/getrlimit.2 sys/getrusage.2 sys/getsockname.2 sys/getsockopt.2 \
90	sys/gettimeofday.2 sys/getuid.2 sys/intro.2 sys/ioctl.2 sys/kill.2 \
91	sys/ktrace.2 sys/link.2 sys/listen.2 sys/lseek.2 sys/mkdir.2 \
92	sys/mkfifo.2 sys/mknod.2 sys/madvise.2 sys/mincore.2 sys/mlock.2 \
93	sys/mmap.2 sys/mount.2 sys/mprotect.2 sys/msync.2 sys/munmap.2 \
94	sys/nfssvc.2 sys/open.2 sys/pathconf.2 sys/pipe.2 sys/profil.2 \
95	sys/quotactl.2 sys/read.2 sys/readlink.2 sys/reboot.2 sys/recv.2 \
96	sys/rename.2 sys/revoke.2 sys/rmdir.2 sys/rtprio.2 sys/select.2 \
97	sys/send.2 sys/setgroups.2 \
98	sys/setpgid.2 sys/setregid.2 sys/setreuid.2 \
99	sys/setsid.2 sys/setuid.2 sys/shutdown.2 \
100	sys/sigaction.2 sys/sigpending.2 sys/sigprocmask.2 sys/sigreturn.2 \
101	sys/sigaltstack.2 sys/sigstack.2 sys/sigsuspend.2 sys/socket.2 \
102	sys/socketpair.2 sys/stat.2 sys/statfs.2 sys/swapon.2 sys/symlink.2 \
103	sys/sync.2 sys/syscall.2 sys/truncate.2 sys/umask.2 sys/unlink.2 \
104	sys/utimes.2 sys/vfork.2 sys/wait.2 sys/write.2
105
106# missing: ptrace.2
107
108MLINKS+=brk.2 sbrk.2
109MLINKS+=dup.2 dup2.2
110MLINKS+=chdir.2 fchdir.2
111MLINKS+=chflags.2 fchflags.2
112MLINKS+=chmod.2 fchmod.2
113MLINKS+=chown.2 fchown.2
114MLINKS+=getgid.2 getegid.2
115MLINKS+=getitimer.2 setitimer.2
116MLINKS+=getlogin.2 setlogin.2
117MLINKS+=getpid.2 getppid.2
118MLINKS+=getpriority.2 setpriority.2
119MLINKS+=getrlimit.2 setrlimit.2
120MLINKS+=getsockopt.2 setsockopt.2
121MLINKS+=gettimeofday.2 settimeofday.2
122MLINKS+=getuid.2 geteuid.2
123MLINKS+=intro.2 errno.2
124MLINKS+=lseek.2 seek.2
125MLINKS+=mlock.2 munlock.2
126MLINKS+=mount.2 unmount.2
127MLINKS+=pathconf.2 fpathconf.2
128MLINKS+=read.2 readv.2
129MLINKS+=recv.2 recvfrom.2 recv.2 recvmsg.2
130MLINKS+=send.2 sendmsg.2 send.2 sendto.2
131MLINKS+=setpgid.2 setpgrp.2
132MLINKS+=setuid.2 setegid.2 setuid.2 seteuid.2 setuid.2 setgid.2
133MLINKS+=stat.2 fstat.2 stat.2 lstat.2
134MLINKS+=statfs.2 fstatfs.2
135MLINKS+=syscall.2 __syscall.2
136MLINKS+=truncate.2 ftruncate.2
137MLINKS+=wait.2 wait3.2 wait.2 wait4.2 wait.2 waitpid.2
138MLINKS+=write.2 writev.2
139