summaryrefslogtreecommitdiff
path: root/libc/string
diff options
context:
space:
mode:
authorPeter S. Mazinger <ps.m@gmx.net>2005-10-25 22:17:39 +0000
committerPeter S. Mazinger <ps.m@gmx.net>2005-10-25 22:17:39 +0000
commita80fc77b658a7883df95ac41ad83ac9ff7c8ff07 (patch)
tree3edbcb812b876e0ba1424b229d50e9c04a2b0d4a /libc/string
parent7ce8f67d27885ea6b1cba2c43e5edc9f1dc17f0f (diff)
All Makefile.in's. Only arm/i386/mips/powerpc/x86_64 are done, the other archs lack proper crt1. The Makefiles in extra/scripts are intended to be linked into each dir, where it is necessary to build locally.
Diffstat (limited to 'libc/string')
-rw-r--r--libc/string/Makefile.in95
-rw-r--r--libc/string/arm/Makefile.in28
-rw-r--r--libc/string/frv/Makefile.in28
-rw-r--r--libc/string/generic/Makefile.in34
-rw-r--r--libc/string/i386/Makefile.in36
-rw-r--r--libc/string/mips/Makefile.in27
-rw-r--r--libc/string/powerpc/Makefile.in34
-rw-r--r--libc/string/sh64/Makefile.in28
-rw-r--r--libc/string/sparc/Makefile.in28
-rw-r--r--libc/string/x86_64/Makefile.in28
10 files changed, 366 insertions, 0 deletions
diff --git a/libc/string/Makefile.in b/libc/string/Makefile.in
new file mode 100644
index 000000000..16acafbe1
--- /dev/null
+++ b/libc/string/Makefile.in
@@ -0,0 +1,95 @@
+# Makefile for uClibc
+#
+# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+#
+# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
+#
+
+# order is relevant
+-include $(top_srcdir)libc/string/$(TARGET_ARCH)/Makefile.in
+include $(top_srcdir)libc/string/generic/Makefile.in
+
+MSRC:=wstring.c
+MOBJ:= basename.o bcopy.o bzero.o dirname.o ffs.o memccpy.o memchr.o memcmp.o \
+ memcpy.o memmove.o mempcpy.o memrchr.o memset.o rawmemchr.o stpcpy.o \
+ stpncpy.o strcasecmp.o strcasestr.o strcat.o strchrnul.o strchr.o \
+ strcmp.o strcpy.o strcspn.o strdup.o strlen.o strncasecmp.o strncat.o \
+ strncmp.o strncpy.o strndup.o strnlen.o strpbrk.o strrchr.o strsep.o \
+ strspn.o strstr.o strtok.o strtok_r.o strerror.o __xpg_strerror_r.o \
+ _string_syserrmsgs.o __glibc_strerror_r.o \
+ _string_syssigmsgs.o sys_siglist.o strsignal.o psignal.o \
+ __xpg_basename.o strlcat.o strlcpy.o sys_errlist.o memmem.o
+
+MOBJW=
+ifeq ($(UCLIBC_HAS_WCHAR),y)
+MOBJW= wcscasecmp.o wcscat.o wcschrnul.o wcschr.o wcscmp.o wcscpy.o wcscspn.o \
+ wcsdup.o wcslen.o wcsncasecmp.o wcsncat.o wcsncmp.o wcsncpy.o \
+ wcsnlen.o wcspbrk.o wcsrchr.o wcsspn.o wcsstr.o wcstok.o wmemchr.o \
+ wmemcmp.o wmemcpy.o wmemmove.o wmempcpy.o wmemset.o wcpcpy.o wcpncpy.o \
+ __wcslcpy.o \
+ wcsxfrm.o strxfrm.o # wcscoll strcoll.o
+endif
+
+MOBJx=
+MOBJWx=
+ifeq ($(UCLIBC_HAS_XLOCALE),y)
+MOBJx+=strcasecmp_l.o strncasecmp_l.o
+ifeq ($(UCLIBC_HAS_WCHAR),y)
+MOBJWx+=wcscasecmp_l.o wcsncasecmp_l.o wcsxfrm_l.o strxfrm_l.o
+endif
+endif
+
+#ffsl ffsll
+
+ifeq ($(UCLIBC_HAS_STRING_ARCH_OPT),y)
+ifneq ($(strip $(STRING_ARCH_OBJS)),)
+MOBJ:=$(filter-out $(notdir $(STRING_ARCH_OBJS)),$(MOBJ))
+endif
+endif
+
+ifeq ($(UCLIBC_HAS_STRING_GENERIC_OPT),y)
+ifneq ($(strip $(STRING_GENERIC_OBJS)),)
+MOBJ:=$(filter-out $(notdir $(STRING_GENERIC_OBJS)),$(MOBJ))
+endif
+endif
+
+STRING_DIR:=$(top_srcdir)libc/string
+STRING_OUT:=$(top_builddir)libc/string
+
+STRING_MSRC:=$(patsubst %.c,$(STRING_DIR)/%.c,$(MSRC))
+STRING_MOBJ:=$(patsubst %.o,$(STRING_OUT)/%.o,$(MOBJ))
+STRING_MOBJW=$(patsubst %.o,$(STRING_OUT)/%.o,$(MOBJW))
+STRING_MOBJx=$(patsubst %.o,$(STRING_OUT)/%.o,$(MOBJx))
+STRING_MOBJWx=$(patsubst %.o,$(STRING_OUT)/%.o,$(MOBJWx))
+
+#STRING_DEF:=$(patsubst %,-DL_%,$(subst .o,,$(notdir $(STRING_MOBJ))))
+
+STRING_Wx=$(STRING_MOBJW) $(STRING_MOBJx) $(STRING_MOBJWx)
+STRING_OBJS:=$(STRING_MOBJ) $(STRING_Wx)
+
+$(STRING_MOBJ) $(STRING_MOBJ:.o=.os): $(STRING_MSRC)
+ $(compile.m)
+
+$(STRING_MOBJW) $(STRING_MOBJW:.o=.os): $(STRING_MSRC)
+ $(compile.m) -DWANT_WIDE
+
+$(STRING_MOBJx) $(STRING_MOBJx:.o=.os): $(STRING_MSRC)
+ $(compile.m) -D__UCLIBC_DO_XLOCALE
+
+$(STRING_MOBJWx) $(STRING_MOBJWx:.o=.os): $(STRING_MSRC)
+ $(compile.m) -DWANT_WIDE -D__UCLIBC_DO_XLOCALE
+
+libc-a-y+=$(STRING_OBJS)
+libc-a-pic-y+=$(STRING_OBJS:.o=.os)
+libc-so-y+=$(STRING_OBJS:.o=.os)
+
+# multi does not work here, because arch/Makefile.in uses the same L_* defines
+#CFLAGS-multi-y+=$(STRING_DEF)
+#libc-multi-y+=$(STRING_MSRC)
+#libc-nomulti-y+=$(STRING_Wx)
+libc-nomulti-y+=$(STRING_OBJS)
+
+objclean-y+=string_objclean
+
+string_objclean:
+ $(RM) $(STRING_OUT)/{,*/}*.{o,os}
diff --git a/libc/string/arm/Makefile.in b/libc/string/arm/Makefile.in
new file mode 100644
index 000000000..0f9502d14
--- /dev/null
+++ b/libc/string/arm/Makefile.in
@@ -0,0 +1,28 @@
+# Makefile for uClibc
+#
+# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+#
+# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
+#
+
+SSRC:= _memcpy.S bcopy.S bzero.S memcmp.S memcpy.S memmove.S memset.S \
+ strcmp.S strlen.S strncmp.S
+
+STRING_ARCH_DIR:=$(top_srcdir)libc/string/arm
+STRING_ARCH_OUT:=$(top_builddir)libc/string/arm
+
+STRING_ARCH_SRC:=$(patsubst %.S,$(STRING_ARCH_DIR)/%.S,$(SSRC))
+STRING_ARCH_OBJ:=$(patsubst %.S,$(STRING_ARCH_OUT)/%.o,$(SSRC))
+
+STRING_ARCH_OBJS:=$(STRING_ARCH_OBJ)
+
+libc-a-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS)
+libc-a-pic-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS:.o=.os)
+libc-so-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS:.o=.os)
+
+libc-multi-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_SRC)
+
+objclean-y+=string_arch_objclean
+
+string_arch_objclean:
+ $(RM) $(STRING_ARCH_OUT)/*.{o,os}
diff --git a/libc/string/frv/Makefile.in b/libc/string/frv/Makefile.in
new file mode 100644
index 000000000..649998325
--- /dev/null
+++ b/libc/string/frv/Makefile.in
@@ -0,0 +1,28 @@
+# Makefile for uClibc
+#
+# Copyright (C) 2004 Alexandre Oliva <aoliva@redhat.com>
+# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+#
+# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
+#
+
+SSRC:=memcpy.S memset.S
+
+STRING_ARCH_DIR:=$(top_srcdir)libc/string/frv
+STRING_ARCH_OUT:=$(top_builddir)libc/string/frv
+
+STRING_ARCH_SRC:=$(patsubst %.S,$(STRING_ARCH_DIR)/%.S,$(SSRC))
+STRING_ARCH_OBJ:=$(patsubst %.S,$(STRING_ARCH_OUT)/%.o,$(SSRC))
+
+STRING_ARCH_OBJS:=$(STRING_ARCH_OBJ)
+
+libc-a-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS)
+libc-a-pic-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS:.o=.os)
+libc-so-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS:.o=.os)
+
+libc-multi-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_SRC)
+
+objclean-y+=string_arch_objclean
+
+string_arch_objclean:
+ $(RM) $(STRING_ARCH_OUT)/*.{o,os}
diff --git a/libc/string/generic/Makefile.in b/libc/string/generic/Makefile.in
new file mode 100644
index 000000000..aef1ac882
--- /dev/null
+++ b/libc/string/generic/Makefile.in
@@ -0,0 +1,34 @@
+# Makefile for uClibc
+#
+# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+#
+# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
+#
+
+STRING_GENERIC_DIR:=$(top_srcdir)libc/string/generic
+STRING_GENERIC_OUT:=$(top_builddir)libc/string/generic
+
+STRING_GENERIC_SRC:=$(wildcard $(STRING_GENERIC_DIR)/*.c)
+MOBJ:=$(patsubst $(STRING_GENERIC_DIR)/%.c,%.o,$(STRING_GENERIC_SRC))
+
+ifeq ($(UCLIBC_HAS_STRING_ARCH_OPT),y)
+ifneq ($(strip $(STRING_ARCH_OBJS)),)
+MOBJ:=$(filter-out $(notdir $(STRING_ARCH_OBJS)),$(MOBJ))
+endif
+endif
+
+STRING_GENERIC_OBJ:=$(patsubst %.o,$(STRING_GENERIC_OUT)/%.o,$(MOBJ))
+
+STRING_GENERIC_OBJS:=$(STRING_GENERIC_OBJ)
+
+libc-a-$(UCLIBC_HAS_STRING_GENERIC_OPT)+=$(STRING_GENERIC_OBJS)
+libc-a-pic-$(UCLIBC_HAS_STRING_GENERIC_OPT)+=$(STRING_GENERIC_OBJS:.o=.os)
+libc-so-$(UCLIBC_HAS_STRING_GENERIC_OPT)+=$(STRING_GENERIC_OBJS:.o=.os)
+
+#libc-multi-$(UCLIBC_HAS_STRING_GENERIC_OPT)+=$(STRING_GENERIC_SRC)
+libc-nomulti-$(UCLIBC_HAS_STRING_GENERIC_OPT)+=$(STRING_GENERIC_OBJS)
+
+objclean-y+=string_generic_objclean
+
+string_generic_objclean:
+ $(RM) $(STRING_GENERIC_OUT)/*.{o,os}
diff --git a/libc/string/i386/Makefile.in b/libc/string/i386/Makefile.in
new file mode 100644
index 000000000..2935c8355
--- /dev/null
+++ b/libc/string/i386/Makefile.in
@@ -0,0 +1,36 @@
+# Makefile for uClibc
+#
+# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+#
+# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
+#
+
+MSRC:=string.c
+MOBJ:= strcpy.o strncpy.o strcat.o strncat.o strcmp.o \
+ strncmp.o strchr.o strrchr.o strlen.o strnlen.o \
+ memcpy.o memmove.o memchr.o memset.o
+
+STRING_ARCH_DIR:=$(top_srcdir)libc/string/i386
+STRING_ARCH_OUT:=$(top_builddir)libc/string/i386
+
+STRING_ARCH_MSRC:=$(patsubst %.c,$(STRING_ARCH_DIR)/%.c,$(MSRC))
+STRING_ARCH_MOBJ:=$(patsubst %.o,$(STRING_ARCH_OUT)/%.o,$(MOBJ))
+
+STRING_ARCH_OBJS:=$(STRING_ARCH_MOBJ)
+
+STRING_ARCH_DEF:=$(patsubst %,-DL_%,$(subst .o,,$(notdir $(STRING_ARCH_OBJS))))
+
+$(STRING_ARCH_MOBJ) $(STRING_ARCH_MOBJ:.o=.os): $(STRING_ARCH_MSRC)
+ $(compile.m)
+
+libc-a-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS)
+libc-a-pic-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS:.o=.os)
+libc-so-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS:.o=.os)
+
+CFLAGS-multi-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_DEF)
+libc-multi-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_MSRC)
+
+objclean-y+=string_arch_objclean
+
+string_arch_objclean:
+ $(RM) $(STRING_ARCH_OUT)/*.{o,os}
diff --git a/libc/string/mips/Makefile.in b/libc/string/mips/Makefile.in
new file mode 100644
index 000000000..2ba596b95
--- /dev/null
+++ b/libc/string/mips/Makefile.in
@@ -0,0 +1,27 @@
+# Makefile for uClibc
+#
+# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+#
+# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
+#
+
+SSRC:=memcpy.S memset.S
+
+STRING_ARCH_DIR:=$(top_srcdir)libc/string/mips
+STRING_ARCH_OUT:=$(top_builddir)libc/string/mips
+
+STRING_ARCH_SRC:=$(patsubst %.S,$(STRING_ARCH_DIR)/%.S,$(SSRC))
+STRING_ARCH_OBJ:=$(patsubst %.S,$(STRING_ARCH_OUT)/%.o,$(SSRC))
+
+STRING_ARCH_OBJS:=$(STRING_ARCH_OBJ)
+
+libc-a-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS)
+libc-a-pic-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS:.o=.os)
+libc-so-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS:.o=.os)
+
+libc-multi-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_SRC)
+
+objclean-y+=string_arch_objclean
+
+string_arch_objclean:
+ $(RM) $(STRING_ARCH_OUT)/*.{o,os}
diff --git a/libc/string/powerpc/Makefile.in b/libc/string/powerpc/Makefile.in
new file mode 100644
index 000000000..d22312fe0
--- /dev/null
+++ b/libc/string/powerpc/Makefile.in
@@ -0,0 +1,34 @@
+# Makefile for uClibc
+#
+# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+#
+# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
+#
+
+MSRC:=string.c
+MOBJ:=memcpy.o memmove.o memset.o bzero.o
+
+STRING_ARCH_DIR:=$(top_srcdir)libc/string/powerpc
+STRING_ARCH_OUT:=$(top_builddir)libc/string/powerpc
+
+STRING_ARCH_MSRC:=$(patsubst %.c,$(STRING_ARCH_DIR)/%.c,$(MSRC))
+STRING_ARCH_MOBJ:=$(patsubst %.o,$(STRING_ARCH_OUT)/%.o,$(MOBJ))
+
+STRING_ARCH_OBJS:=$(STRING_ARCH_MOBJ)
+
+STRING_ARCH_DEF:=$(patsubst %,-DL_%,$(subst .o,,$(notdir $(STRING_ARCH_MOBJ))))
+
+$(STRING_ARCH_MOBJ) $(STRING_ARCH_MOBJ:.o=.os): $(STRING_ARCH_MSRC)
+ $(compile.m)
+
+libc-a-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS)
+libc-a-pic-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS:.o=.os)
+libc-so-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS:.o=.os)
+
+CFLAGS-multi-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_DEF)
+libc-multi-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_MSRC)
+
+objclean-y+=string_arch_objclean
+
+string_arch_objclean:
+ $(RM) $(STRING_ARCH_OUT)/*.{o,os}
diff --git a/libc/string/sh64/Makefile.in b/libc/string/sh64/Makefile.in
new file mode 100644
index 000000000..1b728958a
--- /dev/null
+++ b/libc/string/sh64/Makefile.in
@@ -0,0 +1,28 @@
+# Makefile for uClibc
+#
+# Copyright (C) 2003 Paul Mundt <lethal@linux-sh.org>
+# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+#
+# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
+#
+
+SSRC:=memcpy.S memset.S strcpy.S strlen.S
+
+STRING_ARCH_DIR:=$(top_srcdir)libc/string/sh64
+STRING_ARCH_OUT:=$(top_builddir)libc/string/sh64
+
+STRING_ARCH_SRC:=$(patsubst %.S,$(STRING_ARCH_DIR)/%.S,$(SSRC))
+STRING_ARCH_OBJ:=$(patsubst %.S,$(STRING_ARCH_OUT)/%.o,$(SSRC))
+
+STRING_ARCH_OBJS:=$(STRING_ARCH_OBJ)
+
+libc-a-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS)
+libc-a-pic-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS:.o=.os)
+libc-so-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS:.o=.os)
+
+libc-multi-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_SRC)
+
+objclean-y+=string_arch_objclean
+
+string_arch_objclean:
+ $(RM) $(STRING_ARCH_OUT)/*.{o,os}
diff --git a/libc/string/sparc/Makefile.in b/libc/string/sparc/Makefile.in
new file mode 100644
index 000000000..563271518
--- /dev/null
+++ b/libc/string/sparc/Makefile.in
@@ -0,0 +1,28 @@
+# Makefile for uClibc
+#
+# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+#
+# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
+#
+
+STRING_ARCH_DIR:=$(top_srcdir)libc/string/sparc
+STRING_ARCH_OUT:=$(top_builddir)libc/string/sparc
+
+STRING_ARCH_SRC:=$(wildcard $(STRING_ARCH_DIR)/*.c)
+STRING_ARCH_OBJ:=$(patsubst $(STRING_ARCH_DIR)/%.c,$(STRING_ARCH_OUT)/%.o,$(STRING_ARCH_SRC))
+
+STRING_ARCH_SSRC:=$(wildcard $(STRING_ARCH_DIR)/*.S)
+STRING_ARCH_SOBJ:=$(patsubst $(STRING_ARCH_DIR)/%.S,$(STRING_ARCH_OUT)/%.o,$(STRING_ARCH_SSRC))
+
+STRING_ARCH_OBJS:=$(STRING_ARCH_OBJ) $(STRING_ARCH_SOBJ)
+
+libc-a-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS)
+libc-a-pic-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS:.o=.os)
+libc-so-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS:.o=.os)
+
+libc-multi-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_SRC) $(STRING_ARCH_SSRC)
+
+objclean-y+=string_arch_objclean
+
+string_arch_objclean:
+ $(RM) $(STRING_ARCH_OUT)/*.{o,os}
diff --git a/libc/string/x86_64/Makefile.in b/libc/string/x86_64/Makefile.in
new file mode 100644
index 000000000..83cc470c9
--- /dev/null
+++ b/libc/string/x86_64/Makefile.in
@@ -0,0 +1,28 @@
+# Makefile for uClibc
+#
+# Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
+#
+# Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
+#
+
+STRING_ARCH_DIR:=$(top_srcdir)libc/string/x86_64
+STRING_ARCH_OUT:=$(top_builddir)libc/string/x86_64
+
+STRING_ARCH_SRC:=$(wildcard $(STRING_ARCH_DIR)/*.c)
+STRING_ARCH_OBJ:=$(patsubst $(STRING_ARCH_DIR)/%.c,$(STRING_ARCH_OUT)/%.o,$(STRING_ARCH_SRC))
+
+STRING_ARCH_SSRC:=$(wildcard $(STRING_ARCH_DIR)/*.S)
+STRING_ARCH_SOBJ:=$(patsubst $(STRING_ARCH_DIR)/%.S,$(STRING_ARCH_OUT)/%.o,$(STRING_ARCH_SSRC))
+
+STRING_ARCH_OBJS:=$(STRING_ARCH_OBJ) $(STRING_ARCH_SOBJ)
+
+libc-a-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS)
+libc-a-pic-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS:.o=.os)
+libc-so-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_OBJS:.o=.os)
+
+libc-multi-$(UCLIBC_HAS_STRING_ARCH_OPT)+=$(STRING_ARCH_SRC) $(STRING_ARCH_SSRC)
+
+objclean-y+=string_x86_64_objclean
+
+string_x86_64_objclean:
+ $(RM) $(STRING_ARCH_OUT)/*.{o,os}