158f0484fSRodney W. Grimes# @(#)Makefile.inc 8.1 (Berkeley) 6/4/93 27f3dea24SPeter Wemm# $FreeBSD$ 358f0484fSRodney W. Grimes 4*016e46fdSGleb Popov.if ${MK_MACHDEP_OPTIMIZATIONS} != "no" 5*016e46fdSGleb Popov.PATH: ${LIBC_SRCTOP}/${LIBC_ARCH}/string 6*016e46fdSGleb Popov.endif 7*016e46fdSGleb Popov.PATH: ${LIBC_SRCTOP}/string 8d0fd0203SEnji Cooper.PATH: ${SRCTOP}/sys/libkern 958f0484fSRodney W. Grimes 108876613dSMarcel MoolenaarCFLAGS+= -I${LIBC_SRCTOP}/locale 11ae80efa5SBruce Evans 1258f0484fSRodney W. Grimes# machine-independent string sources 1378b59024SXin LIMISRCS+=bcmp.c bcopy.c bzero.c explicit_bzero.c \ 1478b59024SXin LI ffs.c ffsl.c ffsll.c fls.c flsl.c flsll.c \ 1546632c18SEd Schouten memccpy.c memchr.c memrchr.c memcmp.c \ 16ee37f64cSKonstantin Belousov memcpy.c memmem.c memmove.c mempcpy.c memset.c memset_s.c \ 1769099ba2SDavid Schultz stpcpy.c stpncpy.c strcasecmp.c \ 18d902844bSNiclas Zeising strcat.c strcasestr.c strchr.c strchrnul.c strcmp.c strcoll.c strcpy.c\ 19d902844bSNiclas Zeising strcspn.c strdup.c strerror.c strlcat.c strlcpy.c strlen.c strmode.c \ 20d902844bSNiclas Zeising strncat.c strncmp.c strncpy.c strndup.c strnlen.c strnstr.c \ 21a41df9e3SWarner Losh strpbrk.c strrchr.c strsep.c strsignal.c strspn.c strstr.c strtok.c \ 2205c9a015SAymeric Wibo strverscmp.c strxfrm.c swab.c \ 23854023f0SXin LI timingsafe_bcmp.c \ 24854023f0SXin LI timingsafe_memcmp.c \ 25854023f0SXin LI wcpcpy.c wcpncpy.c wcscasecmp.c wcscat.c \ 2669099ba2SDavid Schultz wcschr.c wcscmp.c wcscoll.c wcscpy.c wcscspn.c wcsdup.c \ 2769099ba2SDavid Schultz wcslcat.c wcslcpy.c wcslen.c wcsncasecmp.c wcsncat.c wcsncmp.c \ 2869099ba2SDavid Schultz wcsncpy.c wcsnlen.c wcspbrk.c \ 29fd4f1dd9STim J. Robbins wcsrchr.c wcsspn.c wcsstr.c wcstok.c wcswidth.c wcsxfrm.c wmemchr.c \ 30fd4f1dd9STim J. Robbins wmemcmp.c \ 31ee37f64cSKonstantin Belousov wmemcpy.c wmemmove.c wmempcpy.c wmemset.c 3201e281bdSTakuya SHIOZAKI 338876613dSMarcel MoolenaarSYM_MAPS+= ${LIBC_SRCTOP}/string/Symbol.map 346fad3aafSDaniel Eischen 358185be33SAlex Richardson.if ${MK_ASAN} != "no" 368185be33SAlex Richardson# These source files deliberately read out of bounds since they assume that 378185be33SAlex Richardson# out-of-bounds memory accesses that don't cross pages are always legal. 388185be33SAlex Richardson# Note: While this is fine on x86, it does break when running with CHERI. 398185be33SAlex RichardsonCFLAGS.strlen.c+= -fno-sanitize=address 408185be33SAlex RichardsonCFLAGS.strchrnul.c+= -fno-sanitize=address 418185be33SAlex RichardsonCFLAGS.memchr.c+= -fno-sanitize=address 428185be33SAlex Richardson.endif 438185be33SAlex Richardson 4458f0484fSRodney W. Grimes 45*016e46fdSGleb Popov.if ${MK_MACHDEP_OPTIMIZATIONS} != "no" 4658f0484fSRodney W. Grimes# machine-dependent string sources 478876613dSMarcel Moolenaar.sinclude "${LIBC_SRCTOP}/${LIBC_ARCH}/string/Makefile.inc" 48*016e46fdSGleb Popov.endif 4958f0484fSRodney W. Grimes 504a558355SRuslan ErmilovMAN+= bcmp.3 bcopy.3 bstring.3 bzero.3 ffs.3 index.3 memccpy.3 memchr.3 \ 516050c8feSAndre Oppermann memcmp.3 memcpy.3 memmem.3 memmove.3 memset.3 strcasecmp.3 strcat.3 \ 525538d7a1SAllan Jude strchr.3 strcmp.3 strcoll.3 strcpy.3 strdup.3 strerror.3 \ 53c9ae54eeSSimon L. B. Nielsen string.3 strlcpy.3 strlen.3 strmode.3 strpbrk.3 strsep.3 \ 5405c9a015SAymeric Wibo strspn.3 strstr.3 strtok.3 strverscmp.3 strxfrm.3 swab.3 \ 55854023f0SXin LI timingsafe_bcmp.3 \ 56854023f0SXin LI wcscoll.3 wcstok.3 \ 57fd4f1dd9STim J. Robbins wcswidth.3 wcsxfrm.3 wmemchr.3 58b966cc23SBruce Evans 59af136020SXin LIMLINKS+=bzero.3 explicit_bzero.3 60efad698cSRuslan ErmilovMLINKS+=ffs.3 ffsl.3 \ 61efad698cSRuslan Ermilov ffs.3 ffsll.3 \ 62efad698cSRuslan Ermilov ffs.3 fls.3 \ 63efad698cSRuslan Ermilov ffs.3 flsl.3 \ 64efad698cSRuslan Ermilov ffs.3 flsll.3 65c9ae54eeSSimon L. B. NielsenMLINKS+=index.3 rindex.3 6682e45205SXin LIMLINKS+=memchr.3 memrchr.3 67ee37f64cSKonstantin BelousovMLINKS+=memcpy.3 mempcpy.3 68a4d179eeSCy SchubertMLINKS+=memset.3 memset_s.3 6993af1bc4SIsabell LongMLINKS+=strcasecmp.3 strncasecmp.3 \ 7093af1bc4SIsabell Long strcasecmp.3 strcasecmp_l.3 \ 7193af1bc4SIsabell Long strcasecmp.3 strncasecmp_l.3 7258f0484fSRodney W. GrimesMLINKS+=strcat.3 strncat.3 730e7919f7SNiclas ZeisingMLINKS+=strchr.3 strrchr.3 \ 740e7919f7SNiclas Zeising strchr.3 strchrnul.3 7558f0484fSRodney W. GrimesMLINKS+=strcmp.3 strncmp.3 7693af1bc4SIsabell LongMLINKS+=strcoll.3 strcoll_l.3 77efad698cSRuslan ErmilovMLINKS+=strcpy.3 stpcpy.3 \ 7869099ba2SDavid Schultz strcpy.3 stpncpy.3 \ 79efad698cSRuslan Ermilov strcpy.3 strncpy.3 80f0eca40aSKonstantin BelousovMLINKS+=strdup.3 strndup.3 81efad698cSRuslan ErmilovMLINKS+=strerror.3 perror.3 \ 82675079b1SKonstantin Belousov strerror.3 strerror_l.3 \ 83efad698cSRuslan Ermilov strerror.3 strerror_r.3 \ 84efad698cSRuslan Ermilov strerror.3 sys_errlist.3 \ 85efad698cSRuslan Ermilov strerror.3 sys_nerr.3 86a41df9e3SWarner LoshMLINKS+=strlcpy.3 strlcat.3 8769099ba2SDavid SchultzMLINKS+=strlen.3 strnlen.3 885538d7a1SAllan JudeMLINKS+=strspn.3 strcspn.3 89efad698cSRuslan ErmilovMLINKS+=strstr.3 strcasestr.3 \ 9093af1bc4SIsabell Long strstr.3 strnstr.3 \ 9193af1bc4SIsabell Long strstr.3 strcasestr_l.3 9283068b62SJohn PolstraMLINKS+=strtok.3 strtok_r.3 9393af1bc4SIsabell LongMLINKS+=strxfrm.3 strxfrm_l.3 94854023f0SXin LIMLINKS+=timingsafe_bcmp.3 timingsafe_memcmp.3 9509efd0ecSDavid SchultzMLINKS+=wmemchr.3 wcpcpy.3 \ 9609efd0ecSDavid Schultz wmemchr.3 wcpncpy.3 \ 9709efd0ecSDavid Schultz wmemchr.3 wcscasecmp.3 \ 9869099ba2SDavid Schultz wmemchr.3 wcscat.3 \ 99efad698cSRuslan Ermilov wmemchr.3 wcschr.3 \ 100efad698cSRuslan Ermilov wmemchr.3 wcscmp.3 \ 101efad698cSRuslan Ermilov wmemchr.3 wcscpy.3 \ 102efad698cSRuslan Ermilov wmemchr.3 wcscspn.3 \ 103efad698cSRuslan Ermilov wmemchr.3 wcsdup.3 \ 104d62e8d4cSTim J. Robbins wmemchr.3 wcslcat.3 \ 105efad698cSRuslan Ermilov wmemchr.3 wcslcpy.3 \ 106efad698cSRuslan Ermilov wmemchr.3 wcslen.3 \ 10769099ba2SDavid Schultz wmemchr.3 wcsncasecmp.3 \ 108efad698cSRuslan Ermilov wmemchr.3 wcsncat.3 \ 109efad698cSRuslan Ermilov wmemchr.3 wcsncmp.3 \ 110efad698cSRuslan Ermilov wmemchr.3 wcsncpy.3 \ 11169099ba2SDavid Schultz wmemchr.3 wcsnlen.3 \ 112efad698cSRuslan Ermilov wmemchr.3 wcspbrk.3 \ 113efad698cSRuslan Ermilov wmemchr.3 wcsrchr.3 \ 114efad698cSRuslan Ermilov wmemchr.3 wcsspn.3 \ 115efad698cSRuslan Ermilov wmemchr.3 wcsstr.3 \ 116efad698cSRuslan Ermilov wmemchr.3 wmemcmp.3 \ 117efad698cSRuslan Ermilov wmemchr.3 wmemcpy.3 \ 118efad698cSRuslan Ermilov wmemchr.3 wmemmove.3 \ 119ee37f64cSKonstantin Belousov wmemchr.3 wmempcpy.3 \ 120efad698cSRuslan Ermilov wmemchr.3 wmemset.3 121