Home | History | Annotate | Line # | Download | only in libkern
Makefile.libkern revision 1.9.4.3
      1  1.9.4.2     rmind #	$NetBSD: Makefile.libkern,v 1.9.4.3 2011/04/21 01:42:12 rmind Exp $
      2      1.1     pooka 
      3      1.1     pooka # 
      4      1.1     pooka # Variable definitions for libkern.  
      5      1.1     pooka #
      6      1.1     pooka # Before including this, you _must_ set
      7      1.1     pooka #   KERNDIR: location of sys/lib/libkern
      8      1.1     pooka #
      9      1.1     pooka # You *may* set:
     10      1.1     pooka #   LIBKERN_ARCH: architecture subdir to be used
     11      1.1     pooka #   KERNCPPFLAGS: see Makefile.inc
     12  1.9.4.1     rmind #   KERNMISCCPPFLAGS: see Makefile.inc
     13      1.1     pooka #
     14      1.1     pooka 
     15      1.1     pooka .include <bsd.own.mk>
     16      1.1     pooka 
     17      1.1     pooka .if defined(LIBKERN_ARCH) && !empty(LIBKERN_ARCH) && \
     18      1.1     pooka     exists(${KERNDIR}/arch/${LIBKERN_ARCH})
     19      1.1     pooka ARCHSUBDIR=     ${LIBKERN_ARCH}
     20      1.1     pooka .elif defined(MACHINE_ARCH) && !empty(MACHINE_ARCH) && \
     21      1.1     pooka     exists(${KERNDIR}/arch/${MACHINE_ARCH})
     22      1.1     pooka ARCHSUBDIR=     ${MACHINE_ARCH}
     23      1.1     pooka .elif defined(MACHINE_CPU) && !empty(MACHINE_CPU) && \
     24      1.1     pooka     exists(${KERNDIR}/arch/${MACHINE_CPU})
     25      1.1     pooka ARCHSUBDIR=     ${MACHINE_CPU}
     26      1.1     pooka .endif
     27      1.1     pooka 
     28      1.1     pooka M= ${KERNDIR}/arch/${ARCHSUBDIR}
     29      1.1     pooka 
     30      1.1     pooka CPPFLAGS+=	-I$M ${KERNCPPFLAGS} ${KERNMISCCPPFLAGS}
     31      1.1     pooka 
     32      1.1     pooka .include "${.PARSEDIR}/../../../common/lib/libc/Makefile.inc"
     33      1.1     pooka .include "${.PARSEDIR}/../../../common/lib/libutil/Makefile.inc"
     34      1.1     pooka .include "${.PARSEDIR}/../../../common/lib/libprop/Makefile.inc"
     35  1.9.4.3     rmind .include "${.PARSEDIR}/../../../common/lib/libquota/Makefile.inc"
     36      1.1     pooka 
     37      1.1     pooka CPPFLAGS+=	-I${KERNDIR}/../../../common/include
     38      1.1     pooka 
     39      1.1     pooka .PATH.c: ${KERNDIR}
     40      1.1     pooka .if exists ($M/Makefile.inc)
     41      1.1     pooka .PATH.c: $M
     42      1.1     pooka .PATH.S: $M
     43      1.1     pooka .include "$M/Makefile.inc"
     44      1.1     pooka .endif
     45      1.1     pooka 
     46      1.7  uebayasi .if (${MACHINE_ARCH} != "alpha") && \
     47  1.9.4.2     rmind     (${MACHINE_ARCH} != "mips64eb" || !empty(CFLAGS:M-mabi=32)) && \
     48  1.9.4.2     rmind     (${MACHINE_ARCH} != "mips64el" || !empty(CFLAGS:M-mabi=32)) && \
     49      1.7  uebayasi     (${MACHINE_ARCH} != "powerpc64") && \
     50      1.7  uebayasi     (${MACHINE_ARCH} != "sparc64") && \
     51  1.9.4.2     rmind     (${MACHINE_ARCH} != "x86_64" || !empty(CFLAGS:M-m32))
     52      1.1     pooka # Quad support
     53      1.1     pooka SRCS+=	adddi3.c anddi3.c ashldi3.c ashrdi3.c cmpdi2.c divdi3.c iordi3.c \
     54      1.1     pooka 	lshldi3.c lshrdi3.c moddi3.c muldi3.c negdi2.c notdi2.c qdivrem.c \
     55      1.1     pooka 	subdi3.c  ucmpdi2.c udivdi3.c umoddi3.c xordi3.c
     56      1.1     pooka .endif
     57      1.1     pooka 
     58      1.1     pooka # Other stuff
     59      1.9     pooka SRCS+=	kern_assert.c __main.c
     60      1.1     pooka SRCS+=	__cmsg_alignbytes.c cpuset.c inet_addr.c intoa.c
     61      1.8  uebayasi .if empty(SRCS:Mbyte_swap_8.*)
     62      1.5       dsl SRCS+=	bswap64.c
     63      1.8  uebayasi .endif
     64      1.1     pooka SRCS+=	md4c.c md5c.c rmd160.c sha1.c sha2.c
     65      1.2    darran SRCS+=	pmatch.c arc4random.c bcd.c mcount.c mertwist.c crc32.c
     66      1.1     pooka 
     67      1.4       dsl SRCS+=	strsep.c strstr.c
     68      1.4       dsl SRCS+=	strlcpy.c strlcat.c
     69      1.5       dsl 
     70      1.5       dsl SRCS+=	imax.c imin.c lmax.c lmin.c max.c min.c ulmax.c ulmin.c
     71      1.4       dsl SRCS+=	memcpy.c memmove.c
     72      1.4       dsl SRCS+=	strchr.c strrchr.c
     73      1.8  uebayasi SRCS+=	memcmp.c
     74      1.8  uebayasi .if empty(SRCS:Mmemset2.*)
     75      1.8  uebayasi SRCS+=	memset.c 
     76      1.8  uebayasi .endif
     77      1.4       dsl SRCS+=	popcount32.c popcount64.c
     78      1.5       dsl SRCS+=	strtoul.c strtoll.c strtoull.c strtoumax.c
     79      1.5       dsl 
     80      1.5       dsl SRCS+=	scanc.c skpc.c
     81      1.5       dsl SRCS+=	random.c
     82      1.1     pooka 
     83      1.5       dsl SRCS+=	memchr.c
     84      1.5       dsl SRCS+=	strcat.c strcmp.c strcpy.c strlen.c
     85      1.5       dsl SRCS+=	strncmp.c strncpy.c
     86      1.5       dsl SRCS+=	strcasecmp.c strncasecmp.c
     87      1.1     pooka 
     88      1.1     pooka SRCS+=	xlat_mbr_fstype.c
     89      1.1     pooka 
     90      1.1     pooka SRCS+=	heapsort.c ptree.c rb.c
     91      1.1     pooka 
     92      1.1     pooka # Files to clean up
     93      1.1     pooka CLEANFILES+= lib${LIB}.o lib${LIB}.po
     94      1.1     pooka 
     95      1.4       dsl # Remove from SRCS the .c files for any .S files added by the MD makefiles,
     96      1.5       dsl # also remove from SRCS the .c files for the .c files in NO_SRCS.
     97      1.5       dsl # (Unlike libc, we don't worry about lint)
     98      1.4       dsl 
     99      1.4       dsl .for check_file in ${SRCS:M*.S} ${NO_SRCS}
    100      1.4       dsl unwanted_file := ${SRCS:M${check_file:.S=.c}}
    101      1.4       dsl .if "${unwanted_file}" != ""
    102      1.4       dsl SRCS := ${SRCS:N${unwanted_file}}
    103      1.1     pooka .endif
    104      1.4       dsl .endfor
    105