Home | History | Annotate | Line # | Download | only in libkern
Makefile revision 1.60.2.8
      1  1.60.2.5   nathanw #	$NetBSD: Makefile,v 1.60.2.8 2002/12/11 06:46:23 thorpej Exp $
      2       1.1       cgd 
      3  1.60.2.7   nathanw LIB=		kern
      4  1.60.2.7   nathanw NOPIC=		# defined
      5  1.60.2.7   nathanw LLIBS=		# defined
      6       1.9   deraadt 
      7      1.59     bjh21 .include <bsd.own.mk>
      8      1.59     bjh21 
      9  1.60.2.8   thorpej .if defined(LIBKERN_ARCH) && !empty(LIBKERN_ARCH) && \
     10  1.60.2.8   thorpej     exists(${KERNDIR}/arch/${LIBKERN_ARCH})
     11  1.60.2.8   thorpej ARCHSUBDIR=     ${LIBKERN_ARCH}
     12  1.60.2.8   thorpej .elif defined(MACHINE_ARCH) && !empty(MACHINE_ARCH) && \
     13      1.60     enami     exists(${KERNDIR}/arch/${MACHINE_ARCH})
     14      1.59     bjh21 ARCHSUBDIR=     ${MACHINE_ARCH}
     15      1.60     enami .elif defined(MACHINE_CPU) && !empty(MACHINE_CPU) && \
     16      1.60     enami     exists(${KERNDIR}/arch/${MACHINE_CPU}) 
     17      1.59     bjh21 ARCHSUBDIR=     ${MACHINE_CPU}
     18      1.59     bjh21 .else
     19      1.59     bjh21 .BEGIN:
     20      1.60     enami 	@echo no ARCHSUBDIR for ${MACHINE_ARCH} nor ${MACHINE_CPU}
     21      1.60     enami 	@false
     22      1.59     bjh21 .endif
     23      1.59     bjh21 
     24      1.52  drochner M= ${KERNDIR}/arch/${ARCHSUBDIR}
     25      1.20  christos 
     26      1.32       cgd CPPFLAGS=	-I$M ${KERNCPPFLAGS} ${KERNMISCCPPFLAGS}
     27      1.29   mycroft 
     28      1.52  drochner .PATH.c: ${KERNDIR}
     29      1.29   mycroft .if exists ($M/Makefile.inc)
     30      1.52  drochner .PATH.c: $M
     31      1.52  drochner .PATH.S: $M
     32      1.29   mycroft .include "$M/Makefile.inc"
     33       1.1       cgd .endif
     34       1.5       cgd 
     35      1.19       cgd .if (${MACHINE_ARCH} != "alpha")
     36       1.5       cgd # Quad support
     37       1.5       cgd SRCS+=	adddi3.c anddi3.c ashldi3.c ashrdi3.c cmpdi2.c divdi3.c iordi3.c \
     38       1.5       cgd 	lshldi3.c lshrdi3.c moddi3.c muldi3.c negdi2.c notdi2.c qdivrem.c \
     39       1.5       cgd 	subdi3.c  ucmpdi2.c udivdi3.c umoddi3.c xordi3.c
     40      1.19       cgd .endif
     41       1.8       cgd 
     42       1.8       cgd # Other stuff
     43      1.55    deberg SRCS+=	__cmsg_alignbytes.c inet_addr.c intoa.c md4c.c md5c.c sha1.c pmatch.c
     44  1.60.2.4   nathanw SRCS+=	_que.c arc4random.c
     45      1.27    scottr 
     46  1.60.2.6   nathanw SRCS+=	strstr.c
     47  1.60.2.6   nathanw 
     48      1.27    scottr # Files to clean up
     49      1.27    scottr CLEANFILES+= lib${LIB}.o lib${LIB}.po
     50       1.5       cgd 
     51      1.38       cgd #
     52      1.38       cgd # Special rules for certain objects
     53      1.38       cgd #
     54      1.38       cgd 
     55      1.11       cgd # mcount cannot be compiled with profiling
     56      1.11       cgd mcount.po: mcount.o
     57      1.11       cgd 	cp mcount.o mcount.po
     58      1.40   mycroft 
     59      1.46     perry # XXX these stub builds should be cleaned up even further.
     60      1.46     perry 
     61      1.46     perry # if no machine specific memcpy(3), build one out of bcopy(3) based stub.
     62      1.40   mycroft .if empty(SRCS:Mmemcpy.S)
     63      1.46     perry SRCS+=	memcpy.c
     64      1.44     perry .endif
     65      1.44     perry 
     66      1.46     perry # if no machine specific memmove(3), build one out of bcopy(3) based stub.
     67      1.44     perry .if empty(SRCS:Mmemmove.S)
     68      1.46     perry SRCS+=	memmove.c
     69      1.40   mycroft .endif
     70      1.38       cgd 
     71      1.46     perry # if no machine specific strchr(3), build one out of index(3) based stub.
     72      1.38       cgd .if empty(SRCS:Mstrchr.S)
     73      1.46     perry SRCS+=	strchr.c
     74      1.38       cgd .endif
     75      1.38       cgd 
     76      1.46     perry # if no machine specific strrchr(3), build one out of rindex(3) based stub.
     77      1.38       cgd .if empty(SRCS:Mstrrchr.S)
     78      1.46     perry SRCS+=	strrchr.c
     79      1.38       cgd .endif
     80      1.36       cjs 
     81      1.48       chs POBJS+=	mcount.po
     82      1.43  drochner 
     83      1.36       cjs # only needed during build
     84      1.36       cjs libinstall::
     85       1.1       cgd 
     86  1.60.2.2   thorpej .undef DESTDIR
     87       1.1       cgd .include <bsd.lib.mk>
     88      1.23   mycroft 
     89      1.23   mycroft lib${LIB}.o:: ${OBJS}
     90      1.23   mycroft 	@echo building standard ${LIB} library
     91      1.23   mycroft 	@rm -f lib${LIB}.o
     92      1.37       gwr 	@${LD} -r -o lib${LIB}.o `NM=${NM} ${LORDER} ${OBJS} | ${TSORT}`
     93      1.23   mycroft 
     94      1.23   mycroft lib${LIB}.po:: ${POBJS}
     95      1.23   mycroft 	@echo building profiled ${LIB} library
     96      1.23   mycroft 	@rm -f lib${LIB}.po
     97      1.37       gwr 	@${LD} -r -o lib${LIB}.po `NM=${NM} ${LORDER} ${POBJS} | ${TSORT}`
     98  1.60.2.5   nathanw 
     99  1.60.2.5   nathanw showsources: ${SRCS}
    100  1.60.2.5   nathanw 	@echo ${.ALLSRC}
    101