summaryrefslogtreecommitdiff
path: root/libc/string/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'libc/string/Makefile')
-rw-r--r--libc/string/Makefile55
1 files changed, 42 insertions, 13 deletions
diff --git a/libc/string/Makefile b/libc/string/Makefile
index c7a4c128a..0d034d1d6 100644
--- a/libc/string/Makefile
+++ b/libc/string/Makefile
@@ -24,27 +24,48 @@
TOPDIR=../../
include $(TOPDIR)Rules.mak
+MSRCW= wstring.c
+MOBJW= 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 \
+ __xpg_basename.o # strcoll.o strerror.o strxfrm.o
+
+MOBJW2= 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
+
MSRC=string.c
-MOBJ=strlen.o strcat.o strcpy.o strchr.o strcmp.o strncat.o strncpy.o \
- strncmp.o strrchr.o strdup.o strndup.o memcpy.o memccpy.o memset.o \
- memmove.o memcmp.o memchr.o ffs.o strnlen.o strxfrm.o stpcpy.o \
- stpncpy.o memrchr.o mempcpy.o
+# MOBJ=strlen.o strcat.o strcpy.o strchr.o strcmp.o strncat.o strncpy.o \
+# strncmp.o strrchr.o strdup.o strndup.o memcpy.o memccpy.o memset.o \
+# memmove.o memcmp.o memchr.o ffs.o strnlen.o strxfrm.o stpcpy.o \
+# stpncpy.o memrchr.o mempcpy.o
+MOBJ=strxfrm.o
-ifeq ($(HAS_LOCALE),true)
- MOBJ += strcoll.o
-endif
+# ifeq ($(HAS_LOCALE),true)
+# MOBJ += strcoll.o
+# endif
MSRC1=strsignal.c
MOBJ1=strsignal.o psignal.o
-MSRC2=strstr.c
-MOBJ2=strstr.o strcasestr.o
+MOBJ2=
+#MSRC2=strstr.c
+#MOBJ2=strstr.o strcasestr.o
-CSRC=strpbrk.c strsep.c strtok.c strtok_r.c strcspn.c \
- strspn.c strcasecmp.c strncasecmp.c strerror.c bcopy.c bzero.c \
- bcmp.c sys_errlist.c dirname.c basename.c
+# CSRC=strpbrk.c strsep.c strtok.c strtok_r.c strcspn.c \
+# strspn.c strcasecmp.c strncasecmp.c strerror.c bcopy.c bzero.c \
+# bcmp.c sys_errlist.c dirname.c basename.c
+CSRC=strerror.c sys_errlist.c
COBJS=$(patsubst %.c,%.o, $(CSRC))
-OBJS=$(MOBJ) $(MOBJ1) $(MOBJ2) $(COBJS)
+OBJS=$(MOBJ) $(MOBJ1) $(MOBJ2) $(COBJS) $(MOBJW)
+
+ifeq ($(HAS_WCHAR),true)
+ OBJS += $(MOBJW2)
+endif
all: $(OBJS) $(LIBC)
@@ -53,6 +74,14 @@ $(LIBC): ar-target
ar-target: $(OBJS)
$(AR) $(ARFLAGS) $(LIBC) $(OBJS)
+$(MOBJW): $(MSRCW)
+ $(CC) $(CFLAGS) -DL_$* $< -c -o $*.o
+ $(STRIPTOOL) -x -R .note -R .comment $*.o
+
+$(MOBJW2): $(MSRCW)
+ $(CC) $(CFLAGS) -DWANT_WIDE -DL_$* $< -c -o $*.o
+ $(STRIPTOOL) -x -R .note -R .comment $*.o
+
$(MOBJ): $(MSRC)
$(CC) $(CFLAGS) -DL_$* $< -c -o $*.o
$(STRIPTOOL) -x -R .note -R .comment $*.o