2bcdbf398a2f8a167c639a1317cbc2cd5002b138
[dragonfly.git] / lib / libc / Makefile
1 #       @(#)Makefile    8.2 (Berkeley) 2/3/94
2 # $FreeBSD: src/lib/libc/Makefile,v 1.24 1999/09/29 15:18:29 marcel Exp $
3 # $DragonFly: src/lib/libc/Makefile,v 1.14 2007/01/16 07:16:22 dillon Exp $
4 #
5 # All library objects contain rcsid strings by default; they may be
6 # excluded as a space-saving measure.  To produce a library that does
7 # not contain these strings, delete -DLIBC_RCS and -DSYSLIBC_RCS
8 # from CFLAGS below.  To remove these strings from just the system call
9 # stubs, remove just -DSYSLIBC_RCS from CFLAGS.
10 LIB=c
11 SHLIB_MAJOR= 7
12 CFLAGS+=-DLIBC_RCS -DSYSLIBC_RCS -I${.CURDIR}/include ${AINC}
13 AINC=   -I${.OBJDIR} -I${.CURDIR}/${MACHINE_ARCH}
14 CLEANFILES+=tags
15 PRECIOUSLIB=    yes
16
17 .if ${CCVER} != "clang" && ${CCVER} != "clangsvn"
18 DPADD+= ${LIBGCC}
19 LDADD+= -lgcc
20 .endif
21 LDFLAGS+= -nodefaultlibs
22
23 #
24 # Include make rules that are shared with libc_r.
25 #
26 .include "${.CURDIR}/Makefile.inc"
27
28 KQSRCS= adddi3.c anddi3.c ashldi3.c ashrdi3.c cmpdi2.c divdi3.c iordi3.c \
29         lshldi3.c lshrdi3.c moddi3.c muldi3.c negdi2.c notdi2.c qdivrem.c \
30         subdi3.c ucmpdi2.c udivdi3.c umoddi3.c xordi3.c
31 KSRCS=  bcmp.c ffs.c index.c mcount.c rindex.c strcat.c strcmp.c strcpy.c \
32         strlen.c strncpy.c
33
34 libkern: libkern.gen libkern.${MACHINE_ARCH}
35
36 libkern.gen: ${KQSRCS} ${KSRCS}
37         cp -p ${.CURDIR}/quad/quad.h ${.ALLSRC} ${DESTDIR}/sys/libkern
38
39 libkern.${MACHINE_ARCH}:: ${KMSRCS}
40 .if defined(KMSRCS) && !empty(KMSRCS)
41         cp -p ${.ALLSRC} ${DESTDIR}/sys/libkern/${MACHINE_ARCH}
42 .endif
43
44 .include <bsd.lib.mk>