This is an automated email from the ASF dual-hosted git repository.
xiaoxiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git
The following commit(s) were added to refs/heads/master by this push:
new 1956385a7d libs/libc: Breakdown LIBC_BUILD_STRING into specific string
operations macro.
1956385a7d is described below
commit 1956385a7d40e4ee3331962c2cd24cc003e27ab1
Author: yangdongdong <[email protected]>
AuthorDate: Fri Aug 25 22:38:35 2023 +0800
libs/libc: Breakdown LIBC_BUILD_STRING into specific string operations
macro.
Provide a way to only customize specific string operations,
such as for memcpy with the DMA capability by ROM.
Signed-off-by: yangdongdong <[email protected]>
---
libs/libc/libc.h | 120 +++++-
libs/libc/machine/Kconfig | 496 ++++++++++++++++++++++-
libs/libc/machine/arm/armv7-a/gnu/arch_memchr.S | 2 +-
libs/libc/machine/arm/armv7-a/gnu/arch_memcpy.S | 2 +-
libs/libc/machine/arm/armv7-a/gnu/arch_memmove.S | 2 +-
libs/libc/machine/arm/armv7-a/gnu/arch_memset.S | 2 +-
libs/libc/machine/arm/armv7-a/gnu/arch_strcmp.S | 2 +-
libs/libc/machine/arm/armv7-a/gnu/arch_strlen.S | 2 +-
libs/libc/machine/arm/armv7-m/gnu/arch_memchr.S | 2 +-
libs/libc/machine/arm/armv7-m/gnu/arch_memcpy.S | 2 +-
libs/libc/machine/arm/armv7-m/gnu/arch_memmove.S | 2 +-
libs/libc/machine/arm/armv7-m/gnu/arch_memset.S | 2 +-
libs/libc/machine/arm/armv7-m/gnu/arch_strcmp.S | 2 +-
libs/libc/machine/arm/armv7-m/gnu/arch_strcpy.S | 2 +-
libs/libc/machine/arm/armv7-m/gnu/arch_strlen.S | 2 +-
libs/libc/machine/arm/armv7-r/gnu/arch_memchr.S | 2 +-
libs/libc/machine/arm/armv7-r/gnu/arch_memcpy.S | 2 +-
libs/libc/machine/arm/armv7-r/gnu/arch_memmove.S | 2 +-
libs/libc/machine/arm/armv7-r/gnu/arch_memset.S | 2 +-
libs/libc/machine/arm/armv7-r/gnu/arch_strcmp.S | 2 +-
libs/libc/machine/arm/armv7-r/gnu/arch_strlen.S | 2 +-
libs/libc/machine/arm/armv8-m/gnu/arch_memchr.S | 2 +-
libs/libc/machine/arm/armv8-m/gnu/arch_memcpy.S | 2 +-
libs/libc/machine/arm/armv8-m/gnu/arch_memmove.S | 2 +-
libs/libc/machine/arm/armv8-m/gnu/arch_memset.S | 2 +-
libs/libc/machine/arm/armv8-m/gnu/arch_strcmp.S | 2 +-
libs/libc/machine/arm/armv8-m/gnu/arch_strlen.S | 2 +-
libs/libc/machine/arm64/gnu/arch_memchr.S | 2 +-
libs/libc/machine/arm64/gnu/arch_memcmp.S | 2 +-
libs/libc/machine/arm64/gnu/arch_memcpy.S | 2 +-
libs/libc/machine/arm64/gnu/arch_memmove.S | 2 +-
libs/libc/machine/arm64/gnu/arch_memset.S | 2 +-
libs/libc/machine/arm64/gnu/arch_strchr.S | 2 +-
libs/libc/machine/arm64/gnu/arch_strchrnul.S | 2 +-
libs/libc/machine/arm64/gnu/arch_strcmp.S | 2 +-
libs/libc/machine/arm64/gnu/arch_strcpy.S | 2 +-
libs/libc/machine/arm64/gnu/arch_strlen.S | 2 +-
libs/libc/machine/arm64/gnu/arch_strncmp.S | 2 +-
libs/libc/machine/arm64/gnu/arch_strnlen.S | 2 +-
libs/libc/machine/arm64/gnu/arch_strrchr.S | 2 +-
libs/libc/machine/risc-v/gnu/arch_memcpy.S | 2 +-
libs/libc/machine/risc-v/gnu/arch_memset.S | 2 +-
libs/libc/machine/risc-v/gnu/arch_strcmp.S | 2 +-
libs/libc/machine/xtensa/arch_memcpy.S | 2 +-
libs/libc/machine/xtensa/arch_memmove.S | 2 +-
libs/libc/machine/xtensa/arch_memset.S | 2 +-
libs/libc/machine/xtensa/arch_strcmp.S | 2 +-
libs/libc/machine/xtensa/arch_strcpy.S | 2 +-
libs/libc/machine/xtensa/arch_strlen.S | 2 +-
libs/libc/machine/xtensa/arch_strncpy.S | 2 +-
libs/libc/string/lib_memchr.c | 2 +-
libs/libc/string/lib_memcmp.c | 2 +-
libs/libc/string/lib_memcpy.c | 2 +-
libs/libc/string/lib_memmove.c | 2 +-
libs/libc/string/lib_memset.c | 2 +-
libs/libc/string/lib_strcasecmp.c | 2 +-
libs/libc/string/lib_strcat.c | 2 +-
libs/libc/string/lib_strchr.c | 2 +-
libs/libc/string/lib_strchrnul.c | 2 +-
libs/libc/string/lib_strcmp.c | 2 +-
libs/libc/string/lib_strcpy.c | 2 +-
libs/libc/string/lib_strlcat.c | 2 +-
libs/libc/string/lib_strlcpy.c | 2 +-
libs/libc/string/lib_strlen.c | 2 +-
libs/libc/string/lib_strncasecmp.c | 2 +-
libs/libc/string/lib_strncat.c | 2 +-
libs/libc/string/lib_strncmp.c | 2 +-
libs/libc/string/lib_strncpy.c | 2 +-
libs/libc/string/lib_strnlen.c | 2 +-
libs/libc/string/lib_strrchr.c | 2 +-
libs/libc/string/lib_vikmemcpy.c | 2 +-
71 files changed, 676 insertions(+), 78 deletions(-)
diff --git a/libs/libc/libc.h b/libs/libc/libc.h
index 2073233b63..e377ed7d18 100644
--- a/libs/libc/libc.h
+++ b/libs/libc/libc.h
@@ -56,9 +56,123 @@
#define LIB_BUFLEN_UNKNOWN INT_MAX
#if defined(CONFIG_BUILD_FLAT) || \
- ((!defined(CONFIG_LIBC_PREVENT_STRING_USER) && !defined(__KERNEL__)) || \
- (!defined(CONFIG_LIBC_PREVENT_STRING_KERNEL) && defined(__KERNEL__)))
-# define LIBC_BUILD_STRING
+ ((!defined(CONFIG_LIBC_PREVENT_MEMCHR_USER) && !defined(__KERNEL__)) || \
+ (!defined(CONFIG_LIBC_PREVENT_MEMCHR_KERNEL) && defined(__KERNEL__)))
+# define LIBC_BUILD_MEMCHR
+#endif
+
+#if defined(CONFIG_BUILD_FLAT) || \
+ ((!defined(CONFIG_LIBC_PREVENT_MEMCMP_USER) && !defined(__KERNEL__)) || \
+ (!defined(CONFIG_LIBC_PREVENT_MEMCMP_KERNEL) && defined(__KERNEL__)))
+# define LIBC_BUILD_MEMCMP
+#endif
+
+#if defined(CONFIG_BUILD_FLAT) || \
+ ((!defined(CONFIG_LIBC_PREVENT_MEMCPY_USER) && !defined(__KERNEL__)) || \
+ (!defined(CONFIG_LIBC_PREVENT_MEMCPY_KERNEL) && defined(__KERNEL__)))
+# define LIBC_BUILD_MEMCPY
+#endif
+
+#if defined(CONFIG_BUILD_FLAT) || \
+ ((!defined(CONFIG_LIBC_PREVENT_MEMMOVE_USER) && !defined(__KERNEL__)) || \
+ (!defined(CONFIG_LIBC_PREVENT_MEMMOVE_KERNEL) && defined(__KERNEL__)))
+# define LIBC_BUILD_MEMMOVE
+#endif
+
+#if defined(CONFIG_BUILD_FLAT) || \
+ ((!defined(CONFIG_LIBC_PREVENT_MEMSET_USER) && !defined(__KERNEL__)) || \
+ (!defined(CONFIG_LIBC_PREVENT_MEMSET_KERNEL) && defined(__KERNEL__)))
+# define LIBC_BUILD_MEMSET
+#endif
+
+#if defined(CONFIG_BUILD_FLAT) || \
+ ((!defined(CONFIG_LIBC_PREVENT_STRCAT_USER) && !defined(__KERNEL__)) || \
+ (!defined(CONFIG_LIBC_PREVENT_STRCAT_KERNEL) && defined(__KERNEL__)))
+# define LIBC_BUILD_STRCAT
+#endif
+
+#if defined(CONFIG_BUILD_FLAT) || \
+ ((!defined(CONFIG_LIBC_PREVENT_STRCASECMP_USER) && !defined(__KERNEL__))
|| \
+ (!defined(CONFIG_LIBC_PREVENT_STRCASECMP_KERNEL) && defined(__KERNEL__)))
+# define LIBC_BUILD_STRCASECMP
+#endif
+
+#if defined(CONFIG_BUILD_FLAT) || \
+ ((!defined(CONFIG_LIBC_PREVENT_STRCHR_USER) && !defined(__KERNEL__)) || \
+ (!defined(CONFIG_LIBC_PREVENT_STRCHR_KERNEL) && defined(__KERNEL__)))
+# define LIBC_BUILD_STRCHR
+#endif
+
+#if defined(CONFIG_BUILD_FLAT) || \
+ ((!defined(CONFIG_LIBC_PREVENT_STRCHRNUL_USER) && !defined(__KERNEL__))
|| \
+ (!defined(CONFIG_LIBC_PREVENT_STRCHRNUL_KERNEL) && defined(__KERNEL__)))
+# define LIBC_BUILD_STRCHRNUL
+#endif
+
+#if defined(CONFIG_BUILD_FLAT) || \
+ ((!defined(CONFIG_LIBC_PREVENT_STRCMP_USER) && !defined(__KERNEL__)) || \
+ (!defined(CONFIG_LIBC_PREVENT_STRCMP_KERNEL) && defined(__KERNEL__)))
+# define LIBC_BUILD_STRCMP
+#endif
+
+#if defined(CONFIG_BUILD_FLAT) || \
+ ((!defined(CONFIG_LIBC_PREVENT_STRCPY_USER) && !defined(__KERNEL__)) || \
+ (!defined(CONFIG_LIBC_PREVENT_STRCPY_KERNEL) && defined(__KERNEL__)))
+# define LIBC_BUILD_STRCPY
+#endif
+
+#if defined(CONFIG_BUILD_FLAT) || \
+ ((!defined(CONFIG_LIBC_PREVENT_STRLCAT_USER) && !defined(__KERNEL__)) || \
+ (!defined(CONFIG_LIBC_PREVENT_STRLCAT_KERNEL) && defined(__KERNEL__)))
+# define LIBC_BUILD_STRLCAT
+#endif
+
+#if defined(CONFIG_BUILD_FLAT) || \
+ ((!defined(CONFIG_LIBC_PREVENT_STRLEN_USER) && !defined(__KERNEL__)) || \
+ (!defined(CONFIG_LIBC_PREVENT_STRLEN_KERNEL) && defined(__KERNEL__)))
+# define LIBC_BUILD_STRLEN
+#endif
+
+#if defined(CONFIG_BUILD_FLAT) || \
+ ((!defined(CONFIG_LIBC_PREVENT_STRLCPY_USER) && !defined(__KERNEL__)) || \
+ (!defined(CONFIG_LIBC_PREVENT_STRLCPY_KERNEL) && defined(__KERNEL__)))
+# define LIBC_BUILD_STRLCPY
+#endif
+
+#if defined(CONFIG_BUILD_FLAT) || \
+ ((!defined(CONFIG_LIBC_PREVENT_STRNCASECMP_USER) && !defined(__KERNEL__))
|| \
+ (!defined(CONFIG_LIBC_PREVENT_STRNCASECMP_KERNEL) && defined(__KERNEL__)))
+# define LIBC_BUILD_STRNCASECMP
+#endif
+
+#if defined(CONFIG_BUILD_FLAT) || \
+ ((!defined(CONFIG_LIBC_PREVENT_STRNCAT_USER) && !defined(__KERNEL__)) || \
+ (!defined(CONFIG_LIBC_PREVENT_STRNCAT_KERNEL) && defined(__KERNEL__)))
+# define LIBC_BUILD_STRNCAT
+#endif
+
+#if defined(CONFIG_BUILD_FLAT) || \
+ ((!defined(CONFIG_LIBC_PREVENT_STRNLEN_USER) && !defined(__KERNEL__)) || \
+ (!defined(CONFIG_LIBC_PREVENT_STRNLEN_KERNEL) && defined(__KERNEL__)))
+# define LIBC_BUILD_STRNLEN
+#endif
+
+#if defined(CONFIG_BUILD_FLAT) || \
+ ((!defined(CONFIG_LIBC_PREVENT_STRNCMP_USER) && !defined(__KERNEL__)) || \
+ (!defined(CONFIG_LIBC_PREVENT_STRNCMP_KERNEL) && defined(__KERNEL__)))
+# define LIBC_BUILD_STRNCMP
+#endif
+
+#if defined(CONFIG_BUILD_FLAT) || \
+ ((!defined(CONFIG_LIBC_PREVENT_STRNCPY_USER) && !defined(__KERNEL__)) || \
+ (!defined(CONFIG_LIBC_PREVENT_STRNCPY_KERNEL) && defined(__KERNEL__)))
+# define LIBC_BUILD_STRNCPY
+#endif
+
+#if defined(CONFIG_BUILD_FLAT) || \
+ ((!defined(CONFIG_LIBC_PREVENT_STRRCHR_USER) && !defined(__KERNEL__)) || \
+ (!defined(CONFIG_LIBC_PREVENT_STRRCHR_KERNEL) && defined(__KERNEL__)))
+# define LIBC_BUILD_STRRCHR
#endif
/****************************************************************************
diff --git a/libs/libc/machine/Kconfig b/libs/libc/machine/Kconfig
index cb32809a18..bed04eda04 100644
--- a/libs/libc/machine/Kconfig
+++ b/libs/libc/machine/Kconfig
@@ -138,11 +138,450 @@ config LIBC_ARCH_ELF_64BIT
depends on LIBC_ARCH_ELF
config LIBC_PREVENT_STRING_KERNEL
+ bool
+ default n
+ select LIBC_PREVENT_MEMCHR_KERNEL
+ select LIBC_PREVENT_MEMCMP_KERNEL
+ select LIBC_PREVENT_MEMCPY_KERNEL
+ select LIBC_PREVENT_MEMMOVE_KERNEL
+ select LIBC_PREVENT_MEMSET_KERNEL
+ select LIBC_PREVENT_STRCAT_KERNEL
+ select LIBC_PREVENT_STRCASECMP_KERNEL
+ select LIBC_PREVENT_STRCHR_KERNEL
+ select LIBC_PREVENT_STRCHRNUL_KERNEL
+ select LIBC_PREVENT_STRCMP_KERNEL
+ select LIBC_PREVENT_STRCPY_KERNEL
+ select LIBC_PREVENT_STRLCAT_KERNEL
+ select LIBC_PREVENT_STRLEN_KERNEL
+ select LIBC_PREVENT_STRLCPY_KERNEL
+ select LIBC_PREVENT_STRNCASECMP_KERNEL
+ select LIBC_PREVENT_STRNCAT_KERNEL
+ select LIBC_PREVENT_STRNLEN_KERNEL
+ select LIBC_PREVENT_STRNCMP_KERNEL
+ select LIBC_PREVENT_STRNCPY_KERNEL
+ select LIBC_PREVENT_STRRCHR_KERNEL
+
+config LIBC_PREVENT_STRING_USER
+ bool
+ default n
+ select LIBC_PREVENT_MEMCHR_USER
+ select LIBC_PREVENT_MEMCMP_USER
+ select LIBC_PREVENT_MEMCPY_USER
+ select LIBC_PREVENT_MEMMOVE_USER
+ select LIBC_PREVENT_MEMSET_USER
+ select LIBC_PREVENT_STRCAT_USER
+ select LIBC_PREVENT_STRCASECMP_USER
+ select LIBC_PREVENT_STRCHR_USER
+ select LIBC_PREVENT_STRCHRNUL_USER
+ select LIBC_PREVENT_STRCMP_USER
+ select LIBC_PREVENT_STRCPY_USER
+ select LIBC_PREVENT_STRLCAT_USER
+ select LIBC_PREVENT_STRLEN_USER
+ select LIBC_PREVENT_STRLCPY_USER
+ select LIBC_PREVENT_STRNCASECMP_USER
+ select LIBC_PREVENT_STRNCAT_USER
+ select LIBC_PREVENT_STRNLEN_USER
+ select LIBC_PREVENT_STRNCMP_USER
+ select LIBC_PREVENT_STRNCPY_USER
+ select LIBC_PREVENT_STRRCHR_USER
+
+config LIBC_PREVENT_MEMCHR_KERNEL
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc memchr from being built
and linked
+ in the kernel, including NuttX's software-defined version of
the libc memchr
+ or any other architecture-specific version of it. The
ROM-defined
+ version should be linked instead. This option is particularly
useful
+ when it's required that the ROM-defined libc memchr to be used
by the kernel
+ (for accessing some driver resource, for instance) but the
userspace
+ is forbidden to use the same ROM-defined versions. In this case,
+ NuttX's software-defined version of the libc memchr or
arch-specific
+ assembly version is built instead.
+
+config LIBC_PREVENT_MEMCHR_USER
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc memchr from being built
and linked
+ in the userspace, including NuttX's software-defined version of
the
+ libc memchr or any other architecture-specific version of it. A
ROM-defined
+ version of the libc memchr may be linked to the userspace by
the linker.
+
+config LIBC_PREVENT_MEMCMP_KERNEL
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc memcmp from being built
and linked
+ in the kernel, including NuttX's software-defined version of
the libc memcmp
+ or any other architecture-specific version of it. The
ROM-defined
+ version should be linked instead. This option is particularly
useful
+ when it's required that the ROM-defined libc to be used by the
kernel
+ (for accessing some driver resource, for instance) but the
userspace
+ is forbidden to use the same ROM-defined versions. In this case,
+ NuttX's software-defined version of the libc memcmp or
arch-specific
+ assembly version is built instead.
+
+config LIBC_PREVENT_MEMCMP_USER
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc memcmp from being built
and linked
+ in the userspace, including NuttX's software-defined version of
the
+ libc memcmp or any other architecture-specific version of it. A
ROM-defined
+ version of the libc memcmp may be linked to the userspace by
the linker.
+
+config LIBC_PREVENT_MEMCPY_KERNEL
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc memcpy from being built
and linked
+ in the kernel, including NuttX's software-defined version of
the libc memcpy
+ or any other architecture-specific version of it. The
ROM-defined
+ version should be linked instead. This option is particularly
useful
+ when it's required that the ROM-defined libc memcpy to be used
by the kernel
+ (for accessing some driver resource, for instance) but the
userspace
+ is forbidden to use the same ROM-defined versions. In this case,
+ NuttX's software-defined version of the libc memcpy or
arch-specific
+ assembly version is built instead.
+
+config LIBC_PREVENT_MEMCPY_USER
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc memcpy from being built
and linked
+ in the userspace, including NuttX's software-defined version of
the
+ libc memcpy or any other architecture-specific version of it. A
ROM-defined
+ version of the libc memcpy may be linked to the userspace by
the linker.
+
+config LIBC_PREVENT_MEMMOVE_KERNEL
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc memmove from being built
and linked
+ in the kernel, including NuttX's software-defined version of
the libc memmove
+ or any other architecture-specific version of it. The
ROM-defined
+ version should be linked instead. This option is particularly
useful
+ when it's required that the ROM-defined libc memmove to be used
by the kernel
+ (for accessing some driver resource, for instance) but the
userspace
+ is forbidden to use the same ROM-defined versions. In this case,
+ NuttX's software-defined version of the libc memmove or
arch-specific
+ assembly version is built instead.
+
+config LIBC_PREVENT_MEMMOVE_USER
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc memmove from being built
and linked
+ in the userspace, including NuttX's software-defined version of
the
+ libc memmove or any other architecture-specific version of it.
A ROM-defined
+ version of the libc memmove may be linked to the userspace by
the linker.
+
+config LIBC_PREVENT_MEMSET_KERNEL
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc memset from being built
and linked
+ in the kernel, including NuttX's software-defined version of
the libc memset
+ or any other architecture-specific version of it. The
ROM-defined
+ version should be linked instead. This option is particularly
useful
+ when it's required that the ROM-defined libc to be used by the
kernel
+ (for accessing some driver resource, for instance) but the
userspace
+ is forbidden to use the same ROM-defined versions. In this case,
+ NuttX's software-defined version of the libc memset or
arch-specific
+ assembly version is built instead.
+
+config LIBC_PREVENT_MEMSET_USER
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc memset from being built
and linked
+ in the userspace, including NuttX's software-defined version of
the
+ libc memset or any other architecture-specific version of it. A
ROM-defined
+ version of the libc memset may be linked to the userspace by
the linker.
+
+config LIBC_PREVENT_STRCAT_KERNEL
bool
default n
---help---
- Prevent any implementation of the libc from being built and
linked
- in the kernel, including NuttX's software-defined version of
the libc
+ Prevent any implementation of the libc strcat from being built
and linked
+ in the kernel, including NuttX's software-defined version of
the libc strcat
+ or any other architecture-specific version of it. The
ROM-defined
+ version should be linked instead. This option is particularly
useful
+ when it's required that the ROM-defined libc strcat to be used
by the kernel
+ (for accessing some driver resource, for instance) but the
userspace
+ is forbidden to use the same ROM-defined versions. In this case,
+ NuttX's software-defined version of the libc strcat or
arch-specific
+ assembly version is built instead.
+
+config LIBC_PREVENT_STRCAT_USER
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strcat from being built
and linked
+ in the userspace, including NuttX's software-defined version of
the
+ libc strcat or any other architecture-specific version of it. A
ROM-defined
+ version of the libc strcat may be linked to the userspace by
the linker.
+
+config LIBC_PREVENT_STRCASECMP_KERNEL
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strcasecmp from being
built and linked
+ in the kernel, including NuttX's software-defined version of
the libc strcasecmp
+ or any other architecture-specific version of it. The
ROM-defined
+ version should be linked instead. This option is particularly
useful
+ when it's required that the ROM-defined libc strcasecmp to be
used by the kernel
+ (for accessing some driver resource, for instance) but the
userspace
+ is forbidden to use the same ROM-defined versions. In this case,
+ NuttX's software-defined version of the libc strcasecmp or
arch-specific
+ assembly version is built instead.
+
+config LIBC_PREVENT_STRCASECMP_USER
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strcasecmp from being
built and linked
+ in the userspace, including NuttX's software-defined version of
the
+ libc strcasecmp or any other architecture-specific version of
it. A ROM-defined
+ version of the libc strcasecmp may be linked to the userspace
by the linker.
+
+config LIBC_PREVENT_STRCHR_KERNEL
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strchr from being built
and linked
+ in the kernel, including NuttX's software-defined version of
the libc strchr
+ or any other architecture-specific version of it. The
ROM-defined
+ version should be linked instead. This option is particularly
useful
+ when it's required that the ROM-defined libc to be used by the
kernel
+ (for accessing some driver resource, for instance) but the
userspace
+ is forbidden to use the same ROM-defined versions. In this case,
+ NuttX's software-defined version of the libc strchr or
arch-specific
+ assembly version is built instead.
+
+config LIBC_PREVENT_STRCHR_USER
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strchr from being built
and linked
+ in the userspace, including NuttX's software-defined version of
the
+ libc strchr or any other architecture-specific version of it. A
ROM-defined
+ version of the libc strchr may be linked to the userspace by
the linker.
+
+config LIBC_PREVENT_STRCHRNUL_KERNEL
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strchrnul from being
built and linked
+ in the kernel, including NuttX's software-defined version of
the libc strchrnul
+ or any other architecture-specific version of it. The
ROM-defined
+ version should be linked instead. This option is particularly
useful
+ when it's required that the ROM-defined libc strchrnul to be
used by the kernel
+ (for accessing some driver resource, for instance) but the
userspace
+ is forbidden to use the same ROM-defined versions. In this case,
+ NuttX's software-defined version of the libc strchrnul or
arch-specific
+ assembly version is built instead.
+
+config LIBC_PREVENT_STRCHRNUL_USER
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strchrnul from being
built and linked
+ in the userspace, including NuttX's software-defined version of
the
+ libc strchrnul or any other architecture-specific version of
it. A ROM-defined
+ version of the libc strchrnul may be linked to the userspace by
the linker.
+
+config LIBC_PREVENT_STRCMP_KERNEL
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strcmp from being built
and linked
+ in the kernel, including NuttX's software-defined version of
the libc strcmp
+ or any other architecture-specific version of it. The
ROM-defined
+ version should be linked instead. This option is particularly
useful
+ when it's required that the ROM-defined libc strcmp to be used
by the kernel
+ (for accessing some driver resource, for instance) but the
userspace
+ is forbidden to use the same ROM-defined versions. In this case,
+ NuttX's software-defined version of the libc strcmp or
arch-specific
+ assembly version is built instead.
+
+config LIBC_PREVENT_STRCMP_USER
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strcmp from being built
and linked
+ in the userspace, including NuttX's software-defined version of
the
+ libc strcmp or any other architecture-specific version of it. A
ROM-defined
+ version of the libc strcmp may be linked to the userspace by
the linker.
+
+config LIBC_PREVENT_STRCPY_KERNEL
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strcpy from being built
and linked
+ in the kernel, including NuttX's software-defined version of
the libc strcpy
+ or any other architecture-specific version of it. The
ROM-defined
+ version should be linked instead. This option is particularly
useful
+ when it's required that the ROM-defined libc strcpy to be used
by the kernel
+ (for accessing some driver resource, for instance) but the
userspace
+ is forbidden to use the same ROM-defined versions. In this case,
+ NuttX's software-defined version of the libc strcpy or
arch-specific
+ assembly version is built instead.
+
+config LIBC_PREVENT_STRCPY_USER
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strcpy from being built
and linked
+ in the userspace, including NuttX's software-defined version of
the
+ libc strcpy or any other architecture-specific version of it. A
ROM-defined
+ version of the libc strcpy may be linked to the userspace by
the linker.
+
+config LIBC_PREVENT_STRLCAT_KERNEL
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strlcat from being built
and linked
+ in the kernel, including NuttX's software-defined version of
the libc strlcat
+ or any other architecture-specific version of it. The
ROM-defined
+ version should be linked instead. This option is particularly
useful
+ when it's required that the ROM-defined libc strlcat to be used
by the kernel
+ (for accessing some driver resource, for instance) but the
userspace
+ is forbidden to use the same ROM-defined versions. In this case,
+ NuttX's software-defined version of the libc strlcat or
arch-specific
+ assembly version is built instead.
+
+config LIBC_PREVENT_STRLCAT_USER
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strlcat from being built
and linked
+ in the userspace, including NuttX's software-defined version of
the
+ libc strlcat or any other architecture-specific version of it.
A ROM-defined
+ version of the libc strlcat may be linked to the userspace by
the linker.
+
+config LIBC_PREVENT_STRLEN_KERNEL
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strlen from being built
and linked
+ in the kernel, including NuttX's software-defined version of
the libc strlen
+ or any other architecture-specific version of it. The
ROM-defined
+ version should be linked instead. This option is particularly
useful
+ when it's required that the ROM-defined libc strlen to be used
by the kernel
+ (for accessing some driver resource, for instance) but the
userspace
+ is forbidden to use the same ROM-defined versions. In this case,
+ NuttX's software-defined version of the libc strlen or
arch-specific
+ assembly version is built instead.
+
+config LIBC_PREVENT_STRLEN_USER
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strlen from being built
and linked
+ in the userspace, including NuttX's software-defined version of
the
+ libc strlen or any other architecture-specific version of it. A
ROM-defined
+ version of the libc strlen may be linked to the userspace by
the linker.
+
+config LIBC_PREVENT_STRLCPY_KERNEL
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strlcpy from being built
and linked
+ in the kernel, including NuttX's software-defined version of
the libc strlcpy
+ or any other architecture-specific version of it. The
ROM-defined
+ version should be linked instead. This option is particularly
useful
+ when it's required that the ROM-defined libc strlcpy to be used
by the kernel
+ (for accessing some driver resource, for instance) but the
userspace
+ is forbidden to use the same ROM-defined versions. In this case,
+ NuttX's software-defined version of the libc strlcpy or
arch-specific
+ assembly version is built instead.
+
+config LIBC_PREVENT_STRLCPY_USER
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strlcpy from being built
and linked
+ in the userspace, including NuttX's software-defined version of
the
+ libc strlcpy or any other architecture-specific version of it.
A ROM-defined
+ version of the libc strlcpy may be linked to the userspace by
the linker.
+
+config LIBC_PREVENT_STRNCASECMP_KERNEL
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strncasecmp from being
built and linked
+ in the kernel, including NuttX's software-defined version of
the libc strncasecmp
+ or any other architecture-specific version of it. The
ROM-defined
+ version should be linked instead. This option is particularly
useful
+ when it's required that the ROM-defined libc strncasecmp to be
used by the kernel
+ (for accessing some driver resource, for instance) but the
userspace
+ is forbidden to use the same ROM-defined versions. In this case,
+ NuttX's software-defined version of the libc strncasecmp or
arch-specific
+ assembly version is built instead.
+
+config LIBC_PREVENT_STRNCASECMP_USER
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strncasecmp from being
built and linked
+ in the userspace, including NuttX's software-defined version of
the
+ libc strncasecmp or any other architecture-specific version of
it. A ROM-defined
+ version of the libc strncasecmp may be linked to the userspace
by the linker.
+
+config LIBC_PREVENT_STRNCAT_KERNEL
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strncat from being built
and linked
+ in the kernel, including NuttX's software-defined version of
the libc strncat
+ or any other architecture-specific version of it. The
ROM-defined
+ version should be linked instead. This option is particularly
useful
+ when it's required that the ROM-defined libc strncat to be used
by the kernel
+ (for accessing some driver resource, for instance) but the
userspace
+ is forbidden to use the same ROM-defined versions. In this case,
+ NuttX's software-defined version of the libc strncat or
arch-specific
+ assembly version is built instead.
+
+config LIBC_PREVENT_STRNCAT_USER
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strncat from being built
and linked
+ in the userspace, including NuttX's software-defined version of
the
+ libc strncat or any other architecture-specific version of it.
A ROM-defined
+ version of the libc strncat may be linked to the userspace by
the linker.
+
+config LIBC_PREVENT_STRNLEN_KERNEL
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strnlen from being built
and linked
+ in the kernel, including NuttX's software-defined version of
the libc strnlen
+ or any other architecture-specific version of it. The
ROM-defined
+ version should be linked instead. This option is particularly
useful
+ when it's required that the ROM-defined libc strnlen to be used
by the kernel
+ (for accessing some driver resource, for instance) but the
userspace
+ is forbidden to use the same ROM-defined versions. In this case,
+ NuttX's software-defined version of the libc strnlen or
arch-specific
+ assembly version is built instead.
+
+config LIBC_PREVENT_STRNLEN_USER
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strnlen from being built
and linked
+ in the userspace, including NuttX's software-defined version of
the
+ libc strnlen or any other architecture-specific version of it.
A ROM-defined
+ version of the libc strnlen may be linked to the userspace by
the linker.
+
+config LIBC_PREVENT_STRNCMP_KERNEL
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strncmp from being built
and linked
+ in the kernel, including NuttX's software-defined version of
the libc strncmp
or any other architecture-specific version of it. The
ROM-defined
version should be linked instead. This option is particularly
useful
when it's required that the ROM-defined libc to be used by the
kernel
@@ -151,15 +590,60 @@ config LIBC_PREVENT_STRING_KERNEL
NuttX's software-defined version of the libc or arch-specific
assembly version is built instead.
-config LIBC_PREVENT_STRING_USER
+config LIBC_PREVENT_STRNCMP_USER
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strncmp from being built
and linked
+ in the userspace, including NuttX's software-defined version of
the
+ libc strncmp or any other architecture-specific version of it.
A ROM-defined
+ version of the libc strncmp may be linked to the userspace by
the linker.
+
+config LIBC_PREVENT_STRNCPY_KERNEL
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strncpy from being built
and linked
+ in the kernel, including NuttX's software-defined version of
the libc strncpy
+ or any other architecture-specific version of it. The
ROM-defined
+ version should be linked instead. This option is particularly
useful
+ when it's required that the ROM-defined libc strncpy to be used
by the kernel
+ (for accessing some driver resource, for instance) but the
userspace
+ is forbidden to use the same ROM-defined versions. In this case,
+ NuttX's software-defined version of the libc strncpy or
arch-specific
+ assembly version is built instead.
+
+config LIBC_PREVENT_STRNCPY_USER
bool
default n
---help---
- Prevent any implementation of the libc from being built and
linked
+ Prevent any implementation of the libc strncpy from being built
and linked
in the userspace, including NuttX's software-defined version of
the
- libc or any other architecture-specific version of it. A
ROM-defined
- version of the libc may be linked to the userspace by the
linker.
+ libc strncpy or any other architecture-specific version of it.
A ROM-defined
+ version of the libc strncpy may be linked to the userspace by
the linker.
+config LIBC_PREVENT_STRRCHR_KERNEL
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strrchr from being built
and linked
+ in the kernel, including NuttX's software-defined version of
the libc strrchr
+ or any other architecture-specific version of it. The
ROM-defined
+ version should be linked instead. This option is particularly
useful
+ when it's required that the ROM-defined libc strrchr to be used
by the kernel
+ (for accessing some driver resource, for instance) but the
userspace
+ is forbidden to use the same ROM-defined versions. In this case,
+ NuttX's software-defined version of the libc strrchr or
arch-specific
+ assembly version is built instead.
+
+config LIBC_PREVENT_STRRCHR_USER
+ bool
+ default n
+ ---help---
+ Prevent any implementation of the libc strrchr from being built
and linked
+ in the userspace, including NuttX's software-defined version of
the
+ libc strrchr or any other architecture-specific version of it.
A ROM-defined
+ version of the libc strrchr may be linked to the userspace by
the linker.
# One or more the of above may be selected by architecture specific logic
diff --git a/libs/libc/machine/arm/armv7-a/gnu/arch_memchr.S
b/libs/libc/machine/arm/armv7-a/gnu/arch_memchr.S
index 9d2d39e68a..c98e483e22 100644
--- a/libs/libc/machine/arm/armv7-a/gnu/arch_memchr.S
+++ b/libs/libc/machine/arm/armv7-a/gnu/arch_memchr.S
@@ -68,7 +68,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMCHR
@ 2011-02-07 [email protected]
@ Extracted from local git a5b438d861
diff --git a/libs/libc/machine/arm/armv7-a/gnu/arch_memcpy.S
b/libs/libc/machine/arm/armv7-a/gnu/arch_memcpy.S
index 22a7a3556f..2bd393448e 100644
--- a/libs/libc/machine/arm/armv7-a/gnu/arch_memcpy.S
+++ b/libs/libc/machine/arm/armv7-a/gnu/arch_memcpy.S
@@ -35,7 +35,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMCPY
/*
* This memcpy routine is optimised for Cortex-A15 cores and takes advantage
diff --git a/libs/libc/machine/arm/armv7-a/gnu/arch_memmove.S
b/libs/libc/machine/arm/armv7-a/gnu/arch_memmove.S
index 058ccd9b39..7d9cf89bba 100644
--- a/libs/libc/machine/arm/armv7-a/gnu/arch_memmove.S
+++ b/libs/libc/machine/arm/armv7-a/gnu/arch_memmove.S
@@ -31,7 +31,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMMOVE
.thumb
.syntax unified
diff --git a/libs/libc/machine/arm/armv7-a/gnu/arch_memset.S
b/libs/libc/machine/arm/armv7-a/gnu/arch_memset.S
index 383c505fdc..d09d459af1 100644
--- a/libs/libc/machine/arm/armv7-a/gnu/arch_memset.S
+++ b/libs/libc/machine/arm/armv7-a/gnu/arch_memset.S
@@ -31,7 +31,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMSET
.arm
.syntax unified
diff --git a/libs/libc/machine/arm/armv7-a/gnu/arch_strcmp.S
b/libs/libc/machine/arm/armv7-a/gnu/arch_strcmp.S
index b5b45d09e9..1d8839d292 100644
--- a/libs/libc/machine/arm/armv7-a/gnu/arch_strcmp.S
+++ b/libs/libc/machine/arm/armv7-a/gnu/arch_strcmp.S
@@ -32,7 +32,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRCMP
#ifdef __ARMEB__
#define SHFT2LSB lsl
diff --git a/libs/libc/machine/arm/armv7-a/gnu/arch_strlen.S
b/libs/libc/machine/arm/armv7-a/gnu/arch_strlen.S
index 6ce9aaf866..022ce9e2e3 100644
--- a/libs/libc/machine/arm/armv7-a/gnu/arch_strlen.S
+++ b/libs/libc/machine/arm/armv7-a/gnu/arch_strlen.S
@@ -64,7 +64,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRLEN
#include "acle-compat.h"
diff --git a/libs/libc/machine/arm/armv7-m/gnu/arch_memchr.S
b/libs/libc/machine/arm/armv7-m/gnu/arch_memchr.S
index 76d60ccb14..2ea5b23028 100644
--- a/libs/libc/machine/arm/armv7-m/gnu/arch_memchr.S
+++ b/libs/libc/machine/arm/armv7-m/gnu/arch_memchr.S
@@ -68,7 +68,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMCHR
@ 2011-02-07 [email protected]
@ Extracted from local git a5b438d861
diff --git a/libs/libc/machine/arm/armv7-m/gnu/arch_memcpy.S
b/libs/libc/machine/arm/armv7-m/gnu/arch_memcpy.S
index 47a43115b0..630ece62b7 100644
--- a/libs/libc/machine/arm/armv7-m/gnu/arch_memcpy.S
+++ b/libs/libc/machine/arm/armv7-m/gnu/arch_memcpy.S
@@ -31,7 +31,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMCPY
/* This memcpy routine is optimised for Cortex-M3/M4 cores with/without
unaligned access.
diff --git a/libs/libc/machine/arm/armv7-m/gnu/arch_memmove.S
b/libs/libc/machine/arm/armv7-m/gnu/arch_memmove.S
index bd0d086d19..68032ae1da 100644
--- a/libs/libc/machine/arm/armv7-m/gnu/arch_memmove.S
+++ b/libs/libc/machine/arm/armv7-m/gnu/arch_memmove.S
@@ -31,7 +31,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMMOVE
.thumb
.syntax unified
diff --git a/libs/libc/machine/arm/armv7-m/gnu/arch_memset.S
b/libs/libc/machine/arm/armv7-m/gnu/arch_memset.S
index 921bc366fe..47c2925736 100644
--- a/libs/libc/machine/arm/armv7-m/gnu/arch_memset.S
+++ b/libs/libc/machine/arm/armv7-m/gnu/arch_memset.S
@@ -31,7 +31,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMSET
.thumb
.syntax unified
diff --git a/libs/libc/machine/arm/armv7-m/gnu/arch_strcmp.S
b/libs/libc/machine/arm/armv7-m/gnu/arch_strcmp.S
index dc81e73781..0c266bda0c 100644
--- a/libs/libc/machine/arm/armv7-m/gnu/arch_strcmp.S
+++ b/libs/libc/machine/arm/armv7-m/gnu/arch_strcmp.S
@@ -31,7 +31,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRCMP
/* Very similar to the generic code, but uses Thumb2 as implemented
in ARMv7-M. */
diff --git a/libs/libc/machine/arm/armv7-m/gnu/arch_strcpy.S
b/libs/libc/machine/arm/armv7-m/gnu/arch_strcpy.S
index c8345f80f2..2ad81c452c 100644
--- a/libs/libc/machine/arm/armv7-m/gnu/arch_strcpy.S
+++ b/libs/libc/machine/arm/armv7-m/gnu/arch_strcpy.S
@@ -20,7 +20,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRCPY
/* This strcpy borrowed some ideas from arch_strcmp.S(). */
diff --git a/libs/libc/machine/arm/armv7-m/gnu/arch_strlen.S
b/libs/libc/machine/arm/armv7-m/gnu/arch_strlen.S
index ec34cf6d6b..b40231fa3c 100644
--- a/libs/libc/machine/arm/armv7-m/gnu/arch_strlen.S
+++ b/libs/libc/machine/arm/armv7-m/gnu/arch_strlen.S
@@ -64,7 +64,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRLEN
#include "acle-compat.h"
diff --git a/libs/libc/machine/arm/armv7-r/gnu/arch_memchr.S
b/libs/libc/machine/arm/armv7-r/gnu/arch_memchr.S
index e6813f578b..5c6f334d00 100644
--- a/libs/libc/machine/arm/armv7-r/gnu/arch_memchr.S
+++ b/libs/libc/machine/arm/armv7-r/gnu/arch_memchr.S
@@ -68,7 +68,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMCHR
@ 2011-02-07 [email protected]
@ Extracted from local git a5b438d861
diff --git a/libs/libc/machine/arm/armv7-r/gnu/arch_memcpy.S
b/libs/libc/machine/arm/armv7-r/gnu/arch_memcpy.S
index 61d8e94adf..f05e58dbfc 100644
--- a/libs/libc/machine/arm/armv7-r/gnu/arch_memcpy.S
+++ b/libs/libc/machine/arm/armv7-r/gnu/arch_memcpy.S
@@ -35,7 +35,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMCPY
/*
* This memcpy routine is optimised for Cortex-A15 cores and takes advantage
diff --git a/libs/libc/machine/arm/armv7-r/gnu/arch_memmove.S
b/libs/libc/machine/arm/armv7-r/gnu/arch_memmove.S
index 73e3012776..b0a5da5378 100644
--- a/libs/libc/machine/arm/armv7-r/gnu/arch_memmove.S
+++ b/libs/libc/machine/arm/armv7-r/gnu/arch_memmove.S
@@ -31,7 +31,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMMOVE
.thumb
.syntax unified
diff --git a/libs/libc/machine/arm/armv7-r/gnu/arch_memset.S
b/libs/libc/machine/arm/armv7-r/gnu/arch_memset.S
index a1c601a2ca..f37d922158 100644
--- a/libs/libc/machine/arm/armv7-r/gnu/arch_memset.S
+++ b/libs/libc/machine/arm/armv7-r/gnu/arch_memset.S
@@ -31,7 +31,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMSET
.arm
.syntax unified
diff --git a/libs/libc/machine/arm/armv7-r/gnu/arch_strcmp.S
b/libs/libc/machine/arm/armv7-r/gnu/arch_strcmp.S
index b56e3a39e8..5a67b9e6ea 100644
--- a/libs/libc/machine/arm/armv7-r/gnu/arch_strcmp.S
+++ b/libs/libc/machine/arm/armv7-r/gnu/arch_strcmp.S
@@ -32,7 +32,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRCMP
#ifdef __ARMEB__
#define SHFT2LSB lsl
diff --git a/libs/libc/machine/arm/armv7-r/gnu/arch_strlen.S
b/libs/libc/machine/arm/armv7-r/gnu/arch_strlen.S
index f6ed3266ed..75deb3a05c 100644
--- a/libs/libc/machine/arm/armv7-r/gnu/arch_strlen.S
+++ b/libs/libc/machine/arm/armv7-r/gnu/arch_strlen.S
@@ -64,7 +64,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRLEN
#include "acle-compat.h"
diff --git a/libs/libc/machine/arm/armv8-m/gnu/arch_memchr.S
b/libs/libc/machine/arm/armv8-m/gnu/arch_memchr.S
index 424d3c8609..481c200511 100644
--- a/libs/libc/machine/arm/armv8-m/gnu/arch_memchr.S
+++ b/libs/libc/machine/arm/armv8-m/gnu/arch_memchr.S
@@ -68,7 +68,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMCHR
@ 2011-02-07 [email protected]
@ Extracted from local git a5b438d861
diff --git a/libs/libc/machine/arm/armv8-m/gnu/arch_memcpy.S
b/libs/libc/machine/arm/armv8-m/gnu/arch_memcpy.S
index ee0acbfeb8..bc84088a8d 100644
--- a/libs/libc/machine/arm/armv8-m/gnu/arch_memcpy.S
+++ b/libs/libc/machine/arm/armv8-m/gnu/arch_memcpy.S
@@ -31,7 +31,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMCPY
#ifndef __ARM_FEATURE_MVE
/* This memcpy routine is optimised for Cortex-M3/M4 cores with/without
diff --git a/libs/libc/machine/arm/armv8-m/gnu/arch_memmove.S
b/libs/libc/machine/arm/armv8-m/gnu/arch_memmove.S
index b2d64bf274..4789b0bd32 100644
--- a/libs/libc/machine/arm/armv8-m/gnu/arch_memmove.S
+++ b/libs/libc/machine/arm/armv8-m/gnu/arch_memmove.S
@@ -31,7 +31,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMMOVE
.thumb
.syntax unified
diff --git a/libs/libc/machine/arm/armv8-m/gnu/arch_memset.S
b/libs/libc/machine/arm/armv8-m/gnu/arch_memset.S
index f6f8b08a18..350c2897a3 100644
--- a/libs/libc/machine/arm/armv8-m/gnu/arch_memset.S
+++ b/libs/libc/machine/arm/armv8-m/gnu/arch_memset.S
@@ -57,7 +57,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMSET
.thumb
.syntax unified
diff --git a/libs/libc/machine/arm/armv8-m/gnu/arch_strcmp.S
b/libs/libc/machine/arm/armv8-m/gnu/arch_strcmp.S
index 1ae3ff61e7..07fb3f6396 100644
--- a/libs/libc/machine/arm/armv8-m/gnu/arch_strcmp.S
+++ b/libs/libc/machine/arm/armv8-m/gnu/arch_strcmp.S
@@ -31,7 +31,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRCMP
#ifdef __ARM_BIG_ENDIAN
#define S2LO lsl
diff --git a/libs/libc/machine/arm/armv8-m/gnu/arch_strlen.S
b/libs/libc/machine/arm/armv8-m/gnu/arch_strlen.S
index 4950056975..39375d83ea 100644
--- a/libs/libc/machine/arm/armv8-m/gnu/arch_strlen.S
+++ b/libs/libc/machine/arm/armv8-m/gnu/arch_strlen.S
@@ -64,7 +64,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRLEN
.macro def_fn f p2align=0
.text
diff --git a/libs/libc/machine/arm64/gnu/arch_memchr.S
b/libs/libc/machine/arm64/gnu/arch_memchr.S
index 9b21d68ce9..c764133ae2 100644
--- a/libs/libc/machine/arm64/gnu/arch_memchr.S
+++ b/libs/libc/machine/arm64/gnu/arch_memchr.S
@@ -31,7 +31,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMCHR
/* Assumptions:
*
diff --git a/libs/libc/machine/arm64/gnu/arch_memcmp.S
b/libs/libc/machine/arm64/gnu/arch_memcmp.S
index 6cf6533250..e8413de279 100644
--- a/libs/libc/machine/arm64/gnu/arch_memcmp.S
+++ b/libs/libc/machine/arm64/gnu/arch_memcmp.S
@@ -61,7 +61,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMCMP
/* Assumptions:
*
diff --git a/libs/libc/machine/arm64/gnu/arch_memcpy.S
b/libs/libc/machine/arm64/gnu/arch_memcpy.S
index 2582ca5046..14da7530cd 100644
--- a/libs/libc/machine/arm64/gnu/arch_memcpy.S
+++ b/libs/libc/machine/arm64/gnu/arch_memcpy.S
@@ -61,7 +61,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMCPY
/* Assumptions:
*
diff --git a/libs/libc/machine/arm64/gnu/arch_memmove.S
b/libs/libc/machine/arm64/gnu/arch_memmove.S
index 3919382d42..ce9dc50d35 100644
--- a/libs/libc/machine/arm64/gnu/arch_memmove.S
+++ b/libs/libc/machine/arm64/gnu/arch_memmove.S
@@ -61,7 +61,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMMOVE
/* Assumptions:
*
diff --git a/libs/libc/machine/arm64/gnu/arch_memset.S
b/libs/libc/machine/arm64/gnu/arch_memset.S
index de64b319a1..b43e353413 100644
--- a/libs/libc/machine/arm64/gnu/arch_memset.S
+++ b/libs/libc/machine/arm64/gnu/arch_memset.S
@@ -61,7 +61,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMSET
/* Assumptions:
*
diff --git a/libs/libc/machine/arm64/gnu/arch_strchr.S
b/libs/libc/machine/arm64/gnu/arch_strchr.S
index f7b4baf472..697369126a 100644
--- a/libs/libc/machine/arm64/gnu/arch_strchr.S
+++ b/libs/libc/machine/arm64/gnu/arch_strchr.S
@@ -31,7 +31,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRCHR
/* Assumptions:
*
diff --git a/libs/libc/machine/arm64/gnu/arch_strchrnul.S
b/libs/libc/machine/arm64/gnu/arch_strchrnul.S
index 335cfd53ce..41698d9a06 100644
--- a/libs/libc/machine/arm64/gnu/arch_strchrnul.S
+++ b/libs/libc/machine/arm64/gnu/arch_strchrnul.S
@@ -31,7 +31,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRCHRNUL
/* Assumptions:
*
diff --git a/libs/libc/machine/arm64/gnu/arch_strcmp.S
b/libs/libc/machine/arm64/gnu/arch_strcmp.S
index 225698a04e..feceb217fc 100644
--- a/libs/libc/machine/arm64/gnu/arch_strcmp.S
+++ b/libs/libc/machine/arm64/gnu/arch_strcmp.S
@@ -35,7 +35,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRCMP
/* Assumptions:
*
diff --git a/libs/libc/machine/arm64/gnu/arch_strcpy.S
b/libs/libc/machine/arm64/gnu/arch_strcpy.S
index 3acdff3460..3bb27ffc71 100644
--- a/libs/libc/machine/arm64/gnu/arch_strcpy.S
+++ b/libs/libc/machine/arm64/gnu/arch_strcpy.S
@@ -31,7 +31,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRCPY
/* Assumptions:
*
diff --git a/libs/libc/machine/arm64/gnu/arch_strlen.S
b/libs/libc/machine/arm64/gnu/arch_strlen.S
index 3795381c87..d52736008d 100644
--- a/libs/libc/machine/arm64/gnu/arch_strlen.S
+++ b/libs/libc/machine/arm64/gnu/arch_strlen.S
@@ -35,7 +35,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRLEN
/* Assumptions:
*
diff --git a/libs/libc/machine/arm64/gnu/arch_strncmp.S
b/libs/libc/machine/arm64/gnu/arch_strncmp.S
index af7e6442d9..bcf8a7dab1 100644
--- a/libs/libc/machine/arm64/gnu/arch_strncmp.S
+++ b/libs/libc/machine/arm64/gnu/arch_strncmp.S
@@ -35,7 +35,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRNCMP
/* Assumptions:
*
diff --git a/libs/libc/machine/arm64/gnu/arch_strnlen.S
b/libs/libc/machine/arm64/gnu/arch_strnlen.S
index a659f80598..f6013e648d 100644
--- a/libs/libc/machine/arm64/gnu/arch_strnlen.S
+++ b/libs/libc/machine/arm64/gnu/arch_strnlen.S
@@ -35,7 +35,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRNLEN
/* Assumptions:
*
diff --git a/libs/libc/machine/arm64/gnu/arch_strrchr.S
b/libs/libc/machine/arm64/gnu/arch_strrchr.S
index 212f20acc6..473447c293 100644
--- a/libs/libc/machine/arm64/gnu/arch_strrchr.S
+++ b/libs/libc/machine/arm64/gnu/arch_strrchr.S
@@ -31,7 +31,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRRCHR
/* Assumptions:
*
diff --git a/libs/libc/machine/risc-v/gnu/arch_memcpy.S
b/libs/libc/machine/risc-v/gnu/arch_memcpy.S
index 12198d1741..0a9a4fd8f8 100644
--- a/libs/libc/machine/risc-v/gnu/arch_memcpy.S
+++ b/libs/libc/machine/risc-v/gnu/arch_memcpy.S
@@ -24,7 +24,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMCPY
/************************************************************************************
* Public Symbols
diff --git a/libs/libc/machine/risc-v/gnu/arch_memset.S
b/libs/libc/machine/risc-v/gnu/arch_memset.S
index c4130754ea..a52ebf5f5f 100644
--- a/libs/libc/machine/risc-v/gnu/arch_memset.S
+++ b/libs/libc/machine/risc-v/gnu/arch_memset.S
@@ -15,7 +15,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMSET
.text
.global memset
diff --git a/libs/libc/machine/risc-v/gnu/arch_strcmp.S
b/libs/libc/machine/risc-v/gnu/arch_strcmp.S
index 178c139749..afc140ae1b 100644
--- a/libs/libc/machine/risc-v/gnu/arch_strcmp.S
+++ b/libs/libc/machine/risc-v/gnu/arch_strcmp.S
@@ -15,7 +15,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRCMP
#include "asm.h"
diff --git a/libs/libc/machine/xtensa/arch_memcpy.S
b/libs/libc/machine/xtensa/arch_memcpy.S
index d73e3b127b..a92e33d184 100644
--- a/libs/libc/machine/xtensa/arch_memcpy.S
+++ b/libs/libc/machine/xtensa/arch_memcpy.S
@@ -29,7 +29,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMCPY
/****************************************************************************
* Pre-processor Macros
diff --git a/libs/libc/machine/xtensa/arch_memmove.S
b/libs/libc/machine/xtensa/arch_memmove.S
index cbfb50c585..658635fd10 100644
--- a/libs/libc/machine/xtensa/arch_memmove.S
+++ b/libs/libc/machine/xtensa/arch_memmove.S
@@ -29,7 +29,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMMOVE
/****************************************************************************
* Pre-processor Macros
diff --git a/libs/libc/machine/xtensa/arch_memset.S
b/libs/libc/machine/xtensa/arch_memset.S
index d1a0ab7ee7..896766e3a0 100644
--- a/libs/libc/machine/xtensa/arch_memset.S
+++ b/libs/libc/machine/xtensa/arch_memset.S
@@ -29,7 +29,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_MEMSET
/****************************************************************************
* Public Functions
diff --git a/libs/libc/machine/xtensa/arch_strcmp.S
b/libs/libc/machine/xtensa/arch_strcmp.S
index 01ea8276cc..a3fabd8e07 100644
--- a/libs/libc/machine/xtensa/arch_strcmp.S
+++ b/libs/libc/machine/xtensa/arch_strcmp.S
@@ -29,7 +29,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRCMP
/****************************************************************************
* Pre-processor Macros
diff --git a/libs/libc/machine/xtensa/arch_strcpy.S
b/libs/libc/machine/xtensa/arch_strcpy.S
index 20b3076bf7..24efd7bc1b 100644
--- a/libs/libc/machine/xtensa/arch_strcpy.S
+++ b/libs/libc/machine/xtensa/arch_strcpy.S
@@ -29,7 +29,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRCPY
/****************************************************************************
* Public Functions
diff --git a/libs/libc/machine/xtensa/arch_strlen.S
b/libs/libc/machine/xtensa/arch_strlen.S
index 4e5e0765c7..27c9eb4687 100644
--- a/libs/libc/machine/xtensa/arch_strlen.S
+++ b/libs/libc/machine/xtensa/arch_strlen.S
@@ -29,7 +29,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRLEN
/****************************************************************************
* Public Functions
diff --git a/libs/libc/machine/xtensa/arch_strncpy.S
b/libs/libc/machine/xtensa/arch_strncpy.S
index 24bca9aa06..17625dcb92 100644
--- a/libs/libc/machine/xtensa/arch_strncpy.S
+++ b/libs/libc/machine/xtensa/arch_strncpy.S
@@ -29,7 +29,7 @@
#include "libc.h"
-#ifdef LIBC_BUILD_STRING
+#ifdef LIBC_BUILD_STRNCPY
/****************************************************************************
* Public Functions
diff --git a/libs/libc/string/lib_memchr.c b/libs/libc/string/lib_memchr.c
index d4b2f87f01..7eb42429b4 100644
--- a/libs/libc/string/lib_memchr.c
+++ b/libs/libc/string/lib_memchr.c
@@ -46,7 +46,7 @@
*
****************************************************************************/
-#if !defined(CONFIG_LIBC_ARCH_MEMCHR) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_MEMCHR) && defined(LIBC_BUILD_MEMCHR)
#undef memchr /* See mm/README.txt */
FAR void *memchr(FAR const void *s, int c, size_t n)
{
diff --git a/libs/libc/string/lib_memcmp.c b/libs/libc/string/lib_memcmp.c
index 532e9c54ef..7f3efadac1 100644
--- a/libs/libc/string/lib_memcmp.c
+++ b/libs/libc/string/lib_memcmp.c
@@ -32,7 +32,7 @@
* Public Functions
****************************************************************************/
-#if !defined(CONFIG_LIBC_ARCH_MEMCMP) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_MEMCMP) && defined(LIBC_BUILD_MEMCMP)
#undef memcmp /* See mm/README.txt */
no_builtin("memcmp")
int memcmp(FAR const void *s1, FAR const void *s2, size_t n)
diff --git a/libs/libc/string/lib_memcpy.c b/libs/libc/string/lib_memcpy.c
index 96c4952635..2d6748f83e 100644
--- a/libs/libc/string/lib_memcpy.c
+++ b/libs/libc/string/lib_memcpy.c
@@ -36,7 +36,7 @@
* Name: memcpy
****************************************************************************/
-#if !defined(CONFIG_LIBC_ARCH_MEMCPY) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_MEMCPY) && defined(LIBC_BUILD_MEMCPY)
#undef memcpy /* See mm/README.txt */
no_builtin("memcpy")
FAR void *memcpy(FAR void *dest, FAR const void *src, size_t n)
diff --git a/libs/libc/string/lib_memmove.c b/libs/libc/string/lib_memmove.c
index c2828dd468..aec9e60af6 100644
--- a/libs/libc/string/lib_memmove.c
+++ b/libs/libc/string/lib_memmove.c
@@ -32,7 +32,7 @@
* Public Functions
****************************************************************************/
-#if !defined(CONFIG_LIBC_ARCH_MEMMOVE) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_MEMMOVE) && defined(LIBC_BUILD_MEMMOVE)
#undef memmove /* See mm/README.txt */
no_builtin("memmove")
FAR void *memmove(FAR void *dest, FAR const void *src, size_t count)
diff --git a/libs/libc/string/lib_memset.c b/libs/libc/string/lib_memset.c
index 934b4c1f6d..8d9b5d528f 100644
--- a/libs/libc/string/lib_memset.c
+++ b/libs/libc/string/lib_memset.c
@@ -48,7 +48,7 @@
* Public Functions
****************************************************************************/
-#if !defined(CONFIG_LIBC_ARCH_MEMSET) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_MEMSET) && defined(LIBC_BUILD_MEMSET)
#undef memset /* See mm/README.txt */
no_builtin("memset")
FAR void *memset(FAR void *s, int c, size_t n)
diff --git a/libs/libc/string/lib_strcasecmp.c
b/libs/libc/string/lib_strcasecmp.c
index 7d7f5dd5c5..2e2c88525f 100644
--- a/libs/libc/string/lib_strcasecmp.c
+++ b/libs/libc/string/lib_strcasecmp.c
@@ -33,7 +33,7 @@
* Public Functions
****************************************************************************/
-#if !defined(CONFIG_LIBC_ARCH_STRCASECMP) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_STRCASECMP) && defined(LIBC_BUILD_STRCASECMP)
#undef strcasecmp /* See mm/README.txt */
int strcasecmp(FAR const char *cs, FAR const char *ct)
{
diff --git a/libs/libc/string/lib_strcat.c b/libs/libc/string/lib_strcat.c
index ae0e39baa5..6795c7e5ef 100644
--- a/libs/libc/string/lib_strcat.c
+++ b/libs/libc/string/lib_strcat.c
@@ -32,7 +32,7 @@
* Public Functions
****************************************************************************/
-#if !defined(CONFIG_LIBC_ARCH_STRCAT) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_STRCAT) && defined(LIBC_BUILD_STRCAT)
#undef strcat /* See mm/README.txt */
FAR char *strcat(FAR char *dest, FAR const char *src)
{
diff --git a/libs/libc/string/lib_strchr.c b/libs/libc/string/lib_strchr.c
index 2eab901ef6..a0a5d4ac75 100644
--- a/libs/libc/string/lib_strchr.c
+++ b/libs/libc/string/lib_strchr.c
@@ -46,7 +46,7 @@
*
****************************************************************************/
-#if !defined(CONFIG_LIBC_ARCH_STRCHR) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_STRCHR) && defined(LIBC_BUILD_STRCHR)
#undef strchr /* See mm/README.txt */
FAR char *strchr(FAR const char *s, int c)
{
diff --git a/libs/libc/string/lib_strchrnul.c b/libs/libc/string/lib_strchrnul.c
index 04ab71c3d9..b70be79f5d 100644
--- a/libs/libc/string/lib_strchrnul.c
+++ b/libs/libc/string/lib_strchrnul.c
@@ -46,7 +46,7 @@
*
****************************************************************************/
-#if !defined(CONFIG_LIBC_ARCH_STRCHRNUL) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_STRCHRNUL) && defined(LIBC_BUILD_STRCHRNUL)
#undef strchrnul /* See mm/README.txt */
FAR char *strchrnul(FAR const char *s, int c)
{
diff --git a/libs/libc/string/lib_strcmp.c b/libs/libc/string/lib_strcmp.c
index aad048eaaa..e4e09f7b9a 100644
--- a/libs/libc/string/lib_strcmp.c
+++ b/libs/libc/string/lib_strcmp.c
@@ -32,7 +32,7 @@
* Public Functions
****************************************************************************/
-#if !defined(CONFIG_LIBC_ARCH_STRCMP) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_STRCMP) && defined(LIBC_BUILD_STRCMP)
#undef strcmp /* See mm/README.txt */
int strcmp(FAR const char *cs, FAR const char *ct)
{
diff --git a/libs/libc/string/lib_strcpy.c b/libs/libc/string/lib_strcpy.c
index e8fa0cb462..bf11193d13 100644
--- a/libs/libc/string/lib_strcpy.c
+++ b/libs/libc/string/lib_strcpy.c
@@ -44,7 +44,7 @@
*
****************************************************************************/
-#if !defined(CONFIG_LIBC_ARCH_STRCPY) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_STRCPY) && defined(LIBC_BUILD_STRCPY)
#undef strcpy /* See mm/README.txt */
FAR char *strcpy(FAR char *dest, FAR const char *src)
{
diff --git a/libs/libc/string/lib_strlcat.c b/libs/libc/string/lib_strlcat.c
index c8e18f9475..6be5edd329 100644
--- a/libs/libc/string/lib_strlcat.c
+++ b/libs/libc/string/lib_strlcat.c
@@ -46,7 +46,7 @@
*
****************************************************************************/
-#if !defined(CONFIG_LIBC_ARCH_STRLCAT) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_STRLCAT) && defined(LIBC_BUILD_STRLCAT)
#undef strlcat /* See mm/README.txt */
size_t strlcat(FAR char *dst, FAR const char *src, size_t dsize)
{
diff --git a/libs/libc/string/lib_strlcpy.c b/libs/libc/string/lib_strlcpy.c
index fe70222eae..81f471f297 100644
--- a/libs/libc/string/lib_strlcpy.c
+++ b/libs/libc/string/lib_strlcpy.c
@@ -45,7 +45,7 @@
*
****************************************************************************/
-#if !defined(CONFIG_LIBC_ARCH_STRLCPY) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_STRLCPY) && defined(LIBC_BUILD_STRLCPY)
#undef strlcpy /* See mm/README.txt */
size_t strlcpy(FAR char *dst, FAR const char *src, size_t dsize)
{
diff --git a/libs/libc/string/lib_strlen.c b/libs/libc/string/lib_strlen.c
index 03cb3a53ed..da0fca9ea2 100644
--- a/libs/libc/string/lib_strlen.c
+++ b/libs/libc/string/lib_strlen.c
@@ -32,7 +32,7 @@
* Public Functions
****************************************************************************/
-#if !defined(CONFIG_LIBC_ARCH_STRLEN) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_STRLEN) && defined(LIBC_BUILD_STRLEN)
#undef strlen /* See mm/README.txt */
size_t strlen(FAR const char *s)
{
diff --git a/libs/libc/string/lib_strncasecmp.c
b/libs/libc/string/lib_strncasecmp.c
index ab3c4595f4..efd18df965 100644
--- a/libs/libc/string/lib_strncasecmp.c
+++ b/libs/libc/string/lib_strncasecmp.c
@@ -34,7 +34,7 @@
* Public Functions
****************************************************************************/
-#if !defined(CONFIG_LIBC_ARCH_STRNCASECMP) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_STRNCASECMP) && defined(LIBC_BUILD_STRNCASECMP)
#undef strncasecmp /* See mm/README.txt */
int strncasecmp(FAR const char *cs, FAR const char *ct, size_t nb)
{
diff --git a/libs/libc/string/lib_strncat.c b/libs/libc/string/lib_strncat.c
index 5e5687a779..98ff265294 100644
--- a/libs/libc/string/lib_strncat.c
+++ b/libs/libc/string/lib_strncat.c
@@ -32,7 +32,7 @@
* Public Functions
****************************************************************************/
-#if !defined(CONFIG_LIBC_ARCH_STRNCAT) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_STRNCAT) && defined(LIBC_BUILD_STRNCAT)
#undef strncat /* See mm/README.txt */
FAR char *strncat(FAR char *dest, FAR const char *src, size_t n)
{
diff --git a/libs/libc/string/lib_strncmp.c b/libs/libc/string/lib_strncmp.c
index 58b6fbfde2..3028e1d459 100644
--- a/libs/libc/string/lib_strncmp.c
+++ b/libs/libc/string/lib_strncmp.c
@@ -32,7 +32,7 @@
* Public Functions
****************************************************************************/
-#if !defined(CONFIG_LIBC_ARCH_STRNCMP) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_STRNCMP) && defined(LIBC_BUILD_STRNCMP)
#undef strncmp /* See mm/README.txt */
int strncmp(FAR const char *cs, FAR const char *ct, size_t nb)
{
diff --git a/libs/libc/string/lib_strncpy.c b/libs/libc/string/lib_strncpy.c
index 7200ebadec..6bfd2a599d 100644
--- a/libs/libc/string/lib_strncpy.c
+++ b/libs/libc/string/lib_strncpy.c
@@ -53,7 +53,7 @@
*
****************************************************************************/
-#if !defined(CONFIG_LIBC_ARCH_STRNCPY) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_STRNCPY) && defined(LIBC_BUILD_STRNCPY)
#undef strncpy /* See mm/README.txt */
FAR char *strncpy(FAR char *dest, FAR const char *src, size_t n)
{
diff --git a/libs/libc/string/lib_strnlen.c b/libs/libc/string/lib_strnlen.c
index e9c5a141a3..44cf5cc648 100644
--- a/libs/libc/string/lib_strnlen.c
+++ b/libs/libc/string/lib_strnlen.c
@@ -32,7 +32,7 @@
* Public Functions
****************************************************************************/
-#if !defined(CONFIG_LIBC_ARCH_STRNLEN) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_STRNLEN) && defined(LIBC_BUILD_STRNLEN)
#undef strnlen /* See mm/README.txt */
size_t strnlen(FAR const char *s, size_t maxlen)
{
diff --git a/libs/libc/string/lib_strrchr.c b/libs/libc/string/lib_strrchr.c
index b8c3c05b5f..526f802494 100644
--- a/libs/libc/string/lib_strrchr.c
+++ b/libs/libc/string/lib_strrchr.c
@@ -36,7 +36,7 @@
* occurrence of the character c in the string s.
*/
-#if !defined(CONFIG_LIBC_ARCH_STRRCHR) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_STRRCHR) && defined(LIBC_BUILD_STRRCHR)
#undef strrchr /* See mm/README.txt */
FAR char *strrchr(FAR const char *s, int c)
{
diff --git a/libs/libc/string/lib_vikmemcpy.c b/libs/libc/string/lib_vikmemcpy.c
index ef1f99afed..8356358fd0 100644
--- a/libs/libc/string/lib_vikmemcpy.c
+++ b/libs/libc/string/lib_vikmemcpy.c
@@ -64,7 +64,7 @@
#include "libc.h"
-#if !defined(CONFIG_LIBC_ARCH_MEMCPY) && defined(LIBC_BUILD_STRING)
+#if !defined(CONFIG_LIBC_ARCH_MEMCPY) && defined(LIBC_BUILD_MEMCPY)
/****************************************************************************
* Pre-processor Definitions