1 1.1 cgd # @(#)Makefile.inc 5.6 (Berkeley) 3/5/91 2 1.1 cgd 3 1.1 cgd # string sources 4 1.1 cgd .PATH: ${.CURDIR}/${MACHINE}/string ${.CURDIR}/string 5 1.1 cgd 6 1.1 cgd SRCS+= memccpy.c strcasecmp.c strcoll.c strdup.c \ 7 1.1 cgd strftime.c strmode.c strtok.c strxfrm.c swab.c 8 1.1 cgd 9 1.1 cgd .if (${MACHINE} == "hp300") 10 1.1 cgd SRCS+= bcmp.s bcopy.s bzero.s ffs.s index.s memchr.c memcmp.c memset.c \ 11 1.1 cgd rindex.s strcat.c strcmp.s strcpy.s strcspn.c strlen.s \ 12 1.1 cgd strncat.c strncmp.s strncpy.s strpbrk.c strsep.c \ 13 1.1 cgd strspn.c strstr.c 14 1.1 cgd .elif (${MACHINE} == "i386") 15 1.4 jtc SRCS+= bcmp.c bcopy.s bzero.s ffs.s index.s memchr.c memcmp.c memset.c \ 16 1.4 jtc rindex.s strcat.s strcmp.s strcpy.s strcspn.c strlen.s \ 17 1.3 jtc strncat.c strncmp.s strncpy.c strpbrk.c strsep.c \ 18 1.1 cgd strspn.c strstr.c 19 1.6 mycroft SRCS+= memmove.s strchr.s strrchr.s 20 1.1 cgd .elif (${MACHINE} == "tahoe") 21 1.1 cgd SRCS+= bcmp.s bcopy.s bzero.s ffs.s index.c memchr.c memcmp.s memset.c \ 22 1.1 cgd rindex.c strcat.s strcmp.s strcpy.s strcspn.c strlen.s \ 23 1.1 cgd strncat.s strncmp.s strncpy.s strpbrk.c strsep.c \ 24 1.1 cgd strspn.c strstr.c 25 1.1 cgd SRCS+= memmove.s 26 1.1 cgd .elif (${MACHINE} == "vax") 27 1.1 cgd SRCS+= bcmp.s bcopy.s bzero.s ffs.s index.c memchr.s memcmp.s memset.s \ 28 1.1 cgd rindex.s strcat.s strcmp.s strcpy.s strcspn.s strlen.s \ 29 1.1 cgd strncat.s strncmp.s strncpy.s strpbrk.s strsep.s \ 30 1.1 cgd strspn.s strstr.s 31 1.1 cgd SRCS+= memmove.s strchr.s strrchr.s 32 1.1 cgd .endif 33 1.1 cgd 34 1.1 cgd # if no machine specific memmove(3), build one out of bcopy(3). 35 1.1 cgd .if empty(SRCS:Mmemmove.s) 36 1.1 cgd OBJS+= memmove.o 37 1.1 cgd memmove.o: bcopy.c 38 1.1 cgd ${CC} -DMEMMOVE ${CFLAGS} -c ${.ALLSRC} -o ${.TARGET} 39 1.1 cgd @${LD} -x -r ${.TARGET} 40 1.1 cgd @mv a.out ${.TARGET} 41 1.1 cgd 42 1.1 cgd memmove.po: bcopy.c 43 1.1 cgd ${CC} -DMEMMOVE ${CFLAGS} -c -p ${.ALLSRC} -o ${.TARGET} 44 1.1 cgd @${LD} -X -r ${.TARGET} 45 1.1 cgd @mv a.out ${.TARGET} 46 1.1 cgd .endif 47 1.1 cgd 48 1.1 cgd # if no machine specific memcpy(3), build one out of bcopy(3). 49 1.6 mycroft # if there is a machine specific memmove(3), we'll assume it aliases 50 1.6 mycroft # memcpy(3). 51 1.1 cgd .if empty(SRCS:Mmemcpy.s) 52 1.6 mycroft .if empty(SRCS:Mmemmove.s) 53 1.1 cgd OBJS+= memcpy.o 54 1.1 cgd memcpy.o: bcopy.c 55 1.1 cgd ${CC} -DMEMCOPY ${CFLAGS} -c ${.ALLSRC} -o ${.TARGET} 56 1.1 cgd @${LD} -x -r ${.TARGET} 57 1.1 cgd @mv a.out ${.TARGET} 58 1.1 cgd 59 1.1 cgd memcpy.po: bcopy.c 60 1.1 cgd ${CC} -DMEMCOPY ${CFLAGS} -c -p ${.ALLSRC} -o ${.TARGET} 61 1.1 cgd @${LD} -X -r ${.TARGET} 62 1.1 cgd @mv a.out ${.TARGET} 63 1.6 mycroft .endif 64 1.1 cgd .endif 65 1.1 cgd 66 1.1 cgd # if no machine specific strchr(3), build one out of index(3). 67 1.1 cgd .if empty(SRCS:Mstrchr.s) 68 1.1 cgd OBJS+= strchr.o 69 1.1 cgd strchr.o: index.c 70 1.1 cgd ${CC} -DSTRCHR ${CFLAGS} -c ${.ALLSRC} -o ${.TARGET} 71 1.1 cgd @${LD} -x -r ${.TARGET} 72 1.1 cgd @mv a.out ${.TARGET} 73 1.1 cgd 74 1.1 cgd strchr.po: index.c 75 1.1 cgd ${CC} -DSTRCHR ${CFLAGS} -c -p ${.ALLSRC} -o ${.TARGET} 76 1.1 cgd @${LD} -X -r ${.TARGET} 77 1.1 cgd @mv a.out ${.TARGET} 78 1.1 cgd .endif 79 1.1 cgd 80 1.1 cgd # if no machine specific strrchr(3), build one out of rindex(3). 81 1.1 cgd .if empty(SRCS:Mstrrchr.s) 82 1.1 cgd OBJS+= strrchr.o 83 1.1 cgd strrchr.o: rindex.c 84 1.1 cgd ${CC} -DSTRRCHR ${CFLAGS} -c ${.ALLSRC} -o ${.TARGET} 85 1.1 cgd @${LD} -x -r ${.TARGET} 86 1.1 cgd @mv a.out ${.TARGET} 87 1.1 cgd 88 1.1 cgd strrchr.po: rindex.c 89 1.1 cgd ${CC} -DSTRRCHR ${CFLAGS} -c -p ${.ALLSRC} -o ${.TARGET} 90 1.1 cgd @${LD} -X -r ${.TARGET} 91 1.1 cgd @mv a.out ${.TARGET} 92 1.1 cgd .endif 93 1.1 cgd 94 1.1 cgd MAN3+= bcmp.0 bcopy.0 bstring.0 bzero.0 ffs.0 index.0 memccpy.0 memchr.0 \ 95 1.1 cgd memcmp.0 memcpy.0 memmove.0 memset.0 rindex.0 strcasecmp.0 strcat.0 \ 96 1.1 cgd strchr.0 strcmp.0 strcoll.0 strcpy.0 strcspn.0 strftime.0 string.0 \ 97 1.1 cgd strlen.0 strmode.0 strdup.0 strpbrk.0 strrchr.0 strsep.0 strspn.0 \ 98 1.1 cgd strstr.0 strtok.0 strxfrm.0 swab.0 99 1.1 cgd 100 1.1 cgd MLINKS+=strcasecmp.3 strncasecmp.3 101 1.1 cgd MLINKS+=strcat.3 strncat.3 102 1.1 cgd MLINKS+=strcmp.3 strncmp.3 103 1.1 cgd MLINKS+=strcpy.3 strncpy.3 104