Makefile revision 17573
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
9SHLIB_MAJOR= 3
10SHLIB_MINOR= 1
11CFLAGS+=-DLIBC_RCS -DSYSLIBC_RCS
12AINC=	-I${.CURDIR}/${MACHINE}
13CLEANFILES+=tags
14INSTALL_PIC_ARCHIVE=	yes
15PRECIOUSLIB=	yes
16
17.include "${.CURDIR}/db/Makefile.inc"
18.include "${.CURDIR}/compat-43/Makefile.inc"
19.include "${.CURDIR}/gen/Makefile.inc"
20.include "${.CURDIR}/gmon/Makefile.inc"
21.include "${.CURDIR}/locale/Makefile.inc"
22.include "${.CURDIR}/net/Makefile.inc"
23.include "${.CURDIR}/nls/Makefile.inc"
24.include "${.CURDIR}/quad/Makefile.inc"
25.include "${.CURDIR}/regex/Makefile.inc"
26.include "${.CURDIR}/stdio/Makefile.inc"
27.include "${.CURDIR}/stdlib/Makefile.inc"
28.include "${.CURDIR}/stdtime/Makefile.inc"
29.include "${.CURDIR}/string/Makefile.inc"
30.include "${.CURDIR}/sys/Makefile.inc"
31.include "${.CURDIR}/rpc/Makefile.inc"
32.include "${.CURDIR}/xdr/Makefile.inc"
33.if !defined(NO_YP_LIBC)
34CFLAGS+= -DYP
35.include "${.CURDIR}/yp/Makefile.inc"
36.endif
37.include "${.CURDIR}/${MACHINE}/sys/Makefile.inc"
38
39KQSRCS=	adddi3.c anddi3.c ashldi3.c ashrdi3.c cmpdi2.c divdi3.c iordi3.c \
40	lshldi3.c lshrdi3.c moddi3.c muldi3.c negdi2.c notdi2.c qdivrem.c \
41	subdi3.c ucmpdi2.c udivdi3.c umoddi3.c xordi3.c
42KSRCS=	bcmp.c ffs.c index.c mcount.c rindex.c strcat.c strcmp.c strcpy.c \
43	strlen.c strncpy.c
44
45libkern: libkern.gen libkern.${MACHINE}
46
47libkern.gen: ${KQSRCS} ${KSRCS}
48	cp -p ${.CURDIR}/quad/quad.h ${.ALLSRC} /sys/libkern
49
50libkern.${MACHINE}:: ${KMSRCS}
51.if defined(KMSRCS) && !empty(KMSRCS)
52	cp -p ${.ALLSRC} /sys/libkern/${MACHINE}
53.endif
54
55#beforeinstall: tags
56#	${INSTALL} ${COPY} -o bin -g bin -m 444 tags /var/db/libc.tags
57
58tags: ${SRCS}
59	ctags ${.ALLSRC:M*.c}
60	egrep -o "^ENTRY(.*)|^FUNC(.*)|^SYSCALL(.*)" ${.ALLSRC:M*.s} | \
61	    sed "s;\([^:]*\):\([^(]*\)(\([^, )]*\)\(.*\);\3 \1 /^\2(\3\4$$/;" \
62	    >> tags; sort -o tags tags
63
64.include <bsd.lib.mk>
65