From 167d5e33fcb821e51e2f9dcf460591737c3c7972 Mon Sep 17 00:00:00 2001 From: "Peter S. Mazinger" Date: Tue, 3 Jan 2006 14:50:18 +0000 Subject: Complete split of all the string functions. Hope haven't broken too much. wcscoll/strcoll needs some love ... --- libc/string/Makefile.in | 117 +++++++++++++++--------------------------------- 1 file changed, 37 insertions(+), 80 deletions(-) (limited to 'libc/string/Makefile.in') diff --git a/libc/string/Makefile.in b/libc/string/Makefile.in index 0adcaee39..4f96b8354 100644 --- a/libc/string/Makefile.in +++ b/libc/string/Makefile.in @@ -9,112 +9,69 @@ -include $(top_srcdir)libc/string/$(TARGET_ARCH)/Makefile.arch include $(top_srcdir)libc/string/generic/Makefile.in -MSRC:=wstring.c -MOBJ:= basename.o bcopy.o bzero.o dirname.o ffs.o memccpy.o \ - memrchr.o rawmemchr.o strcasecmp.o strcasestr.o \ - strncasecmp.o strndup.o strsep.o \ - strtok.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 sys_errlist.o memmem.o +STRING_DIR:=$(top_srcdir)libc/string +STRING_OUT:=$(top_builddir)libc/string -MOBJW:= -ifeq ($(UCLIBC_HAS_WCHAR),y) -MOBJW:= wcscasecmp.o wcsncasecmp.o \ - wcsxfrm.o strxfrm.o # wcscoll strcoll.o +STRING_ALL_WXSRC:=$(wildcard $(STRING_DIR)/w*_l.c) +ifeq ($(UCLIBC_HAS_LOCALE),y) +STRING_WXSRC:=$(STRING_ALL_WXSRC) +else +# wcscoll_l +STRING_WXSRC:=$(filter-out $(STRING_DIR)/wcsxfrm_l.c,$(STRING_ALL_WXSRC)) 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 +STRING_ALL_XLSRC:=$(filter-out $(STRING_ALL_WXSRC),$(wildcard $(STRING_DIR)/*_l.c)) +ifeq ($(UCLIBC_HAS_LOCALE),y) +STRING_XLSRC:=$(STRING_ALL_XLSRC) +else +# strcoll_l +STRING_XLSRC:=$(filter-out $(STRING_DIR)/strxfrm_l.c,$(STRING_ALL_XLSRC)) endif -endif - -#ffsl ffsll -ifeq ($(UCLIBC_HAS_STRING_ARCH_OPT),y) -ifneq ($(strip $(STRING_ARCH_OBJS)),) -MOBJ:=$(filter-out $(notdir $(STRING_ARCH_OBJS)),$(MOBJ)) +STRING_ALL_WSRC:=$(filter-out $(STRING_ALL_WXSRC),$(wildcard $(STRING_DIR)/w*.c)) +ifeq ($(UCLIBC_HAS_LOCALE),y) +STRING_WSRC:=$(STRING_ALL_WSRC) +else +# wcscoll +STRING_WSRC:=$(filter-out $(STRING_DIR)/wcsxfrm.c,$(STRING_ALL_WSRC)) endif + +STRING_ALL_CSRC:=$(filter-out $(STRING_ALL_WXSRC) $(STRING_ALL_XLSRC) $(STRING_ALL_WSRC) $(STRING_DIR)/_collate.c,$(wildcard $(STRING_DIR)/*.c)) +ifeq ($(UCLIBC_HAS_LOCALE),y) +STRING_CSRC:=$(STRING_ALL_CSRC) +else +# strcoll +STRING_CSRC:=$(filter-out $(STRING_DIR)/strxfrm.c,$(STRING_ALL_CSRC)) endif -ifeq ($(UCLIBC_HAS_STRING_GENERIC_OPT),y) -ifneq ($(strip $(STRING_GENERIC_OBJS)),) -MOBJ:=$(filter-out $(notdir $(STRING_GENERIC_OBJS)),$(MOBJ)) +ifeq ($(UCLIBC_HAS_WCHAR),y) +STRING_CSRC+=$(STRING_WSRC) +endif +ifeq ($(UCLIBC_HAS_XLOCALE),y) +STRING_CSRC+=$(STRING_XLSRC) +ifeq ($(UCLIBC_HAS_WCHAR),y) +STRING_CSRC+=$(STRING_WXSRC) endif endif - -STRING_DIR:=$(top_srcdir)libc/string -STRING_OUT:=$(top_builddir)libc/string - -STRING_WSRC:=$(filter-out $(STRING_DIR)/wstring.c,$(wildcard $(STRING_DIR)/w*.c)) -STRING_CSRC:=$(filter-out $(STRING_DIR)/wstring.c $(STRING_WSRC),$(wildcard $(STRING_DIR)/*.c)) ifeq ($(UCLIBC_HAS_STRING_ARCH_OPT),y) ifneq ($(strip $(STRING_ARCH_OBJS)),) -MOBJ:=$(filter-out $(notdir $(STRING_ARCH_OBJS)),$(MOBJ)) STRING_CSRC:=$(filter-out $(patsubst %.o,$(STRING_DIR)/%.c,$(notdir $(STRING_ARCH_OBJS))),$(STRING_CSRC)) -STRING_WSRC:=$(filter-out $(patsubst %.o,$(STRING_DIR)/%.c,$(notdir $(STRING_ARCH_OBJS))),$(STRING_WSRC)) endif endif ifeq ($(UCLIBC_HAS_STRING_GENERIC_OPT),y) ifneq ($(strip $(STRING_GENERIC_OBJS)),) -MOBJ:=$(filter-out $(notdir $(STRING_GENERIC_OBJS)),$(MOBJ)) STRING_CSRC:=$(filter-out $(patsubst %.o,$(STRING_DIR)/%.c,$(notdir $(STRING_GENERIC_OBJS))),$(STRING_CSRC)) -STRING_WSRC:=$(filter-out $(patsubst %.o,$(STRING_DIR)/%.c,$(notdir $(STRING_GENERIC_OBJS))),$(STRING_WSRC)) endif endif - STRING_COBJ:=$(patsubst $(STRING_DIR)/%.c,$(STRING_OUT)/%.o,$(STRING_CSRC)) -ifeq ($(UCLIBC_HAS_WCHAR),y) -STRING_WOBJ:=$(patsubst $(STRING_DIR)/%.c,$(STRING_OUT)/%.o,$(STRING_WSRC)) -endif -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_COBJ) $(STRING_WOBJ) $(STRING_MOBJ) $(STRING_Wx) - -$(STRING_MOBJ): $(STRING_MSRC) - $(compile.m) - -$(STRING_MOBJ:.o=.os): $(STRING_MSRC) - $(compile.m) - -$(STRING_MOBJW): $(STRING_MSRC) - $(compile.m) -DWANT_WIDE - -$(STRING_MOBJW:.o=.os): $(STRING_MSRC) - $(compile.m) -DWANT_WIDE - -$(STRING_MOBJx): $(STRING_MSRC) - $(compile.m) -D__UCLIBC_DO_XLOCALE - -$(STRING_MOBJx:.o=.os): $(STRING_MSRC) - $(compile.m) -D__UCLIBC_DO_XLOCALE - -$(STRING_MOBJWx): $(STRING_MSRC) - $(compile.m) -DWANT_WIDE -D__UCLIBC_DO_XLOCALE - -$(STRING_MOBJWx:.o=.os): $(STRING_MSRC) - $(compile.m) -DWANT_WIDE -D__UCLIBC_DO_XLOCALE -libc-a-y+=$(STRING_OBJS) -libc-so-y+=$(STRING_OBJS:.o=.os) +libc-a-y+=$(STRING_COBJ) +libc-so-y+=$(STRING_COBJ:.o=.os) -CFLAGS-multi-y+=$(STRING_DEF) -libc-multi-y+=$(STRING_MSRC) $(STRING_CSRC) $(STRING_WSRC) -libc-nomulti-y+=$(STRING_Wx) +libc-multi-y+=$(STRING_CSRC) objclean-y+=string_objclean -- cgit v1.2.3