diff --git a/lib/libc/BUILD.gn b/lib/libc/BUILD.gn index b2978cba..8169ff36 100644 --- a/lib/libc/BUILD.gn +++ b/lib/libc/BUILD.gn @@ -61,6 +61,13 @@ kernel_module(module_name) { "$OPTRTDIR/string/arm/strcpy.c", "$OPTRTDIR/string/arm/strlen-armv6t2.S", ] + asmflags = [ + "-D__strlen_armv6t2=strlen", + "-D__strcpy_arm=strcpy", + "-D__strcmp_arm=strcmp", + "-D__memcpy_arm=memcpy", + "-D__memchr_arm=memchr", + ] sources += [ "src/arch/arm/memset.S", "src/arch/arm/memcmp.S", diff --git a/lib/libc/Makefile b/lib/libc/Makefile index 18908813..14432444 100644 --- a/lib/libc/Makefile +++ b/lib/libc/Makefile @@ -35,6 +35,14 @@ LOCAL_SRCS += \ $(OPTRTDIR)/string/arm/strcmp.S \ $(OPTRTDIR)/string/arm/strcpy.c \ $(OPTRTDIR)/string/arm/strlen-armv6t2.S + +LOCAL_CMACRO = \ + -D__strlen_armv6t2=strlen \ + -D__strcpy_arm=strcpy \ + -D__strcmp_arm=strcmp \ + -D__memcpy_arm=memcpy \ + -D__memchr_arm=memchr + # Replace the general srcs of the same name with specially optimized srcs LOCAL_SRCS += $(LOCAL_OPT_SRCS) LOCAL_SRCS := $(filter-out $(LOCAL_FILTER_SRCS),$(LOCAL_SRCS)) @@ -47,7 +55,7 @@ LOCAL_INCLUDE := \ LOCAL_INCLUDE += $(addprefix -I$(MUSLPORTINGDIR)/, src/include src/internal) -LOCAL_FLAGS := $(LOCAL_INCLUDE) $(LITEOS_GCOV_OPTS) +LOCAL_FLAGS := $(LOCAL_INCLUDE) $(LITEOS_GCOV_OPTS) $(LOCAL_CMACRO) ifeq ($(LOSCFG_COMPILER_CLANG_LLVM), y) LOCAL_FLAGS +=-Wno-char-subscripts -Wno-unknown-pragmas else