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