Home | History | Annotate | Line # | Download | only in libkern
Makefile revision 1.81
      1  1.81   tsutsui #	$NetBSD: Makefile,v 1.81 2006/08/28 13:34:18 tsutsui Exp $
      2   1.1       cgd 
      3  1.68     perry LIB=		kern
      4  1.68     perry NOPIC=		# defined
      5  1.68     perry LLIBS=		# defined
      6   1.9   deraadt 
      7  1.59     bjh21 .include <bsd.own.mk>
      8  1.59     bjh21 
      9  1.69      fvdl .if defined(LIBKERN_ARCH) && !empty(LIBKERN_ARCH) && \
     10  1.69      fvdl     exists(${KERNDIR}/arch/${LIBKERN_ARCH})
     11  1.69      fvdl ARCHSUBDIR=     ${LIBKERN_ARCH}
     12  1.69      fvdl .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.72     perry     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.77  christos .include "${.PARSEDIR}/../../../common/lib/libc/Makefile.inc"
     29  1.80   thorpej .include "${.PARSEDIR}/../../../common/lib/libprop/Makefile.inc"
     30  1.77  christos 
     31  1.81   tsutsui CPPFLAGS+=	-I${KERNDIR}/../../../common/include
     32  1.81   tsutsui 
     33  1.52  drochner .PATH.c: ${KERNDIR}
     34  1.29   mycroft .if exists ($M/Makefile.inc)
     35  1.52  drochner .PATH.c: $M
     36  1.52  drochner .PATH.S: $M
     37  1.29   mycroft .include "$M/Makefile.inc"
     38   1.1       cgd .endif
     39   1.5       cgd 
     40  1.19       cgd .if (${MACHINE_ARCH} != "alpha")
     41   1.5       cgd # Quad support
     42   1.5       cgd SRCS+=	adddi3.c anddi3.c ashldi3.c ashrdi3.c cmpdi2.c divdi3.c iordi3.c \
     43   1.5       cgd 	lshldi3.c lshrdi3.c moddi3.c muldi3.c negdi2.c notdi2.c qdivrem.c \
     44   1.5       cgd 	subdi3.c  ucmpdi2.c udivdi3.c umoddi3.c xordi3.c
     45  1.19       cgd .endif
     46   1.8       cgd 
     47   1.8       cgd # Other stuff
     48  1.55    deberg SRCS+=	__cmsg_alignbytes.c inet_addr.c intoa.c md4c.c md5c.c sha1.c pmatch.c
     49  1.78    kleink SRCS+=	_que.c arc4random.c bcd.c mcount.c
     50  1.66  junyoung 
     51  1.70    itojun SRCS+=	strstr.c strlcpy.c strlcat.c
     52  1.71       dsl 
     53  1.79   thorpej SRCS+=	strtoumax.c
     54  1.79   thorpej 
     55  1.71       dsl SRCS+=	xlat_mbr_fstype.c
     56  1.27    scottr 
     57  1.27    scottr # Files to clean up
     58  1.27    scottr CLEANFILES+= lib${LIB}.o lib${LIB}.po
     59   1.5       cgd 
     60  1.46     perry # XXX these stub builds should be cleaned up even further.
     61  1.46     perry 
     62  1.46     perry # if no machine specific memcpy(3), build one out of bcopy(3) based stub.
     63  1.40   mycroft .if empty(SRCS:Mmemcpy.S)
     64  1.46     perry SRCS+=	memcpy.c
     65  1.44     perry .endif
     66  1.44     perry 
     67  1.46     perry # if no machine specific memmove(3), build one out of bcopy(3) based stub.
     68  1.44     perry .if empty(SRCS:Mmemmove.S)
     69  1.46     perry SRCS+=	memmove.c
     70  1.40   mycroft .endif
     71  1.38       cgd 
     72  1.46     perry # if no machine specific strchr(3), build one out of index(3) based stub.
     73  1.38       cgd .if empty(SRCS:Mstrchr.S)
     74  1.46     perry SRCS+=	strchr.c
     75  1.38       cgd .endif
     76  1.38       cgd 
     77  1.46     perry # if no machine specific strrchr(3), build one out of rindex(3) based stub.
     78  1.38       cgd .if empty(SRCS:Mstrrchr.S)
     79  1.46     perry SRCS+=	strrchr.c
     80  1.38       cgd .endif
     81  1.36       cjs 
     82  1.36       cjs # only needed during build
     83  1.36       cjs libinstall::
     84   1.1       cgd 
     85  1.62        tv .undef DESTDIR
     86   1.1       cgd .include <bsd.lib.mk>
     87  1.23   mycroft 
     88  1.23   mycroft lib${LIB}.o:: ${OBJS}
     89  1.23   mycroft 	@echo building standard ${LIB} library
     90  1.23   mycroft 	@rm -f lib${LIB}.o
     91  1.37       gwr 	@${LD} -r -o lib${LIB}.o `NM=${NM} ${LORDER} ${OBJS} | ${TSORT}`
     92  1.23   mycroft 
     93  1.23   mycroft lib${LIB}.po:: ${POBJS}
     94  1.23   mycroft 	@echo building profiled ${LIB} library
     95  1.23   mycroft 	@rm -f lib${LIB}.po
     96  1.37       gwr 	@${LD} -r -o lib${LIB}.po `NM=${NM} ${LORDER} ${POBJS} | ${TSORT}`
     97  1.65  wrstuden 
     98  1.65  wrstuden showsources: ${SRCS}
     99  1.65  wrstuden 	@echo ${.ALLSRC}
    100