xref: /freebsd/lib/libc/string/Makefile.inc (revision 016e46fd869ebf9891ca4b2cf1d22b337717a8c8)
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