Merge from vendor branch CVS:
[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.7 2005/03/20 17:46:31 joerg 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= 4
12 SHLIB_MINOR= 0
13 CFLAGS+=-DLIBC_RCS -DSYSLIBC_RCS -I${.CURDIR}/include
14 AINC=   -I${.CURDIR}/${MACHINE_ARCH}
15 CLEANFILES+=tags
16 INSTALL_PIC_ARCHIVE=    yes
17 PRECIOUSLIB=    yes
18
19 #
20 # Don't bother hiding any syscalls (like libc_r does).
21 #
22 HIDDEN_SYSCALLS= _exit.o accept.o aio_suspend.o bind.o close.o connect.o \
23         dup.o dup2.o execve.o fchflags.o fchmod.o fchown.o fcntl.o \
24         flock.o fpathconf.o fstat.o fstatfs.o fsync.o getdirentries.o \
25         getpeername.o getsockname.o getsockopt.o ioctl.o \
26         kevent.o kqueue.o listen.o \
27         msync.o nanosleep.o nfssvc.o open.o poll.o read.o readv.o recvfrom.o \
28         recvmsg.o sched_yield.o select.o sendfile.o sendmsg.o sendto.o \
29         setsockopt.o shutdown.o sigaction.o sigaltstack.o \
30         sigpending.o sigprocmask.o sigreturn.o \
31         sigsuspend.o sigtimedwait.o sigwaitinfo.o socket.o \
32         socketpair.o wait4.o write.o writev.o
33
34 #
35 # Include make rules that are shared with libc_r.
36 #
37 .include "${.CURDIR}/Makefile.inc"
38
39 KQSRCS= 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
42 KSRCS=  bcmp.c ffs.c index.c mcount.c rindex.c strcat.c strcmp.c strcpy.c \
43         strlen.c strncpy.c
44
45 libkern: libkern.gen libkern.${MACHINE_ARCH}
46
47 libkern.gen: ${KQSRCS} ${KSRCS}
48         cp -p ${.CURDIR}/quad/quad.h ${.ALLSRC} ${DESTDIR}/sys/libkern
49
50 libkern.${MACHINE_ARCH}:: ${KMSRCS}
51 .if defined(KMSRCS) && !empty(KMSRCS)
52         cp -p ${.ALLSRC} ${DESTDIR}/sys/libkern/${MACHINE_ARCH}
53 .endif
54
55 .include <bsd.lib.mk>