diff --git a/lib/libc/BUILD.gn b/lib/libc/BUILD.gn index b2978cba0e23db4092a1d45aa5a70eda08d2df7f..8169ff36f38513f7ffd27e13a58b9e2e046341e8 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 1890881306d0b825efda09c0cec733f75a967605..14432444ae511ea36eded6c992316d395ffbb5eb 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