Makefile revision 5789
1#	@(#)Makefile	8.2 (Berkeley) 2/3/94
2#
3# All library objects contain rcsid strings by default; they may be
4# excluded as a space-saving measure.  To produce a library that does
5# not contain these strings, delete -DLIBC_RCS and -DSYSLIBC_RCS
6# from CFLAGS below.  To remove these strings from just the system call
7# stubs, remove just -DSYSLIBC_RCS from CFLAGS.
8LIB=c
9CFLAGS+=-DLIBC_RCS -DSYSLIBC_RCS
10AINC=	-I${.CURDIR}/${MACHINE}
11CLEANFILES+=tags
12INSTALL_PIC_ARCHIVE=	yes
13PRECIOUSLIB=	yes
14
15.include "${.CURDIR}/db/Makefile.inc"
16.include "${.CURDIR}/compat-43/Makefile.inc"
17.include "${.CURDIR}/gen/Makefile.inc"
18.include "${.CURDIR}/gmon/Makefile.inc"
19.include "${.CURDIR}/locale/Makefile.inc"
20.include "${.CURDIR}/net/Makefile.inc"
21.include "${.CURDIR}/quad/Makefile.inc"
22.include "${.CURDIR}/regex/Makefile.inc"
23.include "${.CURDIR}/stdio/Makefile.inc"
24.include "${.CURDIR}/stdlib/Makefile.inc"
25.include "${.CURDIR}/stdtime/Makefile.inc"
26.include "${.CURDIR}/string/Makefile.inc"
27.include "${.CURDIR}/sys/Makefile.inc"
28.include "${.CURDIR}/rpc/Makefile.inc"
29.include "${.CURDIR}/xdr/Makefile.inc"
30.if !defined(NO_YP_LIBC)
31CFLAGS+= -DYP
32.include "${.CURDIR}/yp/Makefile.inc"
33.endif
34.include "${.CURDIR}/${MACHINE}/sys/Makefile.inc"
35
36KQSRCS=	adddi3.c anddi3.c ashldi3.c ashrdi3.c cmpdi2.c divdi3.c iordi3.c \
37	lshldi3.c lshrdi3.c moddi3.c muldi3.c negdi2.c notdi2.c qdivrem.c \
38	subdi3.c ucmpdi2.c udivdi3.c umoddi3.c xordi3.c
39KSRCS=	bcmp.c ffs.c index.c mcount.c rindex.c strcat.c strcmp.c strcpy.c \
40	strlen.c strncpy.c
41
42libkern: libkern.gen libkern.${MACHINE}
43
44libkern.gen: ${KQSRCS} ${KSRCS}
45	cp -p ${.CURDIR}/quad/quad.h ${.ALLSRC} /sys/libkern
46
47libkern.${MACHINE}:: ${KMSRCS}
48.if defined(KMSRCS) && !empty(KMSRCS)
49	cp -p ${.ALLSRC} /sys/libkern/${MACHINE}
50.endif
51
52#beforeinstall: tags
53#	install -c -o bin -g bin -m 444 tags /var/db/libc.tags
54
55tags: ${SRCS}
56	ctags ${.ALLSRC:M*.c}
57	egrep -o "^ENTRY(.*)|^FUNC(.*)|^SYSCALL(.*)" ${.ALLSRC:M*.s} | \
58	    sed "s;\([^:]*\):\([^(]*\)(\([^, )]*\)\(.*\);\3 \1 /^\2(\3\4$$/;" \
59	    >> tags; sort -o tags tags
60
61.include <bsd.lib.mk>
62