Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'newlib/libc/string')
-rw-r--r--newlib/libc/string/Makefile.am153
-rw-r--r--newlib/libc/string/Makefile.in1125
-rw-r--r--newlib/libc/string/bcmp.c48
-rw-r--r--newlib/libc/string/bcopy.c38
-rw-r--r--newlib/libc/string/bzero.c43
-rw-r--r--newlib/libc/string/index.c44
-rw-r--r--newlib/libc/string/memccpy.c145
-rw-r--r--newlib/libc/string/memchr.c134
-rw-r--r--newlib/libc/string/memcmp.c113
-rw-r--r--newlib/libc/string/memcpy.c111
-rw-r--r--newlib/libc/string/memmem.c102
-rw-r--r--newlib/libc/string/memmove.c143
-rw-r--r--newlib/libc/string/mempcpy.c108
-rw-r--r--newlib/libc/string/memset.c102
-rw-r--r--newlib/libc/string/rindex.c44
-rw-r--r--newlib/libc/string/stpcpy.c91
-rw-r--r--newlib/libc/string/stpncpy.c114
-rw-r--r--newlib/libc/string/str-two-way.h415
-rw-r--r--newlib/libc/string/strcasecmp.c56
-rw-r--r--newlib/libc/string/strcasestr.c147
-rw-r--r--newlib/libc/string/strcat.c104
-rw-r--r--newlib/libc/string/strchr.c123
-rw-r--r--newlib/libc/string/strcmp.c106
-rw-r--r--newlib/libc/string/strcoll.c48
-rw-r--r--newlib/libc/string/strcpy.c99
-rw-r--r--newlib/libc/string/strcspn.c54
-rw-r--r--newlib/libc/string/strdup.c13
-rw-r--r--newlib/libc/string/strdup_r.c17
-rw-r--r--newlib/libc/string/strerror.c785
-rw-r--r--newlib/libc/string/strerror_r.c53
-rw-r--r--newlib/libc/string/strings.tex169
-rw-r--r--newlib/libc/string/strlcat.c74
-rw-r--r--newlib/libc/string/strlcpy.c70
-rw-r--r--newlib/libc/string/strlen.c88
-rw-r--r--newlib/libc/string/strlwr.c50
-rw-r--r--newlib/libc/string/strncasecmp.c64
-rw-r--r--newlib/libc/string/strncat.c114
-rw-r--r--newlib/libc/string/strncmp.c122
-rw-r--r--newlib/libc/string/strncpy.c125
-rw-r--r--newlib/libc/string/strndup.c16
-rw-r--r--newlib/libc/string/strndup_r.c27
-rw-r--r--newlib/libc/string/strnlen.c49
-rw-r--r--newlib/libc/string/strpbrk.c58
-rw-r--r--newlib/libc/string/strrchr.c59
-rw-r--r--newlib/libc/string/strsep.c19
-rw-r--r--newlib/libc/string/strspn.c59
-rw-r--r--newlib/libc/string/strstr.c121
-rw-r--r--newlib/libc/string/strtok.c101
-rw-r--r--newlib/libc/string/strtok_r.c99
-rw-r--r--newlib/libc/string/strupr.c49
-rw-r--r--newlib/libc/string/strxfrm.c75
-rw-r--r--newlib/libc/string/swab.c44
-rw-r--r--newlib/libc/string/u_strerr.c8
-rw-r--r--newlib/libc/string/wcpcpy.c41
-rw-r--r--newlib/libc/string/wcpncpy.c61
-rw-r--r--newlib/libc/string/wcscat.c85
-rw-r--r--newlib/libc/string/wcschr.c82
-rw-r--r--newlib/libc/string/wcscmp.c83
-rw-r--r--newlib/libc/string/wcscoll.c48
-rw-r--r--newlib/libc/string/wcscpy.c79
-rw-r--r--newlib/libc/string/wcscspn.c86
-rw-r--r--newlib/libc/string/wcslcat.c108
-rw-r--r--newlib/libc/string/wcslcpy.c102
-rw-r--r--newlib/libc/string/wcslen.c72
-rw-r--r--newlib/libc/string/wcsncat.c91
-rw-r--r--newlib/libc/string/wcsncmp.c91
-rw-r--r--newlib/libc/string/wcsncpy.c90
-rw-r--r--newlib/libc/string/wcsnlen.c75
-rw-r--r--newlib/libc/string/wcspbrk.c88
-rw-r--r--newlib/libc/string/wcsrchr.c88
-rw-r--r--newlib/libc/string/wcsspn.c88
-rw-r--r--newlib/libc/string/wcsstr.c105
-rw-r--r--newlib/libc/string/wcstok.c181
-rw-r--r--newlib/libc/string/wcstrings.tex122
-rw-r--r--newlib/libc/string/wcswidth.c56
-rw-r--r--newlib/libc/string/wcsxfrm.c52
-rw-r--r--newlib/libc/string/wcwidth.c53
-rw-r--r--newlib/libc/string/wmemchr.c89
-rw-r--r--newlib/libc/string/wmemcmp.c89
-rw-r--r--newlib/libc/string/wmemcpy.c76
-rw-r--r--newlib/libc/string/wmemmove.c82
-rw-r--r--newlib/libc/string/wmemset.c82
82 files changed, 0 insertions, 8783 deletions
diff --git a/newlib/libc/string/Makefile.am b/newlib/libc/string/Makefile.am
deleted file mode 100644
index 1a3433e8d..000000000
--- a/newlib/libc/string/Makefile.am
+++ /dev/null
@@ -1,153 +0,0 @@
-## Process this file with automake to generate Makefile.in
-
-AUTOMAKE_OPTIONS = cygnus
-
-INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-
-GENERAL_SOURCES = \
- bcopy.c \
- bzero.c \
- index.c \
- memchr.c \
- memcmp.c \
- memcpy.c \
- memmove.c \
- memset.c \
- rindex.c \
- strcasecmp.c \
- strcat.c \
- strchr.c \
- strcmp.c \
- strcoll.c \
- strcpy.c \
- strcspn.c \
- strdup.c \
- strdup_r.c \
- strerror.c \
- strerror_r.c \
- strlcat.c \
- strlcpy.c \
- strlen.c \
- strlwr.c \
- strncasecmp.c \
- strncat.c \
- strncmp.c \
- strncpy.c \
- strnlen.c \
- strpbrk.c \
- strrchr.c \
- strsep.c \
- strspn.c \
- strtok.c \
- strtok_r.c \
- strupr.c \
- strxfrm.c \
- strstr.c \
- swab.c \
- u_strerr.c \
- wcscat.c \
- wcschr.c \
- wcscmp.c \
- wcscoll.c \
- wcscpy.c \
- wcscspn.c \
- wcslcat.c \
- wcslcpy.c \
- wcslen.c \
- wcsncat.c \
- wcsncmp.c \
- wcsncpy.c \
- wcsnlen.c \
- wcspbrk.c \
- wcsrchr.c \
- wcsspn.c \
- wcsstr.c \
- wcstok.c \
- wcswidth.c \
- wcsxfrm.c \
- wcwidth.c \
- wmemchr.c \
- wmemcmp.c \
- wmemcpy.c \
- wmemmove.c \
- wmemset.c
-
-if ELIX_LEVEL_1
-ELIX_2_SOURCES =
-else
-ELIX_2_SOURCES = \
- bcmp.c \
- memccpy.c \
- mempcpy.c \
- stpcpy.c \
- stpncpy.c \
- strndup.c \
- strcasestr.c \
- strndup_r.c \
- wcpcpy.c \
- wcpncpy.c
-endif !ELIX_LEVEL_1
-
-if ELIX_LEVEL_1
-ELIX_4_SOURCES =
-else
-if ELIX_LEVEL_2
-ELIX_4_SOURCES =
-else
-if ELIX_LEVEL_3
-ELIX_4_SOURCES =
-else
-ELIX_4_SOURCES = \
- memmem.c
-endif !ELIX_LEVEL_3
-endif !ELIX_LEVEL_2
-endif !ELIX_LEVEL_1
-
-libstring_la_LDFLAGS = -Xcompiler -nostdlib
-
-if USE_LIBTOOL
-noinst_LTLIBRARIES = libstring.la
-libstring_la_SOURCES = $(GENERAL_SOURCES) $(ELIX_2_SOURCES) $(ELIX_4_SOURCES)
-noinst_DATA = objectlist.awk.in
-else
-noinst_LIBRARIES = lib.a
-lib_a_SOURCES = $(GENERAL_SOURCES) $(ELIX_2_SOURCES) $(ELIX_4_SOURCES)
-lib_a_CFLAGS = $(AM_CFLAGS)
-noinst_DATA =
-endif # USE_LIBTOOL
-
-include $(srcdir)/../../Makefile.shared
-
-CHEWOUT_FILES=\
-bcmp.def memcpy.def strcmp.def strncat.def strstr.def \
-bcopy.def memmove.def strcoll.def strncmp.def strtok.def \
-bzero.def memset.def strcpy.def strncpy.def strxfrm.def \
-index.def rindex.def strcspn.def strpbrk.def swab.def \
-memchr.def strcat.def strerror.def strerror_r.def strrchr.def \
-memcmp.def strchr.def strlen.def strnlen.def strspn.def \
-strcasecmp.def strncasecmp.def strcasestr.def strlwr.def strupr.def \
-memccpy.def mempcpy.def stpcpy.def stpncpy.def \
-wcscat.def wcschr.def wcscmp.def wcscoll.def \
-wcscpy.def wcscspn.def wcpcpy.def wcpncpy.def \
-wcslcat.def wcslcpy.def wcslen.def wcsncat.def \
-wcsncmp.def wcsncpy.def wcsnlen.def wcspbrk.def \
-wcsrchr.def wcsspn.def wcsstr.def wcstok.def \
-wcswidth.def wcsxfrm.def wcwidth.def wmemchr.def \
-wmemcmp.def wmemcpy.def wmemmove.def wmemset.def \
-memmem.def
-
-SUFFIXES = .def
-
-CHEW = ../../doc/makedoc -f $(srcdir)/../../doc/doc.str
-
-.c.def:
- $(CHEW) < $< > $*.def 2> $*.ref
- touch stmp-def
-
-TARGETDOC = ../tmp.texi
-
-doc: $(CHEWOUT_FILES)
- cat $(srcdir)/strings.tex >> $(TARGETDOC)
- cat $(srcdir)/wcstrings.tex >> $(TARGETDOC)
-
-CLEANFILES = $(CHEWOUT_FILES) *.ref
diff --git a/newlib/libc/string/Makefile.in b/newlib/libc/string/Makefile.in
deleted file mode 100644
index f4607e062..000000000
--- a/newlib/libc/string/Makefile.in
+++ /dev/null
@@ -1,1125 +0,0 @@
-# Makefile.in generated by automake 1.9.6 from Makefile.am.
-# @configure_input@
-
-# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
-# 2003, 2004, 2005 Free Software Foundation, Inc.
-# This Makefile.in is free software; the Free Software Foundation
-# gives unlimited permission to copy and/or distribute it,
-# with or without modifications, as long as this notice is preserved.
-
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
-# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE.
-
-@SET_MAKE@
-
-
-
-srcdir = @srcdir@
-top_srcdir = @top_srcdir@
-VPATH = @srcdir@
-pkgdatadir = $(datadir)/@PACKAGE@
-pkglibdir = $(libdir)/@PACKAGE@
-pkgincludedir = $(includedir)/@PACKAGE@
-top_builddir = ..
-am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
-INSTALL = @INSTALL@
-install_sh_DATA = $(install_sh) -c -m 644
-install_sh_PROGRAM = $(install_sh) -c
-install_sh_SCRIPT = $(install_sh) -c
-INSTALL_HEADER = $(INSTALL_DATA)
-transform = $(program_transform_name)
-NORMAL_INSTALL = :
-PRE_INSTALL = :
-POST_INSTALL = :
-NORMAL_UNINSTALL = :
-PRE_UNINSTALL = :
-POST_UNINSTALL = :
-build_triplet = @build@
-host_triplet = @host@
-DIST_COMMON = $(srcdir)/../../Makefile.shared $(srcdir)/Makefile.in \
- $(srcdir)/Makefile.am
-subdir = string
-ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/../../libtool.m4 \
- $(top_srcdir)/../../ltoptions.m4 \
- $(top_srcdir)/../../ltsugar.m4 \
- $(top_srcdir)/../../ltversion.m4 \
- $(top_srcdir)/../../lt~obsolete.m4 \
- $(top_srcdir)/../acinclude.m4 $(top_srcdir)/../confsubdir.m4 \
- $(top_srcdir)/configure.in
-am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
- $(ACLOCAL_M4)
-mkinstalldirs = $(SHELL) $(top_srcdir)/../../mkinstalldirs
-CONFIG_CLEAN_FILES =
-LIBRARIES = $(noinst_LIBRARIES)
-ARFLAGS = cru
-lib_a_AR = $(AR) $(ARFLAGS)
-lib_a_LIBADD =
-am__objects_1 = lib_a-bcopy.$(OBJEXT) lib_a-bzero.$(OBJEXT) \
- lib_a-index.$(OBJEXT) lib_a-memchr.$(OBJEXT) \
- lib_a-memcmp.$(OBJEXT) lib_a-memcpy.$(OBJEXT) \
- lib_a-memmove.$(OBJEXT) lib_a-memset.$(OBJEXT) \
- lib_a-rindex.$(OBJEXT) lib_a-strcasecmp.$(OBJEXT) \
- lib_a-strcat.$(OBJEXT) lib_a-strchr.$(OBJEXT) \
- lib_a-strcmp.$(OBJEXT) lib_a-strcoll.$(OBJEXT) \
- lib_a-strcpy.$(OBJEXT) lib_a-strcspn.$(OBJEXT) \
- lib_a-strdup.$(OBJEXT) lib_a-strdup_r.$(OBJEXT) \
- lib_a-strerror.$(OBJEXT) lib_a-strerror_r.$(OBJEXT) \
- lib_a-strlcat.$(OBJEXT) lib_a-strlcpy.$(OBJEXT) \
- lib_a-strlen.$(OBJEXT) lib_a-strlwr.$(OBJEXT) \
- lib_a-strncasecmp.$(OBJEXT) lib_a-strncat.$(OBJEXT) \
- lib_a-strncmp.$(OBJEXT) lib_a-strncpy.$(OBJEXT) \
- lib_a-strnlen.$(OBJEXT) lib_a-strpbrk.$(OBJEXT) \
- lib_a-strrchr.$(OBJEXT) lib_a-strsep.$(OBJEXT) \
- lib_a-strspn.$(OBJEXT) lib_a-strtok.$(OBJEXT) \
- lib_a-strtok_r.$(OBJEXT) lib_a-strupr.$(OBJEXT) \
- lib_a-strxfrm.$(OBJEXT) lib_a-strstr.$(OBJEXT) \
- lib_a-swab.$(OBJEXT) lib_a-u_strerr.$(OBJEXT) \
- lib_a-wcscat.$(OBJEXT) lib_a-wcschr.$(OBJEXT) \
- lib_a-wcscmp.$(OBJEXT) lib_a-wcscoll.$(OBJEXT) \
- lib_a-wcscpy.$(OBJEXT) lib_a-wcscspn.$(OBJEXT) \
- lib_a-wcslcat.$(OBJEXT) lib_a-wcslcpy.$(OBJEXT) \
- lib_a-wcslen.$(OBJEXT) lib_a-wcsncat.$(OBJEXT) \
- lib_a-wcsncmp.$(OBJEXT) lib_a-wcsncpy.$(OBJEXT) \
- lib_a-wcsnlen.$(OBJEXT) lib_a-wcspbrk.$(OBJEXT) \
- lib_a-wcsrchr.$(OBJEXT) lib_a-wcsspn.$(OBJEXT) \
- lib_a-wcsstr.$(OBJEXT) lib_a-wcstok.$(OBJEXT) \
- lib_a-wcswidth.$(OBJEXT) lib_a-wcsxfrm.$(OBJEXT) \
- lib_a-wcwidth.$(OBJEXT) lib_a-wmemchr.$(OBJEXT) \
- lib_a-wmemcmp.$(OBJEXT) lib_a-wmemcpy.$(OBJEXT) \
- lib_a-wmemmove.$(OBJEXT) lib_a-wmemset.$(OBJEXT)
-@ELIX_LEVEL_1_FALSE@am__objects_2 = lib_a-bcmp.$(OBJEXT) \
-@ELIX_LEVEL_1_FALSE@ lib_a-memccpy.$(OBJEXT) \
-@ELIX_LEVEL_1_FALSE@ lib_a-mempcpy.$(OBJEXT) \
-@ELIX_LEVEL_1_FALSE@ lib_a-stpcpy.$(OBJEXT) \
-@ELIX_LEVEL_1_FALSE@ lib_a-stpncpy.$(OBJEXT) \
-@ELIX_LEVEL_1_FALSE@ lib_a-strndup.$(OBJEXT) \
-@ELIX_LEVEL_1_FALSE@ lib_a-strcasestr.$(OBJEXT) \
-@ELIX_LEVEL_1_FALSE@ lib_a-strndup_r.$(OBJEXT) \
-@ELIX_LEVEL_1_FALSE@ lib_a-wcpcpy.$(OBJEXT) \
-@ELIX_LEVEL_1_FALSE@ lib_a-wcpncpy.$(OBJEXT)
-@ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_FALSE@@ELIX_LEVEL_3_FALSE@am__objects_3 = lib_a-memmem.$(OBJEXT)
-@USE_LIBTOOL_FALSE@am_lib_a_OBJECTS = $(am__objects_1) \
-@USE_LIBTOOL_FALSE@ $(am__objects_2) $(am__objects_3)
-lib_a_OBJECTS = $(am_lib_a_OBJECTS)
-LTLIBRARIES = $(noinst_LTLIBRARIES)
-libstring_la_LIBADD =
-am__objects_4 = bcopy.lo bzero.lo index.lo memchr.lo memcmp.lo \
- memcpy.lo memmove.lo memset.lo rindex.lo strcasecmp.lo \
- strcat.lo strchr.lo strcmp.lo strcoll.lo strcpy.lo strcspn.lo \
- strdup.lo strdup_r.lo strerror.lo strerror_r.lo strlcat.lo \
- strlcpy.lo strlen.lo strlwr.lo strncasecmp.lo strncat.lo \
- strncmp.lo strncpy.lo strnlen.lo strpbrk.lo strrchr.lo \
- strsep.lo strspn.lo strtok.lo strtok_r.lo strupr.lo strxfrm.lo \
- strstr.lo swab.lo u_strerr.lo wcscat.lo wcschr.lo wcscmp.lo \
- wcscoll.lo wcscpy.lo wcscspn.lo wcslcat.lo wcslcpy.lo \
- wcslen.lo wcsncat.lo wcsncmp.lo wcsncpy.lo wcsnlen.lo \
- wcspbrk.lo wcsrchr.lo wcsspn.lo wcsstr.lo wcstok.lo \
- wcswidth.lo wcsxfrm.lo wcwidth.lo wmemchr.lo wmemcmp.lo \
- wmemcpy.lo wmemmove.lo wmemset.lo
-@ELIX_LEVEL_1_FALSE@am__objects_5 = bcmp.lo memccpy.lo mempcpy.lo \
-@ELIX_LEVEL_1_FALSE@ stpcpy.lo stpncpy.lo strndup.lo \
-@ELIX_LEVEL_1_FALSE@ strcasestr.lo strndup_r.lo wcpcpy.lo \
-@ELIX_LEVEL_1_FALSE@ wcpncpy.lo
-@ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_FALSE@@ELIX_LEVEL_3_FALSE@am__objects_6 = memmem.lo
-@USE_LIBTOOL_TRUE@am_libstring_la_OBJECTS = $(am__objects_4) \
-@USE_LIBTOOL_TRUE@ $(am__objects_5) $(am__objects_6)
-libstring_la_OBJECTS = $(am_libstring_la_OBJECTS)
-@USE_LIBTOOL_TRUE@am_libstring_la_rpath =
-DEFAULT_INCLUDES = -I. -I$(srcdir)
-depcomp =
-am__depfiles_maybe =
-COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
- $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
-LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) \
- $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
- $(AM_CFLAGS) $(CFLAGS)
-CCLD = $(CC)
-LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
- $(AM_LDFLAGS) $(LDFLAGS) -o $@
-SOURCES = $(lib_a_SOURCES) $(libstring_la_SOURCES)
-DATA = $(noinst_DATA)
-ETAGS = etags
-CTAGS = ctags
-ACLOCAL = @ACLOCAL@
-AMDEP_FALSE = @AMDEP_FALSE@
-AMDEP_TRUE = @AMDEP_TRUE@
-AMTAR = @AMTAR@
-AR = @AR@
-AS = @AS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
-AWK = @AWK@
-CC = @CC@
-CCAS = @CCAS@
-CCASFLAGS = @CCASFLAGS@
-CCDEPMODE = @CCDEPMODE@
-CFLAGS = @CFLAGS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-CRT0 = @CRT0@
-CYGPATH_W = @CYGPATH_W@
-DEFS = @DEFS@
-DEPDIR = @DEPDIR@
-DLLTOOL = @DLLTOOL@
-DSYMUTIL = @DSYMUTIL@
-DUMPBIN = @DUMPBIN@
-ECHO_C = @ECHO_C@
-ECHO_N = @ECHO_N@
-ECHO_T = @ECHO_T@
-EGREP = @EGREP@
-ELIX_LEVEL_0_FALSE = @ELIX_LEVEL_0_FALSE@
-ELIX_LEVEL_0_TRUE = @ELIX_LEVEL_0_TRUE@
-ELIX_LEVEL_1_FALSE = @ELIX_LEVEL_1_FALSE@
-ELIX_LEVEL_1_TRUE = @ELIX_LEVEL_1_TRUE@
-ELIX_LEVEL_2_FALSE = @ELIX_LEVEL_2_FALSE@
-ELIX_LEVEL_2_TRUE = @ELIX_LEVEL_2_TRUE@
-ELIX_LEVEL_3_FALSE = @ELIX_LEVEL_3_FALSE@
-ELIX_LEVEL_3_TRUE = @ELIX_LEVEL_3_TRUE@
-ELIX_LEVEL_4_FALSE = @ELIX_LEVEL_4_FALSE@
-ELIX_LEVEL_4_TRUE = @ELIX_LEVEL_4_TRUE@
-ENABLE_NEWLIB_ICONV_FALSE = @ENABLE_NEWLIB_ICONV_FALSE@
-ENABLE_NEWLIB_ICONV_TRUE = @ENABLE_NEWLIB_ICONV_TRUE@
-EXEEXT = @EXEEXT@
-FGREP = @FGREP@
-GREP = @GREP@
-HAVE_POSIX_DIR_FALSE = @HAVE_POSIX_DIR_FALSE@
-HAVE_POSIX_DIR_TRUE = @HAVE_POSIX_DIR_TRUE@
-HAVE_SIGNAL_DIR_FALSE = @HAVE_SIGNAL_DIR_FALSE@
-HAVE_SIGNAL_DIR_TRUE = @HAVE_SIGNAL_DIR_TRUE@
-HAVE_STDIO64_DIR_FALSE = @HAVE_STDIO64_DIR_FALSE@
-HAVE_STDIO64_DIR_TRUE = @HAVE_STDIO64_DIR_TRUE@
-HAVE_STDIO_DIR_FALSE = @HAVE_STDIO_DIR_FALSE@
-HAVE_STDIO_DIR_TRUE = @HAVE_STDIO_DIR_TRUE@
-HAVE_SYSCALL_DIR_FALSE = @HAVE_SYSCALL_DIR_FALSE@
-HAVE_SYSCALL_DIR_TRUE = @HAVE_SYSCALL_DIR_TRUE@
-HAVE_UNIX_DIR_FALSE = @HAVE_UNIX_DIR_FALSE@
-HAVE_UNIX_DIR_TRUE = @HAVE_UNIX_DIR_TRUE@
-INSTALL_DATA = @INSTALL_DATA@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
-LD = @LD@
-LDFLAGS = @LDFLAGS@
-LIBC_EXTRA_DEF = @LIBC_EXTRA_DEF@
-LIBC_EXTRA_LIB = @LIBC_EXTRA_LIB@
-LIBC_MACHINE_LIB = @LIBC_MACHINE_LIB@
-LIBC_POSIX_LIB = @LIBC_POSIX_LIB@
-LIBC_SIGNAL_DEF = @LIBC_SIGNAL_DEF@
-LIBC_SIGNAL_LIB = @LIBC_SIGNAL_LIB@
-LIBC_STDIO64_DEF = @LIBC_STDIO64_DEF@
-LIBC_STDIO64_LIB = @LIBC_STDIO64_LIB@
-LIBC_STDIO_DEF = @LIBC_STDIO_DEF@
-LIBC_STDIO_LIB = @LIBC_STDIO_LIB@
-LIBC_SYSCALL_LIB = @LIBC_SYSCALL_LIB@
-LIBC_SYS_LIB = @LIBC_SYS_LIB@
-LIBC_UNIX_LIB = @LIBC_UNIX_LIB@
-LIBOBJS = @LIBOBJS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIPO = @LIPO@
-LN_S = @LN_S@
-LTLIBOBJS = @LTLIBOBJS@
-MAINT = @MAINT@
-MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
-MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
-MAKEINFO = @MAKEINFO@
-MAY_SUPPLY_SYSCALLS_FALSE = @MAY_SUPPLY_SYSCALLS_FALSE@
-MAY_SUPPLY_SYSCALLS_TRUE = @MAY_SUPPLY_SYSCALLS_TRUE@
-NEWLIB_CFLAGS = @NEWLIB_CFLAGS@
-NM = @NM@
-NMEDIT = @NMEDIT@
-OBJDUMP = @OBJDUMP@
-OBJEXT = @OBJEXT@
-OTOOL = @OTOOL@
-OTOOL64 = @OTOOL64@
-PACKAGE = @PACKAGE@
-PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
-PACKAGE_NAME = @PACKAGE_NAME@
-PACKAGE_STRING = @PACKAGE_STRING@
-PACKAGE_TARNAME = @PACKAGE_TARNAME@
-PACKAGE_VERSION = @PACKAGE_VERSION@
-PATH_SEPARATOR = @PATH_SEPARATOR@
-RANLIB = @RANLIB@
-READELF = @READELF@
-SED = @SED@
-SET_MAKE = @SET_MAKE@
-SHELL = @SHELL@
-STRIP = @STRIP@
-USE_LIBTOOL_FALSE = @USE_LIBTOOL_FALSE@
-USE_LIBTOOL_TRUE = @USE_LIBTOOL_TRUE@
-VERSION = @VERSION@
-ac_ct_AR = @ac_ct_AR@
-ac_ct_AS = @ac_ct_AS@
-ac_ct_CC = @ac_ct_CC@
-ac_ct_DLLTOOL = @ac_ct_DLLTOOL@
-ac_ct_DSYMUTIL = @ac_ct_DSYMUTIL@
-ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
-ac_ct_LIPO = @ac_ct_LIPO@
-ac_ct_NMEDIT = @ac_ct_NMEDIT@
-ac_ct_OBJDUMP = @ac_ct_OBJDUMP@
-ac_ct_OTOOL = @ac_ct_OTOOL@
-ac_ct_OTOOL64 = @ac_ct_OTOOL64@
-ac_ct_RANLIB = @ac_ct_RANLIB@
-ac_ct_READELF = @ac_ct_READELF@
-ac_ct_STRIP = @ac_ct_STRIP@
-aext = @aext@
-am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
-am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
-am__include = @am__include@
-am__leading_dot = @am__leading_dot@
-am__quote = @am__quote@
-am__tar = @am__tar@
-am__untar = @am__untar@
-bindir = @bindir@
-build = @build@
-build_alias = @build_alias@
-build_cpu = @build_cpu@
-build_os = @build_os@
-build_vendor = @build_vendor@
-datadir = @datadir@
-exec_prefix = @exec_prefix@
-extra_dir = @extra_dir@
-host = @host@
-host_alias = @host_alias@
-host_cpu = @host_cpu@
-host_os = @host_os@
-host_vendor = @host_vendor@
-includedir = @includedir@
-infodir = @infodir@
-install_sh = @install_sh@
-libdir = @libdir@
-libexecdir = @libexecdir@
-libm_machine_dir = @libm_machine_dir@
-localstatedir = @localstatedir@
-lpfx = @lpfx@
-lt_ECHO = @lt_ECHO@
-machine_dir = @machine_dir@
-mandir = @mandir@
-mkdir_p = @mkdir_p@
-newlib_basedir = @newlib_basedir@
-oext = @oext@
-oldincludedir = @oldincludedir@
-prefix = @prefix@
-program_transform_name = @program_transform_name@
-sbindir = @sbindir@
-sharedstatedir = @sharedstatedir@
-subdirs = @subdirs@
-sys_dir = @sys_dir@
-sysconfdir = @sysconfdir@
-target_alias = @target_alias@
-AUTOMAKE_OPTIONS = cygnus
-INCLUDES = $(NEWLIB_CFLAGS) $(CROSS_CFLAGS) $(TARGET_CFLAGS)
-GENERAL_SOURCES = \
- bcopy.c \
- bzero.c \
- index.c \
- memchr.c \
- memcmp.c \
- memcpy.c \
- memmove.c \
- memset.c \
- rindex.c \
- strcasecmp.c \
- strcat.c \
- strchr.c \
- strcmp.c \
- strcoll.c \
- strcpy.c \
- strcspn.c \
- strdup.c \
- strdup_r.c \
- strerror.c \
- strerror_r.c \
- strlcat.c \
- strlcpy.c \
- strlen.c \
- strlwr.c \
- strncasecmp.c \
- strncat.c \
- strncmp.c \
- strncpy.c \
- strnlen.c \
- strpbrk.c \
- strrchr.c \
- strsep.c \
- strspn.c \
- strtok.c \
- strtok_r.c \
- strupr.c \
- strxfrm.c \
- strstr.c \
- swab.c \
- u_strerr.c \
- wcscat.c \
- wcschr.c \
- wcscmp.c \
- wcscoll.c \
- wcscpy.c \
- wcscspn.c \
- wcslcat.c \
- wcslcpy.c \
- wcslen.c \
- wcsncat.c \
- wcsncmp.c \
- wcsncpy.c \
- wcsnlen.c \
- wcspbrk.c \
- wcsrchr.c \
- wcsspn.c \
- wcsstr.c \
- wcstok.c \
- wcswidth.c \
- wcsxfrm.c \
- wcwidth.c \
- wmemchr.c \
- wmemcmp.c \
- wmemcpy.c \
- wmemmove.c \
- wmemset.c
-
-@ELIX_LEVEL_1_FALSE@ELIX_2_SOURCES = \
-@ELIX_LEVEL_1_FALSE@ bcmp.c \
-@ELIX_LEVEL_1_FALSE@ memccpy.c \
-@ELIX_LEVEL_1_FALSE@ mempcpy.c \
-@ELIX_LEVEL_1_FALSE@ stpcpy.c \
-@ELIX_LEVEL_1_FALSE@ stpncpy.c \
-@ELIX_LEVEL_1_FALSE@ strndup.c \
-@ELIX_LEVEL_1_FALSE@ strcasestr.c \
-@ELIX_LEVEL_1_FALSE@ strndup_r.c \
-@ELIX_LEVEL_1_FALSE@ wcpcpy.c \
-@ELIX_LEVEL_1_FALSE@ wcpncpy.c
-
-@ELIX_LEVEL_1_TRUE@ELIX_2_SOURCES =
-@ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_FALSE@@ELIX_LEVEL_3_FALSE@ELIX_4_SOURCES = \
-@ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_FALSE@@ELIX_LEVEL_3_FALSE@ memmem.c
-
-@ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_FALSE@@ELIX_LEVEL_3_TRUE@ELIX_4_SOURCES =
-@ELIX_LEVEL_1_FALSE@@ELIX_LEVEL_2_TRUE@ELIX_4_SOURCES =
-@ELIX_LEVEL_1_TRUE@ELIX_4_SOURCES =
-libstring_la_LDFLAGS = -Xcompiler -nostdlib
-@USE_LIBTOOL_TRUE@noinst_LTLIBRARIES = libstring.la
-@USE_LIBTOOL_TRUE@libstring_la_SOURCES = $(GENERAL_SOURCES) $(ELIX_2_SOURCES) $(ELIX_4_SOURCES)
-@USE_LIBTOOL_FALSE@noinst_DATA =
-@USE_LIBTOOL_TRUE@noinst_DATA = objectlist.awk.in
-@USE_LIBTOOL_FALSE@noinst_LIBRARIES = lib.a
-@USE_LIBTOOL_FALSE@lib_a_SOURCES = $(GENERAL_SOURCES) $(ELIX_2_SOURCES) $(ELIX_4_SOURCES)
-@USE_LIBTOOL_FALSE@lib_a_CFLAGS = $(AM_CFLAGS)
-CHEWOUT_FILES = \
-bcmp.def memcpy.def strcmp.def strncat.def strstr.def \
-bcopy.def memmove.def strcoll.def strncmp.def strtok.def \
-bzero.def memset.def strcpy.def strncpy.def strxfrm.def \
-index.def rindex.def strcspn.def strpbrk.def swab.def \
-memchr.def strcat.def strerror.def strerror_r.def strrchr.def \
-memcmp.def strchr.def strlen.def strnlen.def strspn.def \
-strcasecmp.def strncasecmp.def strcasestr.def strlwr.def strupr.def \
-memccpy.def mempcpy.def stpcpy.def stpncpy.def \
-wcscat.def wcschr.def wcscmp.def wcscoll.def \
-wcscpy.def wcscspn.def wcpcpy.def wcpncpy.def \
-wcslcat.def wcslcpy.def wcslen.def wcsncat.def \
-wcsncmp.def wcsncpy.def wcsnlen.def wcspbrk.def \
-wcsrchr.def wcsspn.def wcsstr.def wcstok.def \
-wcswidth.def wcsxfrm.def wcwidth.def wmemchr.def \
-wmemcmp.def wmemcpy.def wmemmove.def wmemset.def \
-memmem.def
-
-SUFFIXES = .def
-CHEW = ../../doc/makedoc -f $(srcdir)/../../doc/doc.str
-TARGETDOC = ../tmp.texi
-CLEANFILES = $(CHEWOUT_FILES) *.ref
-all: all-am
-
-.SUFFIXES:
-.SUFFIXES: .def .c .lo .o .obj
-$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/../../Makefile.shared $(am__configure_deps)
- @for dep in $?; do \
- case '$(am__configure_deps)' in \
- *$$dep*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
- && exit 0; \
- exit 1;; \
- esac; \
- done; \
- echo ' cd $(top_srcdir) && $(AUTOMAKE) --cygnus string/Makefile'; \
- cd $(top_srcdir) && \
- $(AUTOMAKE) --cygnus string/Makefile
-.PRECIOUS: Makefile
-Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
- @case '$?' in \
- *config.status*) \
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
- *) \
- echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
- cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
- esac;
-
-$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
- cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
-
-clean-noinstLIBRARIES:
- -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
-lib.a: $(lib_a_OBJECTS) $(lib_a_DEPENDENCIES)
- -rm -f lib.a
- $(lib_a_AR) lib.a $(lib_a_OBJECTS) $(lib_a_LIBADD)
- $(RANLIB) lib.a
-
-clean-noinstLTLIBRARIES:
- -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES)
- @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \
- dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
- test "$$dir" != "$$p" || dir=.; \
- echo "rm -f \"$${dir}/so_locations\""; \
- rm -f "$${dir}/so_locations"; \
- done
-libstring.la: $(libstring_la_OBJECTS) $(libstring_la_DEPENDENCIES)
- $(LINK) $(am_libstring_la_rpath) $(libstring_la_LDFLAGS) $(libstring_la_OBJECTS) $(libstring_la_LIBADD) $(LIBS)
-
-mostlyclean-compile:
- -rm -f *.$(OBJEXT)
-
-distclean-compile:
- -rm -f *.tab.c
-
-.c.o:
- $(COMPILE) -c $<
-
-.c.obj:
- $(COMPILE) -c `$(CYGPATH_W) '$<'`
-
-.c.lo:
- $(LTCOMPILE) -c -o $@ $<
-
-lib_a-bcopy.o: bcopy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-bcopy.o `test -f 'bcopy.c' || echo '$(srcdir)/'`bcopy.c
-
-lib_a-bcopy.obj: bcopy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-bcopy.obj `if test -f 'bcopy.c'; then $(CYGPATH_W) 'bcopy.c'; else $(CYGPATH_W) '$(srcdir)/bcopy.c'; fi`
-
-lib_a-bzero.o: bzero.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-bzero.o `test -f 'bzero.c' || echo '$(srcdir)/'`bzero.c
-
-lib_a-bzero.obj: bzero.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-bzero.obj `if test -f 'bzero.c'; then $(CYGPATH_W) 'bzero.c'; else $(CYGPATH_W) '$(srcdir)/bzero.c'; fi`
-
-lib_a-index.o: index.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-index.o `test -f 'index.c' || echo '$(srcdir)/'`index.c
-
-lib_a-index.obj: index.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-index.obj `if test -f 'index.c'; then $(CYGPATH_W) 'index.c'; else $(CYGPATH_W) '$(srcdir)/index.c'; fi`
-
-lib_a-memchr.o: memchr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-memchr.o `test -f 'memchr.c' || echo '$(srcdir)/'`memchr.c
-
-lib_a-memchr.obj: memchr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-memchr.obj `if test -f 'memchr.c'; then $(CYGPATH_W) 'memchr.c'; else $(CYGPATH_W) '$(srcdir)/memchr.c'; fi`
-
-lib_a-memcmp.o: memcmp.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-memcmp.o `test -f 'memcmp.c' || echo '$(srcdir)/'`memcmp.c
-
-lib_a-memcmp.obj: memcmp.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-memcmp.obj `if test -f 'memcmp.c'; then $(CYGPATH_W) 'memcmp.c'; else $(CYGPATH_W) '$(srcdir)/memcmp.c'; fi`
-
-lib_a-memcpy.o: memcpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-memcpy.o `test -f 'memcpy.c' || echo '$(srcdir)/'`memcpy.c
-
-lib_a-memcpy.obj: memcpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-memcpy.obj `if test -f 'memcpy.c'; then $(CYGPATH_W) 'memcpy.c'; else $(CYGPATH_W) '$(srcdir)/memcpy.c'; fi`
-
-lib_a-memmove.o: memmove.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-memmove.o `test -f 'memmove.c' || echo '$(srcdir)/'`memmove.c
-
-lib_a-memmove.obj: memmove.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-memmove.obj `if test -f 'memmove.c'; then $(CYGPATH_W) 'memmove.c'; else $(CYGPATH_W) '$(srcdir)/memmove.c'; fi`
-
-lib_a-memset.o: memset.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-memset.o `test -f 'memset.c' || echo '$(srcdir)/'`memset.c
-
-lib_a-memset.obj: memset.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-memset.obj `if test -f 'memset.c'; then $(CYGPATH_W) 'memset.c'; else $(CYGPATH_W) '$(srcdir)/memset.c'; fi`
-
-lib_a-rindex.o: rindex.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-rindex.o `test -f 'rindex.c' || echo '$(srcdir)/'`rindex.c
-
-lib_a-rindex.obj: rindex.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-rindex.obj `if test -f 'rindex.c'; then $(CYGPATH_W) 'rindex.c'; else $(CYGPATH_W) '$(srcdir)/rindex.c'; fi`
-
-lib_a-strcasecmp.o: strcasecmp.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strcasecmp.o `test -f 'strcasecmp.c' || echo '$(srcdir)/'`strcasecmp.c
-
-lib_a-strcasecmp.obj: strcasecmp.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strcasecmp.obj `if test -f 'strcasecmp.c'; then $(CYGPATH_W) 'strcasecmp.c'; else $(CYGPATH_W) '$(srcdir)/strcasecmp.c'; fi`
-
-lib_a-strcat.o: strcat.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strcat.o `test -f 'strcat.c' || echo '$(srcdir)/'`strcat.c
-
-lib_a-strcat.obj: strcat.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strcat.obj `if test -f 'strcat.c'; then $(CYGPATH_W) 'strcat.c'; else $(CYGPATH_W) '$(srcdir)/strcat.c'; fi`
-
-lib_a-strchr.o: strchr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strchr.o `test -f 'strchr.c' || echo '$(srcdir)/'`strchr.c
-
-lib_a-strchr.obj: strchr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strchr.obj `if test -f 'strchr.c'; then $(CYGPATH_W) 'strchr.c'; else $(CYGPATH_W) '$(srcdir)/strchr.c'; fi`
-
-lib_a-strcmp.o: strcmp.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strcmp.o `test -f 'strcmp.c' || echo '$(srcdir)/'`strcmp.c
-
-lib_a-strcmp.obj: strcmp.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strcmp.obj `if test -f 'strcmp.c'; then $(CYGPATH_W) 'strcmp.c'; else $(CYGPATH_W) '$(srcdir)/strcmp.c'; fi`
-
-lib_a-strcoll.o: strcoll.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strcoll.o `test -f 'strcoll.c' || echo '$(srcdir)/'`strcoll.c
-
-lib_a-strcoll.obj: strcoll.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strcoll.obj `if test -f 'strcoll.c'; then $(CYGPATH_W) 'strcoll.c'; else $(CYGPATH_W) '$(srcdir)/strcoll.c'; fi`
-
-lib_a-strcpy.o: strcpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strcpy.o `test -f 'strcpy.c' || echo '$(srcdir)/'`strcpy.c
-
-lib_a-strcpy.obj: strcpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strcpy.obj `if test -f 'strcpy.c'; then $(CYGPATH_W) 'strcpy.c'; else $(CYGPATH_W) '$(srcdir)/strcpy.c'; fi`
-
-lib_a-strcspn.o: strcspn.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strcspn.o `test -f 'strcspn.c' || echo '$(srcdir)/'`strcspn.c
-
-lib_a-strcspn.obj: strcspn.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strcspn.obj `if test -f 'strcspn.c'; then $(CYGPATH_W) 'strcspn.c'; else $(CYGPATH_W) '$(srcdir)/strcspn.c'; fi`
-
-lib_a-strdup.o: strdup.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strdup.o `test -f 'strdup.c' || echo '$(srcdir)/'`strdup.c
-
-lib_a-strdup.obj: strdup.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strdup.obj `if test -f 'strdup.c'; then $(CYGPATH_W) 'strdup.c'; else $(CYGPATH_W) '$(srcdir)/strdup.c'; fi`
-
-lib_a-strdup_r.o: strdup_r.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strdup_r.o `test -f 'strdup_r.c' || echo '$(srcdir)/'`strdup_r.c
-
-lib_a-strdup_r.obj: strdup_r.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strdup_r.obj `if test -f 'strdup_r.c'; then $(CYGPATH_W) 'strdup_r.c'; else $(CYGPATH_W) '$(srcdir)/strdup_r.c'; fi`
-
-lib_a-strerror.o: strerror.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strerror.o `test -f 'strerror.c' || echo '$(srcdir)/'`strerror.c
-
-lib_a-strerror.obj: strerror.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strerror.obj `if test -f 'strerror.c'; then $(CYGPATH_W) 'strerror.c'; else $(CYGPATH_W) '$(srcdir)/strerror.c'; fi`
-
-lib_a-strerror_r.o: strerror_r.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strerror_r.o `test -f 'strerror_r.c' || echo '$(srcdir)/'`strerror_r.c
-
-lib_a-strerror_r.obj: strerror_r.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strerror_r.obj `if test -f 'strerror_r.c'; then $(CYGPATH_W) 'strerror_r.c'; else $(CYGPATH_W) '$(srcdir)/strerror_r.c'; fi`
-
-lib_a-strlcat.o: strlcat.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strlcat.o `test -f 'strlcat.c' || echo '$(srcdir)/'`strlcat.c
-
-lib_a-strlcat.obj: strlcat.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strlcat.obj `if test -f 'strlcat.c'; then $(CYGPATH_W) 'strlcat.c'; else $(CYGPATH_W) '$(srcdir)/strlcat.c'; fi`
-
-lib_a-strlcpy.o: strlcpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strlcpy.o `test -f 'strlcpy.c' || echo '$(srcdir)/'`strlcpy.c
-
-lib_a-strlcpy.obj: strlcpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strlcpy.obj `if test -f 'strlcpy.c'; then $(CYGPATH_W) 'strlcpy.c'; else $(CYGPATH_W) '$(srcdir)/strlcpy.c'; fi`
-
-lib_a-strlen.o: strlen.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strlen.o `test -f 'strlen.c' || echo '$(srcdir)/'`strlen.c
-
-lib_a-strlen.obj: strlen.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strlen.obj `if test -f 'strlen.c'; then $(CYGPATH_W) 'strlen.c'; else $(CYGPATH_W) '$(srcdir)/strlen.c'; fi`
-
-lib_a-strlwr.o: strlwr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strlwr.o `test -f 'strlwr.c' || echo '$(srcdir)/'`strlwr.c
-
-lib_a-strlwr.obj: strlwr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strlwr.obj `if test -f 'strlwr.c'; then $(CYGPATH_W) 'strlwr.c'; else $(CYGPATH_W) '$(srcdir)/strlwr.c'; fi`
-
-lib_a-strncasecmp.o: strncasecmp.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strncasecmp.o `test -f 'strncasecmp.c' || echo '$(srcdir)/'`strncasecmp.c
-
-lib_a-strncasecmp.obj: strncasecmp.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strncasecmp.obj `if test -f 'strncasecmp.c'; then $(CYGPATH_W) 'strncasecmp.c'; else $(CYGPATH_W) '$(srcdir)/strncasecmp.c'; fi`
-
-lib_a-strncat.o: strncat.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strncat.o `test -f 'strncat.c' || echo '$(srcdir)/'`strncat.c
-
-lib_a-strncat.obj: strncat.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strncat.obj `if test -f 'strncat.c'; then $(CYGPATH_W) 'strncat.c'; else $(CYGPATH_W) '$(srcdir)/strncat.c'; fi`
-
-lib_a-strncmp.o: strncmp.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strncmp.o `test -f 'strncmp.c' || echo '$(srcdir)/'`strncmp.c
-
-lib_a-strncmp.obj: strncmp.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strncmp.obj `if test -f 'strncmp.c'; then $(CYGPATH_W) 'strncmp.c'; else $(CYGPATH_W) '$(srcdir)/strncmp.c'; fi`
-
-lib_a-strncpy.o: strncpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strncpy.o `test -f 'strncpy.c' || echo '$(srcdir)/'`strncpy.c
-
-lib_a-strncpy.obj: strncpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strncpy.obj `if test -f 'strncpy.c'; then $(CYGPATH_W) 'strncpy.c'; else $(CYGPATH_W) '$(srcdir)/strncpy.c'; fi`
-
-lib_a-strnlen.o: strnlen.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strnlen.o `test -f 'strnlen.c' || echo '$(srcdir)/'`strnlen.c
-
-lib_a-strnlen.obj: strnlen.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strnlen.obj `if test -f 'strnlen.c'; then $(CYGPATH_W) 'strnlen.c'; else $(CYGPATH_W) '$(srcdir)/strnlen.c'; fi`
-
-lib_a-strpbrk.o: strpbrk.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strpbrk.o `test -f 'strpbrk.c' || echo '$(srcdir)/'`strpbrk.c
-
-lib_a-strpbrk.obj: strpbrk.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strpbrk.obj `if test -f 'strpbrk.c'; then $(CYGPATH_W) 'strpbrk.c'; else $(CYGPATH_W) '$(srcdir)/strpbrk.c'; fi`
-
-lib_a-strrchr.o: strrchr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strrchr.o `test -f 'strrchr.c' || echo '$(srcdir)/'`strrchr.c
-
-lib_a-strrchr.obj: strrchr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strrchr.obj `if test -f 'strrchr.c'; then $(CYGPATH_W) 'strrchr.c'; else $(CYGPATH_W) '$(srcdir)/strrchr.c'; fi`
-
-lib_a-strsep.o: strsep.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strsep.o `test -f 'strsep.c' || echo '$(srcdir)/'`strsep.c
-
-lib_a-strsep.obj: strsep.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strsep.obj `if test -f 'strsep.c'; then $(CYGPATH_W) 'strsep.c'; else $(CYGPATH_W) '$(srcdir)/strsep.c'; fi`
-
-lib_a-strspn.o: strspn.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strspn.o `test -f 'strspn.c' || echo '$(srcdir)/'`strspn.c
-
-lib_a-strspn.obj: strspn.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strspn.obj `if test -f 'strspn.c'; then $(CYGPATH_W) 'strspn.c'; else $(CYGPATH_W) '$(srcdir)/strspn.c'; fi`
-
-lib_a-strtok.o: strtok.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strtok.o `test -f 'strtok.c' || echo '$(srcdir)/'`strtok.c
-
-lib_a-strtok.obj: strtok.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strtok.obj `if test -f 'strtok.c'; then $(CYGPATH_W) 'strtok.c'; else $(CYGPATH_W) '$(srcdir)/strtok.c'; fi`
-
-lib_a-strtok_r.o: strtok_r.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strtok_r.o `test -f 'strtok_r.c' || echo '$(srcdir)/'`strtok_r.c
-
-lib_a-strtok_r.obj: strtok_r.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strtok_r.obj `if test -f 'strtok_r.c'; then $(CYGPATH_W) 'strtok_r.c'; else $(CYGPATH_W) '$(srcdir)/strtok_r.c'; fi`
-
-lib_a-strupr.o: strupr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strupr.o `test -f 'strupr.c' || echo '$(srcdir)/'`strupr.c
-
-lib_a-strupr.obj: strupr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strupr.obj `if test -f 'strupr.c'; then $(CYGPATH_W) 'strupr.c'; else $(CYGPATH_W) '$(srcdir)/strupr.c'; fi`
-
-lib_a-strxfrm.o: strxfrm.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strxfrm.o `test -f 'strxfrm.c' || echo '$(srcdir)/'`strxfrm.c
-
-lib_a-strxfrm.obj: strxfrm.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strxfrm.obj `if test -f 'strxfrm.c'; then $(CYGPATH_W) 'strxfrm.c'; else $(CYGPATH_W) '$(srcdir)/strxfrm.c'; fi`
-
-lib_a-strstr.o: strstr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strstr.o `test -f 'strstr.c' || echo '$(srcdir)/'`strstr.c
-
-lib_a-strstr.obj: strstr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strstr.obj `if test -f 'strstr.c'; then $(CYGPATH_W) 'strstr.c'; else $(CYGPATH_W) '$(srcdir)/strstr.c'; fi`
-
-lib_a-swab.o: swab.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-swab.o `test -f 'swab.c' || echo '$(srcdir)/'`swab.c
-
-lib_a-swab.obj: swab.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-swab.obj `if test -f 'swab.c'; then $(CYGPATH_W) 'swab.c'; else $(CYGPATH_W) '$(srcdir)/swab.c'; fi`
-
-lib_a-u_strerr.o: u_strerr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-u_strerr.o `test -f 'u_strerr.c' || echo '$(srcdir)/'`u_strerr.c
-
-lib_a-u_strerr.obj: u_strerr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-u_strerr.obj `if test -f 'u_strerr.c'; then $(CYGPATH_W) 'u_strerr.c'; else $(CYGPATH_W) '$(srcdir)/u_strerr.c'; fi`
-
-lib_a-wcscat.o: wcscat.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcscat.o `test -f 'wcscat.c' || echo '$(srcdir)/'`wcscat.c
-
-lib_a-wcscat.obj: wcscat.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcscat.obj `if test -f 'wcscat.c'; then $(CYGPATH_W) 'wcscat.c'; else $(CYGPATH_W) '$(srcdir)/wcscat.c'; fi`
-
-lib_a-wcschr.o: wcschr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcschr.o `test -f 'wcschr.c' || echo '$(srcdir)/'`wcschr.c
-
-lib_a-wcschr.obj: wcschr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcschr.obj `if test -f 'wcschr.c'; then $(CYGPATH_W) 'wcschr.c'; else $(CYGPATH_W) '$(srcdir)/wcschr.c'; fi`
-
-lib_a-wcscmp.o: wcscmp.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcscmp.o `test -f 'wcscmp.c' || echo '$(srcdir)/'`wcscmp.c
-
-lib_a-wcscmp.obj: wcscmp.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcscmp.obj `if test -f 'wcscmp.c'; then $(CYGPATH_W) 'wcscmp.c'; else $(CYGPATH_W) '$(srcdir)/wcscmp.c'; fi`
-
-lib_a-wcscoll.o: wcscoll.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcscoll.o `test -f 'wcscoll.c' || echo '$(srcdir)/'`wcscoll.c
-
-lib_a-wcscoll.obj: wcscoll.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcscoll.obj `if test -f 'wcscoll.c'; then $(CYGPATH_W) 'wcscoll.c'; else $(CYGPATH_W) '$(srcdir)/wcscoll.c'; fi`
-
-lib_a-wcscpy.o: wcscpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcscpy.o `test -f 'wcscpy.c' || echo '$(srcdir)/'`wcscpy.c
-
-lib_a-wcscpy.obj: wcscpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcscpy.obj `if test -f 'wcscpy.c'; then $(CYGPATH_W) 'wcscpy.c'; else $(CYGPATH_W) '$(srcdir)/wcscpy.c'; fi`
-
-lib_a-wcscspn.o: wcscspn.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcscspn.o `test -f 'wcscspn.c' || echo '$(srcdir)/'`wcscspn.c
-
-lib_a-wcscspn.obj: wcscspn.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcscspn.obj `if test -f 'wcscspn.c'; then $(CYGPATH_W) 'wcscspn.c'; else $(CYGPATH_W) '$(srcdir)/wcscspn.c'; fi`
-
-lib_a-wcslcat.o: wcslcat.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcslcat.o `test -f 'wcslcat.c' || echo '$(srcdir)/'`wcslcat.c
-
-lib_a-wcslcat.obj: wcslcat.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcslcat.obj `if test -f 'wcslcat.c'; then $(CYGPATH_W) 'wcslcat.c'; else $(CYGPATH_W) '$(srcdir)/wcslcat.c'; fi`
-
-lib_a-wcslcpy.o: wcslcpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcslcpy.o `test -f 'wcslcpy.c' || echo '$(srcdir)/'`wcslcpy.c
-
-lib_a-wcslcpy.obj: wcslcpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcslcpy.obj `if test -f 'wcslcpy.c'; then $(CYGPATH_W) 'wcslcpy.c'; else $(CYGPATH_W) '$(srcdir)/wcslcpy.c'; fi`
-
-lib_a-wcslen.o: wcslen.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcslen.o `test -f 'wcslen.c' || echo '$(srcdir)/'`wcslen.c
-
-lib_a-wcslen.obj: wcslen.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcslen.obj `if test -f 'wcslen.c'; then $(CYGPATH_W) 'wcslen.c'; else $(CYGPATH_W) '$(srcdir)/wcslen.c'; fi`
-
-lib_a-wcsncat.o: wcsncat.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcsncat.o `test -f 'wcsncat.c' || echo '$(srcdir)/'`wcsncat.c
-
-lib_a-wcsncat.obj: wcsncat.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcsncat.obj `if test -f 'wcsncat.c'; then $(CYGPATH_W) 'wcsncat.c'; else $(CYGPATH_W) '$(srcdir)/wcsncat.c'; fi`
-
-lib_a-wcsncmp.o: wcsncmp.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcsncmp.o `test -f 'wcsncmp.c' || echo '$(srcdir)/'`wcsncmp.c
-
-lib_a-wcsncmp.obj: wcsncmp.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcsncmp.obj `if test -f 'wcsncmp.c'; then $(CYGPATH_W) 'wcsncmp.c'; else $(CYGPATH_W) '$(srcdir)/wcsncmp.c'; fi`
-
-lib_a-wcsncpy.o: wcsncpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcsncpy.o `test -f 'wcsncpy.c' || echo '$(srcdir)/'`wcsncpy.c
-
-lib_a-wcsncpy.obj: wcsncpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcsncpy.obj `if test -f 'wcsncpy.c'; then $(CYGPATH_W) 'wcsncpy.c'; else $(CYGPATH_W) '$(srcdir)/wcsncpy.c'; fi`
-
-lib_a-wcsnlen.o: wcsnlen.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcsnlen.o `test -f 'wcsnlen.c' || echo '$(srcdir)/'`wcsnlen.c
-
-lib_a-wcsnlen.obj: wcsnlen.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcsnlen.obj `if test -f 'wcsnlen.c'; then $(CYGPATH_W) 'wcsnlen.c'; else $(CYGPATH_W) '$(srcdir)/wcsnlen.c'; fi`
-
-lib_a-wcspbrk.o: wcspbrk.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcspbrk.o `test -f 'wcspbrk.c' || echo '$(srcdir)/'`wcspbrk.c
-
-lib_a-wcspbrk.obj: wcspbrk.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcspbrk.obj `if test -f 'wcspbrk.c'; then $(CYGPATH_W) 'wcspbrk.c'; else $(CYGPATH_W) '$(srcdir)/wcspbrk.c'; fi`
-
-lib_a-wcsrchr.o: wcsrchr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcsrchr.o `test -f 'wcsrchr.c' || echo '$(srcdir)/'`wcsrchr.c
-
-lib_a-wcsrchr.obj: wcsrchr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcsrchr.obj `if test -f 'wcsrchr.c'; then $(CYGPATH_W) 'wcsrchr.c'; else $(CYGPATH_W) '$(srcdir)/wcsrchr.c'; fi`
-
-lib_a-wcsspn.o: wcsspn.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcsspn.o `test -f 'wcsspn.c' || echo '$(srcdir)/'`wcsspn.c
-
-lib_a-wcsspn.obj: wcsspn.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcsspn.obj `if test -f 'wcsspn.c'; then $(CYGPATH_W) 'wcsspn.c'; else $(CYGPATH_W) '$(srcdir)/wcsspn.c'; fi`
-
-lib_a-wcsstr.o: wcsstr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcsstr.o `test -f 'wcsstr.c' || echo '$(srcdir)/'`wcsstr.c
-
-lib_a-wcsstr.obj: wcsstr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcsstr.obj `if test -f 'wcsstr.c'; then $(CYGPATH_W) 'wcsstr.c'; else $(CYGPATH_W) '$(srcdir)/wcsstr.c'; fi`
-
-lib_a-wcstok.o: wcstok.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcstok.o `test -f 'wcstok.c' || echo '$(srcdir)/'`wcstok.c
-
-lib_a-wcstok.obj: wcstok.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcstok.obj `if test -f 'wcstok.c'; then $(CYGPATH_W) 'wcstok.c'; else $(CYGPATH_W) '$(srcdir)/wcstok.c'; fi`
-
-lib_a-wcswidth.o: wcswidth.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcswidth.o `test -f 'wcswidth.c' || echo '$(srcdir)/'`wcswidth.c
-
-lib_a-wcswidth.obj: wcswidth.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcswidth.obj `if test -f 'wcswidth.c'; then $(CYGPATH_W) 'wcswidth.c'; else $(CYGPATH_W) '$(srcdir)/wcswidth.c'; fi`
-
-lib_a-wcsxfrm.o: wcsxfrm.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcsxfrm.o `test -f 'wcsxfrm.c' || echo '$(srcdir)/'`wcsxfrm.c
-
-lib_a-wcsxfrm.obj: wcsxfrm.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcsxfrm.obj `if test -f 'wcsxfrm.c'; then $(CYGPATH_W) 'wcsxfrm.c'; else $(CYGPATH_W) '$(srcdir)/wcsxfrm.c'; fi`
-
-lib_a-wcwidth.o: wcwidth.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcwidth.o `test -f 'wcwidth.c' || echo '$(srcdir)/'`wcwidth.c
-
-lib_a-wcwidth.obj: wcwidth.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcwidth.obj `if test -f 'wcwidth.c'; then $(CYGPATH_W) 'wcwidth.c'; else $(CYGPATH_W) '$(srcdir)/wcwidth.c'; fi`
-
-lib_a-wmemchr.o: wmemchr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wmemchr.o `test -f 'wmemchr.c' || echo '$(srcdir)/'`wmemchr.c
-
-lib_a-wmemchr.obj: wmemchr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wmemchr.obj `if test -f 'wmemchr.c'; then $(CYGPATH_W) 'wmemchr.c'; else $(CYGPATH_W) '$(srcdir)/wmemchr.c'; fi`
-
-lib_a-wmemcmp.o: wmemcmp.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wmemcmp.o `test -f 'wmemcmp.c' || echo '$(srcdir)/'`wmemcmp.c
-
-lib_a-wmemcmp.obj: wmemcmp.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wmemcmp.obj `if test -f 'wmemcmp.c'; then $(CYGPATH_W) 'wmemcmp.c'; else $(CYGPATH_W) '$(srcdir)/wmemcmp.c'; fi`
-
-lib_a-wmemcpy.o: wmemcpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wmemcpy.o `test -f 'wmemcpy.c' || echo '$(srcdir)/'`wmemcpy.c
-
-lib_a-wmemcpy.obj: wmemcpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wmemcpy.obj `if test -f 'wmemcpy.c'; then $(CYGPATH_W) 'wmemcpy.c'; else $(CYGPATH_W) '$(srcdir)/wmemcpy.c'; fi`
-
-lib_a-wmemmove.o: wmemmove.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wmemmove.o `test -f 'wmemmove.c' || echo '$(srcdir)/'`wmemmove.c
-
-lib_a-wmemmove.obj: wmemmove.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wmemmove.obj `if test -f 'wmemmove.c'; then $(CYGPATH_W) 'wmemmove.c'; else $(CYGPATH_W) '$(srcdir)/wmemmove.c'; fi`
-
-lib_a-wmemset.o: wmemset.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wmemset.o `test -f 'wmemset.c' || echo '$(srcdir)/'`wmemset.c
-
-lib_a-wmemset.obj: wmemset.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wmemset.obj `if test -f 'wmemset.c'; then $(CYGPATH_W) 'wmemset.c'; else $(CYGPATH_W) '$(srcdir)/wmemset.c'; fi`
-
-lib_a-bcmp.o: bcmp.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-bcmp.o `test -f 'bcmp.c' || echo '$(srcdir)/'`bcmp.c
-
-lib_a-bcmp.obj: bcmp.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-bcmp.obj `if test -f 'bcmp.c'; then $(CYGPATH_W) 'bcmp.c'; else $(CYGPATH_W) '$(srcdir)/bcmp.c'; fi`
-
-lib_a-memccpy.o: memccpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-memccpy.o `test -f 'memccpy.c' || echo '$(srcdir)/'`memccpy.c
-
-lib_a-memccpy.obj: memccpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-memccpy.obj `if test -f 'memccpy.c'; then $(CYGPATH_W) 'memccpy.c'; else $(CYGPATH_W) '$(srcdir)/memccpy.c'; fi`
-
-lib_a-mempcpy.o: mempcpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-mempcpy.o `test -f 'mempcpy.c' || echo '$(srcdir)/'`mempcpy.c
-
-lib_a-mempcpy.obj: mempcpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-mempcpy.obj `if test -f 'mempcpy.c'; then $(CYGPATH_W) 'mempcpy.c'; else $(CYGPATH_W) '$(srcdir)/mempcpy.c'; fi`
-
-lib_a-stpcpy.o: stpcpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-stpcpy.o `test -f 'stpcpy.c' || echo '$(srcdir)/'`stpcpy.c
-
-lib_a-stpcpy.obj: stpcpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-stpcpy.obj `if test -f 'stpcpy.c'; then $(CYGPATH_W) 'stpcpy.c'; else $(CYGPATH_W) '$(srcdir)/stpcpy.c'; fi`
-
-lib_a-stpncpy.o: stpncpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-stpncpy.o `test -f 'stpncpy.c' || echo '$(srcdir)/'`stpncpy.c
-
-lib_a-stpncpy.obj: stpncpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-stpncpy.obj `if test -f 'stpncpy.c'; then $(CYGPATH_W) 'stpncpy.c'; else $(CYGPATH_W) '$(srcdir)/stpncpy.c'; fi`
-
-lib_a-strndup.o: strndup.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strndup.o `test -f 'strndup.c' || echo '$(srcdir)/'`strndup.c
-
-lib_a-strndup.obj: strndup.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strndup.obj `if test -f 'strndup.c'; then $(CYGPATH_W) 'strndup.c'; else $(CYGPATH_W) '$(srcdir)/strndup.c'; fi`
-
-lib_a-strcasestr.o: strcasestr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strcasestr.o `test -f 'strcasestr.c' || echo '$(srcdir)/'`strcasestr.c
-
-lib_a-strcasestr.obj: strcasestr.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strcasestr.obj `if test -f 'strcasestr.c'; then $(CYGPATH_W) 'strcasestr.c'; else $(CYGPATH_W) '$(srcdir)/strcasestr.c'; fi`
-
-lib_a-strndup_r.o: strndup_r.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strndup_r.o `test -f 'strndup_r.c' || echo '$(srcdir)/'`strndup_r.c
-
-lib_a-strndup_r.obj: strndup_r.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-strndup_r.obj `if test -f 'strndup_r.c'; then $(CYGPATH_W) 'strndup_r.c'; else $(CYGPATH_W) '$(srcdir)/strndup_r.c'; fi`
-
-lib_a-wcpcpy.o: wcpcpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcpcpy.o `test -f 'wcpcpy.c' || echo '$(srcdir)/'`wcpcpy.c
-
-lib_a-wcpcpy.obj: wcpcpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcpcpy.obj `if test -f 'wcpcpy.c'; then $(CYGPATH_W) 'wcpcpy.c'; else $(CYGPATH_W) '$(srcdir)/wcpcpy.c'; fi`
-
-lib_a-wcpncpy.o: wcpncpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcpncpy.o `test -f 'wcpncpy.c' || echo '$(srcdir)/'`wcpncpy.c
-
-lib_a-wcpncpy.obj: wcpncpy.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-wcpncpy.obj `if test -f 'wcpncpy.c'; then $(CYGPATH_W) 'wcpncpy.c'; else $(CYGPATH_W) '$(srcdir)/wcpncpy.c'; fi`
-
-lib_a-memmem.o: memmem.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-memmem.o `test -f 'memmem.c' || echo '$(srcdir)/'`memmem.c
-
-lib_a-memmem.obj: memmem.c
- $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-memmem.obj `if test -f 'memmem.c'; then $(CYGPATH_W) 'memmem.c'; else $(CYGPATH_W) '$(srcdir)/memmem.c'; fi`
-
-mostlyclean-libtool:
- -rm -f *.lo
-
-clean-libtool:
- -rm -rf .libs _libs
-
-distclean-libtool:
- -rm -f libtool
-uninstall-info-am:
-
-ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- mkid -fID $$unique
-tags: TAGS
-
-TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- tags=; \
- here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
- test -n "$$unique" || unique=$$empty_fix; \
- $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
- $$tags $$unique; \
- fi
-ctags: CTAGS
-CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
- $(TAGS_FILES) $(LISP)
- tags=; \
- here=`pwd`; \
- list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
- unique=`for i in $$list; do \
- if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
- done | \
- $(AWK) ' { files[$$0] = 1; } \
- END { for (i in files) print i; }'`; \
- test -z "$(CTAGS_ARGS)$$tags$$unique" \
- || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
- $$tags $$unique
-
-GTAGS:
- here=`$(am__cd) $(top_builddir) && pwd` \
- && cd $(top_srcdir) \
- && gtags -i $(GTAGS_ARGS) $$here
-
-distclean-tags:
- -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-check-am:
-check: check-am
-all-am: Makefile $(LIBRARIES) $(LTLIBRARIES) $(DATA)
-installdirs:
-install: install-am
-install-exec: install-exec-am
-install-data: install-data-am
-uninstall: uninstall-am
-
-install-am: all-am
- @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
-
-installcheck: installcheck-am
-install-strip:
- $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
- install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
- `test -z '$(STRIP)' || \
- echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
-mostlyclean-generic:
-
-clean-generic:
- -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
-
-distclean-generic:
- -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-
-maintainer-clean-generic:
- @echo "This command is intended for maintainers to use"
- @echo "it deletes files that may require special tools to rebuild."
-clean: clean-am
-
-clean-am: clean-generic clean-libtool clean-noinstLIBRARIES \
- clean-noinstLTLIBRARIES mostlyclean-am
-
-distclean: distclean-am
- -rm -f Makefile
-distclean-am: clean-am distclean-compile distclean-generic \
- distclean-libtool distclean-tags
-
-dvi: dvi-am
-
-dvi-am:
-
-html: html-am
-
-info: info-am
-
-info-am:
-
-install-data-am:
-
-install-exec-am:
-
-install-info: install-info-am
-
-install-man:
-
-installcheck-am:
-
-maintainer-clean: maintainer-clean-am
- -rm -f Makefile
-maintainer-clean-am: distclean-am maintainer-clean-generic
-
-mostlyclean: mostlyclean-am
-
-mostlyclean-am: mostlyclean-compile mostlyclean-generic \
- mostlyclean-libtool
-
-pdf: pdf-am
-
-pdf-am:
-
-ps: ps-am
-
-ps-am:
-
-uninstall-am:
-
-.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
- clean-libtool clean-noinstLIBRARIES clean-noinstLTLIBRARIES \
- ctags distclean distclean-compile distclean-generic \
- distclean-libtool distclean-tags dvi dvi-am html html-am info \
- info-am install install-am install-data install-data-am \
- install-exec install-exec-am install-info install-info-am \
- install-man install-strip installcheck installcheck-am \
- installdirs maintainer-clean maintainer-clean-generic \
- mostlyclean mostlyclean-compile mostlyclean-generic \
- mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \
- uninstall-am uninstall-info-am
-
-objectlist.awk.in: $(noinst_LTLIBRARIES)
- -rm -f objectlist.awk.in
- for i in `ls *.lo` ; \
- do \
- echo $$i `pwd`/$$i >> objectlist.awk.in ; \
- done
-
-.c.def:
- $(CHEW) < $< > $*.def 2> $*.ref
- touch stmp-def
-
-doc: $(CHEWOUT_FILES)
- cat $(srcdir)/strings.tex >> $(TARGETDOC)
- cat $(srcdir)/wcstrings.tex >> $(TARGETDOC)
-# Tell versions [3.59,3.63) of GNU make to not export all variables.
-# Otherwise a system limit (for SysV at least) may be exceeded.
-.NOEXPORT:
diff --git a/newlib/libc/string/bcmp.c b/newlib/libc/string/bcmp.c
deleted file mode 100644
index e8d057352..000000000
--- a/newlib/libc/string/bcmp.c
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
-FUNCTION
- <<bcmp>>---compare two memory areas
-
-INDEX
- bcmp
-
-ANSI_SYNOPSIS
- #include <string.h>
- int bcmp(const void *<[s1]>, const void *<[s2]>, size_t <[n]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- int bcmp(<[s1]>, <[s2]>, <[n]>)
- const void *<[s1]>;
- const void *<[s2]>;
- size_t <[n]>;
-
-DESCRIPTION
- This function compares not more than <[n]> bytes of the
- object pointed to by <[s1]> with the object pointed to by <[s2]>.
-
- This function is identical to <<memcmp>>.
-
-RETURNS
- The function returns an integer greater than, equal to or
- less than zero according to whether the object pointed to by
- <[s1]> is greater than, equal to or less than the object
- pointed to by <[s2]>.
-
-PORTABILITY
-<<bcmp>> requires no supporting OS subroutines.
-
-QUICKREF
- bcmp ansi pure
-*/
-
-#include <string.h>
-
-int
-_DEFUN (bcmp, (m1, m2, n),
- _CONST void *m1 _AND
- _CONST void *m2 _AND
- size_t n)
-
-{
- return memcmp (m1, m2, n);
-}
diff --git a/newlib/libc/string/bcopy.c b/newlib/libc/string/bcopy.c
deleted file mode 100644
index 505e39dc7..000000000
--- a/newlib/libc/string/bcopy.c
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
-FUNCTION
- <<bcopy>>---copy memory regions
-
-ANSI_SYNOPSIS
- #include <string.h>
- void bcopy(const void *<[in]>, void *<[out]>, size_t <[n]>);
-
-TRAD_SYNOPSIS
- void bcopy(<[in]>, <[out]>, <[n]>
- const void *<[in]>;
- void *<[out]>;
- size_t <[n]>;
-
-DESCRIPTION
- This function copies <[n]> bytes from the memory region
- pointed to by <[in]> to the memory region pointed to by
- <[out]>.
-
- This function is implemented in term of <<memmove>>.
-
-PORTABILITY
-<<bcopy>> requires no supporting OS subroutines.
-
-QUICKREF
- bcopy - pure
-*/
-
-#include <string.h>
-
-void
-_DEFUN (bcopy, (b1, b2, length),
- _CONST void *b1 _AND
- void *b2 _AND
- size_t length)
-{
- memmove (b2, b1, length);
-}
diff --git a/newlib/libc/string/bzero.c b/newlib/libc/string/bzero.c
deleted file mode 100644
index 661285f7b..000000000
--- a/newlib/libc/string/bzero.c
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
-FUNCTION
-<<bzero>>---initialize memory to zero
-
-INDEX
- bzero
-
-ANSI_SYNOPSIS
- #include <string.h>
- void bzero(void *<[b]>, size_t <[length]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- void bzero(<[b]>, <[length]>)
- void *<[b]>;
- size_t <[length]>;
-
-DESCRIPTION
-<<bzero>> initializes <[length]> bytes of memory, starting at address
-<[b]>, to zero.
-
-RETURNS
-<<bzero>> does not return a result.
-
-PORTABILITY
-<<bzero>> is in the Berkeley Software Distribution.
-Neither ANSI C nor the System V Interface Definition (Issue 2) require
-<<bzero>>.
-
-<<bzero>> requires no supporting OS subroutines.
-*/
-
-#include <string.h>
-
-_VOID
-_DEFUN (bzero, (b, length),
- void *b _AND
- size_t length)
-{
- char *ptr = (char *)b;
- while (length--)
- *ptr++ = 0;
-}
diff --git a/newlib/libc/string/index.c b/newlib/libc/string/index.c
deleted file mode 100644
index 6c165f952..000000000
--- a/newlib/libc/string/index.c
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
-FUNCTION
- <<index>>---search for character in string
-
-INDEX
- index
-
-ANSI_SYNOPSIS
- #include <string.h>
- char * index(const char *<[string]>, int <[c]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- char * index(<[string]>, <[c]>);
- char *<[string]>;
- int *<[c]>;
-
-DESCRIPTION
- This function finds the first occurence of <[c]> (converted to
- a char) in the string pointed to by <[string]> (including the
- terminating null character).
-
- This function is identical to <<strchr>>.
-
-RETURNS
- Returns a pointer to the located character, or a null pointer
- if <[c]> does not occur in <[string]>.
-
-PORTABILITY
-<<index>> requires no supporting OS subroutines.
-
-QUICKREF
- index - pure
-*/
-
-#include <string.h>
-
-char *
-_DEFUN (index, (s, c),
- _CONST char *s _AND
- int c)
-{
- return strchr (s, c);
-}
diff --git a/newlib/libc/string/memccpy.c b/newlib/libc/string/memccpy.c
deleted file mode 100644
index f677ac02e..000000000
--- a/newlib/libc/string/memccpy.c
+++ /dev/null
@@ -1,145 +0,0 @@
-/*
-FUNCTION
- <<memccpy>>---copy memory regions with end-token check
-
-ANSI_SYNOPSIS
- #include <string.h>
- void* memccpy(void *<[out]>, const void *<[in]>,
- int <[endchar]>, size_t <[n]>);
-
-TRAD_SYNOPSIS
- void *memccpy(<[out]>, <[in]>, <[endchar]>, <[n]>
- void *<[out]>;
- void *<[in]>;
- int <[endchar]>;
- size_t <[n]>;
-
-DESCRIPTION
- This function copies up to <[n]> bytes from the memory region
- pointed to by <[in]> to the memory region pointed to by
- <[out]>. If a byte matching the <[endchar]> is encountered,
- the byte is copied and copying stops.
-
- If the regions overlap, the behavior is undefined.
-
-RETURNS
- <<memccpy>> returns a pointer to the first byte following the
- <[endchar]> in the <[out]> region. If no byte matching
- <[endchar]> was copied, then <<NULL>> is returned.
-
-PORTABILITY
-<<memccpy>> is a GNU extension.
-
-<<memccpy>> requires no supporting OS subroutines.
-
- */
-
-#include <_ansi.h>
-#include <stddef.h>
-#include <string.h>
-#include <limits.h>
-
-/* Nonzero if either X or Y is not aligned on a "long" boundary. */
-#define UNALIGNED(X, Y) \
- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1)))
-
-/* How many bytes are copied each iteration of the word copy loop. */
-#define LITTLEBLOCKSIZE (sizeof (long))
-
-/* Threshhold for punting to the byte copier. */
-#define TOO_SMALL(LEN) ((LEN) < LITTLEBLOCKSIZE)
-
-/* Macros for detecting endchar */
-#if LONG_MAX == 2147483647L
-#define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080)
-#else
-#if LONG_MAX == 9223372036854775807L
-/* Nonzero if X (a long int) contains a NULL byte. */
-#define DETECTNULL(X) (((X) - 0x0101010101010101) & ~(X) & 0x8080808080808080)
-#else
-#error long int is not a 32bit or 64bit type.
-#endif
-#endif
-
-
-_PTR
-_DEFUN (memccpy, (dst0, src0, endchar, len0),
- _PTR dst0 _AND
- _CONST _PTR src0 _AND
- int endchar0 _AND
- size_t len0)
-{
-
-#if defined(PREFER_SIZE_OVER_SPEED) || defined(__OPTIMIZE_SIZE__)
- _PTR ptr = NULL;
- char *dst = (char *) dst0;
- char *src = (char *) src0;
- char endchar = endchar0 & 0xff;
-
- while (len0--)
- {
- if ((*dst++ = *src++) == endchar)
- {
- ptr = dst;
- break;
- }
- }
-
- return ptr;
-#else
- _PTR ptr = NULL;
- char *dst = dst0;
- _CONST char *src = src0;
- long *aligned_dst;
- _CONST long *aligned_src;
- int len = len0;
- char endchar = endchar0 & 0xff;
-
- /* If the size is small, or either SRC or DST is unaligned,
- then punt into the byte copy loop. This should be rare. */
- if (!TOO_SMALL(len) && !UNALIGNED (src, dst))
- {
- int i;
- unsigned long mask = 0;
-
- aligned_dst = (long*)dst;
- aligned_src = (long*)src;
-
- /* The fast code reads the ASCII one word at a time and only
- performs the bytewise search on word-sized segments if they
- contain the search character, which is detected by XORing
- the word-sized segment with a word-sized block of the search
- character and then detecting for the presence of NULL in the
- result. */
- for (i = 0; i < LITTLEBLOCKSIZE; i++)
- mask = (mask << 8) + endchar;
-
-
- /* Copy one long word at a time if possible. */
- while (len >= LITTLEBLOCKSIZE)
- {
- unsigned long buffer = (unsigned long)(*aligned_src);
- buffer ^= mask;
- if (DETECTNULL (buffer))
- break; /* endchar is found, go byte by byte from here */
- *aligned_dst++ = *aligned_src++;
- len -= LITTLEBLOCKSIZE;
- }
-
- /* Pick up any residual with a byte copier. */
- dst = (char*)aligned_dst;
- src = (char*)aligned_src;
- }
-
- while (len--)
- {
- if ((*dst++ = *src++) == endchar)
- {
- ptr = dst;
- break;
- }
- }
-
- return ptr;
-#endif /* not PREFER_SIZE_OVER_SPEED */
-}
diff --git a/newlib/libc/string/memchr.c b/newlib/libc/string/memchr.c
deleted file mode 100644
index 13ed88186..000000000
--- a/newlib/libc/string/memchr.c
+++ /dev/null
@@ -1,134 +0,0 @@
-/*
-FUNCTION
- <<memchr>>---find character in memory
-
-INDEX
- memchr
-
-ANSI_SYNOPSIS
- #include <string.h>
- void *memchr(const void *<[src]>, int <[c]>, size_t <[length]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- void *memchr(<[src]>, <[c]>, <[length]>)
- void *<[src]>;
- void *<[c]>;
- size_t <[length]>;
-
-DESCRIPTION
- This function searches memory starting at <<*<[src]>>> for the
- character <[c]>. The search only ends with the first
- occurrence of <[c]>, or after <[length]> characters; in
- particular, <<NUL>> does not terminate the search.
-
-RETURNS
- If the character <[c]> is found within <[length]> characters
- of <<*<[src]>>>, a pointer to the character is returned. If
- <[c]> is not found, then <<NULL>> is returned.
-
-PORTABILITY
-<<memchr>> is ANSI C.
-
-<<memchr>> requires no supporting OS subroutines.
-
-QUICKREF
- memchr ansi pure
-*/
-
-#include <_ansi.h>
-#include <string.h>
-#include <limits.h>
-
-/* Nonzero if either X or Y is not aligned on a "long" boundary. */
-#define UNALIGNED(X) ((long)X & (sizeof (long) - 1))
-
-/* How many bytes are loaded each iteration of the word copy loop. */
-#define LBLOCKSIZE (sizeof (long))
-
-/* Threshhold for punting to the bytewise iterator. */
-#define TOO_SMALL(LEN) ((LEN) < LBLOCKSIZE)
-
-#if LONG_MAX == 2147483647L
-#define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080)
-#else
-#if LONG_MAX == 9223372036854775807L
-/* Nonzero if X (a long int) contains a NULL byte. */
-#define DETECTNULL(X) (((X) - 0x0101010101010101) & ~(X) & 0x8080808080808080)
-#else
-#error long int is not a 32bit or 64bit type.
-#endif
-#endif
-
-#ifndef DETECTNULL
-#error long int is not a 32bit or 64bit byte
-#endif
-
-/* DETECTCHAR returns nonzero if (long)X contains the byte used
- to fill (long)MASK. */
-#define DETECTCHAR(X,MASK) (DETECTNULL(X ^ MASK))
-
-_PTR
-_DEFUN (memchr, (src_void, c, length),
- _CONST _PTR src_void _AND
- int c _AND
- size_t length)
-{
- _CONST unsigned char *src = (_CONST unsigned char *) src_void;
- unsigned char d = c;
-
-#if !defined(PREFER_SIZE_OVER_SPEED) && !defined(__OPTIMIZE_SIZE__)
- unsigned long *asrc;
- unsigned long mask;
- int i;
-
- while (UNALIGNED (src))
- {
- if (!length--)
- return NULL;
- if (*src == d)
- return (void *) src;
- src++;
- }
-
- if (!TOO_SMALL (length))
- {
- /* If we get this far, we know that length is large and src is
- word-aligned. */
- /* The fast code reads the source one word at a time and only
- performs the bytewise search on word-sized segments if they
- contain the search character, which is detected by XORing
- the word-sized segment with a word-sized block of the search
- character and then detecting for the presence of NUL in the
- result. */
- asrc = (unsigned long *) src;
- mask = d << 8 | d;
- mask = mask << 16 | mask;
- for (i = 32; i < LBLOCKSIZE * 8; i <<= 1)
- mask = (mask << i) | mask;
-
- while (length >= LBLOCKSIZE)
- {
- if (DETECTCHAR (*asrc, mask))
- break;
- length -= LBLOCKSIZE;
- asrc++;
- }
-
- /* If there are fewer than LBLOCKSIZE characters left,
- then we resort to the bytewise loop. */
-
- src = (unsigned char *) asrc;
- }
-
-#endif /* not PREFER_SIZE_OVER_SPEED */
-
- while (length--)
- {
- if (*src == d)
- return (void *) src;
- src++;
- }
-
- return NULL;
-}
diff --git a/newlib/libc/string/memcmp.c b/newlib/libc/string/memcmp.c
deleted file mode 100644
index 4a871fa60..000000000
--- a/newlib/libc/string/memcmp.c
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
-FUNCTION
- <<memcmp>>---compare two memory areas
-
-INDEX
- memcmp
-
-ANSI_SYNOPSIS
- #include <string.h>
- int memcmp(const void *<[s1]>, const void *<[s2]>, size_t <[n]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- int memcmp(<[s1]>, <[s2]>, <[n]>)
- void *<[s1]>;
- void *<[s2]>;
- size_t <[n]>;
-
-DESCRIPTION
- This function compares not more than <[n]> characters of the
- object pointed to by <[s1]> with the object pointed to by <[s2]>.
-
-
-RETURNS
- The function returns an integer greater than, equal to or
- less than zero according to whether the object pointed to by
- <[s1]> is greater than, equal to or less than the object
- pointed to by <[s2]>.
-
-PORTABILITY
-<<memcmp>> is ANSI C.
-
-<<memcmp>> requires no supporting OS subroutines.
-
-QUICKREF
- memcmp ansi pure
-*/
-
-#include <string.h>
-
-
-/* Nonzero if either X or Y is not aligned on a "long" boundary. */
-#define UNALIGNED(X, Y) \
- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1)))
-
-/* How many bytes are copied each iteration of the word copy loop. */
-#define LBLOCKSIZE (sizeof (long))
-
-/* Threshhold for punting to the byte copier. */
-#define TOO_SMALL(LEN) ((LEN) < LBLOCKSIZE)
-
-int
-_DEFUN (memcmp, (m1, m2, n),
- _CONST _PTR m1 _AND
- _CONST _PTR m2 _AND
- size_t n)
-{
-#if defined(PREFER_SIZE_OVER_SPEED) || defined(__OPTIMIZE_SIZE__)
- unsigned char *s1 = (unsigned char *) m1;
- unsigned char *s2 = (unsigned char *) m2;
-
- while (n--)
- {
- if (*s1 != *s2)
- {
- return *s1 - *s2;
- }
- s1++;
- s2++;
- }
- return 0;
-#else
- unsigned char *s1 = (unsigned char *) m1;
- unsigned char *s2 = (unsigned char *) m2;
- unsigned long *a1;
- unsigned long *a2;
-
- /* If the size is too small, or either pointer is unaligned,
- then we punt to the byte compare loop. Hopefully this will
- not turn up in inner loops. */
- if (!TOO_SMALL(n) && !UNALIGNED(s1,s2))
- {
- /* Otherwise, load and compare the blocks of memory one
- word at a time. */
- a1 = (unsigned long*) s1;
- a2 = (unsigned long*) s2;
- while (n >= LBLOCKSIZE)
- {
- if (*a1 != *a2)
- break;
- a1++;
- a2++;
- n -= LBLOCKSIZE;
- }
-
- /* check m mod LBLOCKSIZE remaining characters */
-
- s1 = (unsigned char*)a1;
- s2 = (unsigned char*)a2;
- }
-
- while (n--)
- {
- if (*s1 != *s2)
- return *s1 - *s2;
- s1++;
- s2++;
- }
-
- return 0;
-#endif /* not PREFER_SIZE_OVER_SPEED */
-}
-
diff --git a/newlib/libc/string/memcpy.c b/newlib/libc/string/memcpy.c
deleted file mode 100644
index 5a09ec4f4..000000000
--- a/newlib/libc/string/memcpy.c
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
-FUNCTION
- <<memcpy>>---copy memory regions
-
-ANSI_SYNOPSIS
- #include <string.h>
- void* memcpy(void *<[out]>, const void *<[in]>, size_t <[n]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- void *memcpy(<[out]>, <[in]>, <[n]>
- void *<[out]>;
- void *<[in]>;
- size_t <[n]>;
-
-DESCRIPTION
- This function copies <[n]> bytes from the memory region
- pointed to by <[in]> to the memory region pointed to by
- <[out]>.
-
- If the regions overlap, the behavior is undefined.
-
-RETURNS
- <<memcpy>> returns a pointer to the first byte of the <[out]>
- region.
-
-PORTABILITY
-<<memcpy>> is ANSI C.
-
-<<memcpy>> requires no supporting OS subroutines.
-
-QUICKREF
- memcpy ansi pure
- */
-
-#include <_ansi.h>
-#include <string.h>
-
-/* Nonzero if either X or Y is not aligned on a "long" boundary. */
-#define UNALIGNED(X, Y) \
- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1)))
-
-/* How many bytes are copied each iteration of the 4X unrolled loop. */
-#define BIGBLOCKSIZE (sizeof (long) << 2)
-
-/* How many bytes are copied each iteration of the word copy loop. */
-#define LITTLEBLOCKSIZE (sizeof (long))
-
-/* Threshhold for punting to the byte copier. */
-#define TOO_SMALL(LEN) ((LEN) < BIGBLOCKSIZE)
-
-_PTR
-_DEFUN (memcpy, (dst0, src0, len0),
- _PTR dst0 _AND
- _CONST _PTR src0 _AND
- size_t len0)
-{
-#if defined(PREFER_SIZE_OVER_SPEED) || defined(__OPTIMIZE_SIZE__)
- char *dst = (char *) dst0;
- char *src = (char *) src0;
-
- _PTR save = dst0;
-
- while (len0--)
- {
- *dst++ = *src++;
- }
-
- return save;
-#else
- char *dst = dst0;
- _CONST char *src = src0;
- long *aligned_dst;
- _CONST long *aligned_src;
- int len = len0;
-
- /* If the size is small, or either SRC or DST is unaligned,
- then punt into the byte copy loop. This should be rare. */
- if (!TOO_SMALL(len) && !UNALIGNED (src, dst))
- {
- aligned_dst = (long*)dst;
- aligned_src = (long*)src;
-
- /* Copy 4X long words at a time if possible. */
- while (len >= BIGBLOCKSIZE)
- {
- *aligned_dst++ = *aligned_src++;
- *aligned_dst++ = *aligned_src++;
- *aligned_dst++ = *aligned_src++;
- *aligned_dst++ = *aligned_src++;
- len -= BIGBLOCKSIZE;
- }
-
- /* Copy one long word at a time if possible. */
- while (len >= LITTLEBLOCKSIZE)
- {
- *aligned_dst++ = *aligned_src++;
- len -= LITTLEBLOCKSIZE;
- }
-
- /* Pick up any residual with a byte copier. */
- dst = (char*)aligned_dst;
- src = (char*)aligned_src;
- }
-
- while (len--)
- *dst++ = *src++;
-
- return dst0;
-#endif /* not PREFER_SIZE_OVER_SPEED */
-}
diff --git a/newlib/libc/string/memmem.c b/newlib/libc/string/memmem.c
deleted file mode 100644
index 25704e467..000000000
--- a/newlib/libc/string/memmem.c
+++ /dev/null
@@ -1,102 +0,0 @@
-/* Byte-wise substring search, using the Two-Way algorithm.
- * Copyright (C) 2008 Eric Blake
- * Permission to use, copy, modify, and distribute this software
- * is freely granted, provided that this notice is preserved.
- */
-
-/*
-FUNCTION
- <<memmem>>---find memory segment
-
-INDEX
- memmem
-
-ANSI_SYNOPSIS
- #include <string.h>
- char *memmem(const void *<[s1]>, size_t <[l1]>, const void *<[s2]>,
- size_t <[l2]>);
-
-DESCRIPTION
-
- Locates the first occurrence in the memory region pointed to
- by <[s1]> with length <[l1]> of the sequence of bytes pointed
- to by <[s2]> of length <[l2]>. If you already know the
- lengths of your haystack and needle, <<memmem>> can be much
- faster than <<strstr>>.
-
-RETURNS
- Returns a pointer to the located segment, or a null pointer if
- <[s2]> is not found. If <[l2]> is 0, <[s1]> is returned.
-
-PORTABILITY
-<<memmem>> is a newlib extension.
-
-<<memmem>> requires no supporting OS subroutines.
-
-QUICKREF
- memmem pure
-*/
-
-#include <string.h>
-
-#if !defined(PREFER_SIZE_OVER_SPEED) && !defined(__OPTIMIZE_SIZE__)
-# define RETURN_TYPE void *
-# define AVAILABLE(h, h_l, j, n_l) ((j) <= (h_l) - (n_l))
-# include "str-two-way.h"
-#endif
-
-void *
-_DEFUN (memmem, (haystack_start, haystack_len, needle_start, needle_len),
- const void *haystack_start _AND
- size_t haystack_len _AND
- const void *needle_start _AND
- size_t needle_len)
-{
- /* Abstract memory is considered to be an array of 'unsigned char' values,
- not an array of 'char' values. See ISO C 99 section 6.2.6.1. */
- const unsigned char *haystack = (const unsigned char *) haystack_start;
- const unsigned char *needle = (const unsigned char *) needle_start;
-
- if (needle_len == 0)
- /* The first occurrence of the empty string is deemed to occur at
- the beginning of the string. */
- return (void *) haystack;
-
-#if defined(PREFER_SIZE_OVER_SPEED) || defined(__OPTIMIZE_SIZE__)
-
- /* Less code size, but quadratic performance in the worst case. */
- while (needle_len <= haystack_len)
- {
- if (!memcmp (haystack, needle, needle_len))
- return (void *) haystack;
- haystack++;
- haystack_len--;
- }
- return NULL;
-
-#else /* compilation for speed */
-
- /* Larger code size, but guaranteed linear performance. */
-
- /* Sanity check, otherwise the loop might search through the whole
- memory. */
- if (haystack_len < needle_len)
- return NULL;
-
- /* Use optimizations in memchr when possible, to reduce the search
- size of haystack using a linear algorithm with a smaller
- coefficient. However, avoid memchr for long needles, since we
- can often achieve sublinear performance. */
- if (needle_len < LONG_NEEDLE_THRESHOLD)
- {
- haystack = memchr (haystack, *needle, haystack_len);
- if (!haystack || needle_len == 1)
- return (void *) haystack;
- haystack_len -= haystack - (const unsigned char *) haystack_start;
- if (haystack_len < needle_len)
- return NULL;
- return two_way_short_needle (haystack, haystack_len, needle, needle_len);
- }
- return two_way_long_needle (haystack, haystack_len, needle, needle_len);
-#endif /* compilation for speed */
-}
diff --git a/newlib/libc/string/memmove.c b/newlib/libc/string/memmove.c
deleted file mode 100644
index 2528e27d4..000000000
--- a/newlib/libc/string/memmove.c
+++ /dev/null
@@ -1,143 +0,0 @@
-/*
-FUNCTION
- <<memmove>>---move possibly overlapping memory
-
-INDEX
- memmove
-
-ANSI_SYNOPSIS
- #include <string.h>
- void *memmove(void *<[dst]>, const void *<[src]>, size_t <[length]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- void *memmove(<[dst]>, <[src]>, <[length]>)
- void *<[dst]>;
- void *<[src]>;
- size_t <[length]>;
-
-DESCRIPTION
- This function moves <[length]> characters from the block of
- memory starting at <<*<[src]>>> to the memory starting at
- <<*<[dst]>>>. <<memmove>> reproduces the characters correctly
- at <<*<[dst]>>> even if the two areas overlap.
-
-
-RETURNS
- The function returns <[dst]> as passed.
-
-PORTABILITY
-<<memmove>> is ANSI C.
-
-<<memmove>> requires no supporting OS subroutines.
-
-QUICKREF
- memmove ansi pure
-*/
-
-#include <string.h>
-#include <_ansi.h>
-#include <stddef.h>
-#include <limits.h>
-
-/* Nonzero if either X or Y is not aligned on a "long" boundary. */
-#define UNALIGNED(X, Y) \
- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1)))
-
-/* How many bytes are copied each iteration of the 4X unrolled loop. */
-#define BIGBLOCKSIZE (sizeof (long) << 2)
-
-/* How many bytes are copied each iteration of the word copy loop. */
-#define LITTLEBLOCKSIZE (sizeof (long))
-
-/* Threshhold for punting to the byte copier. */
-#define TOO_SMALL(LEN) ((LEN) < BIGBLOCKSIZE)
-
-/*SUPPRESS 20*/
-_PTR
-_DEFUN (memmove, (dst_void, src_void, length),
- _PTR dst_void _AND
- _CONST _PTR src_void _AND
- size_t length)
-{
-#if defined(PREFER_SIZE_OVER_SPEED) || defined(__OPTIMIZE_SIZE__)
- char *dst = dst_void;
- _CONST char *src = src_void;
-
- if (src < dst && dst < src + length)
- {
- /* Have to copy backwards */
- src += length;
- dst += length;
- while (length--)
- {
- *--dst = *--src;
- }
- }
- else
- {
- while (length--)
- {
- *dst++ = *src++;
- }
- }
-
- return dst_void;
-#else
- char *dst = dst_void;
- _CONST char *src = src_void;
- long *aligned_dst;
- _CONST long *aligned_src;
- int len = length;
-
- if (src < dst && dst < src + len)
- {
- /* Destructive overlap...have to copy backwards */
- src += len;
- dst += len;
- while (len--)
- {
- *--dst = *--src;
- }
- }
- else
- {
- /* Use optimizing algorithm for a non-destructive copy to closely
- match memcpy. If the size is small or either SRC or DST is unaligned,
- then punt into the byte copy loop. This should be rare. */
- if (!TOO_SMALL(len) && !UNALIGNED (src, dst))
- {
- aligned_dst = (long*)dst;
- aligned_src = (long*)src;
-
- /* Copy 4X long words at a time if possible. */
- while (len >= BIGBLOCKSIZE)
- {
- *aligned_dst++ = *aligned_src++;
- *aligned_dst++ = *aligned_src++;
- *aligned_dst++ = *aligned_src++;
- *aligned_dst++ = *aligned_src++;
- len -= BIGBLOCKSIZE;
- }
-
- /* Copy one long word at a time if possible. */
- while (len >= LITTLEBLOCKSIZE)
- {
- *aligned_dst++ = *aligned_src++;
- len -= LITTLEBLOCKSIZE;
- }
-
- /* Pick up any residual with a byte copier. */
- dst = (char*)aligned_dst;
- src = (char*)aligned_src;
- }
-
- while (len--)
- {
- *dst++ = *src++;
- }
- }
-
- return dst_void;
-#endif /* not PREFER_SIZE_OVER_SPEED */
-}
diff --git a/newlib/libc/string/mempcpy.c b/newlib/libc/string/mempcpy.c
deleted file mode 100644
index 284cbea79..000000000
--- a/newlib/libc/string/mempcpy.c
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
-FUNCTION
- <<mempcpy>>---copy memory regions and return end pointer
-
-ANSI_SYNOPSIS
- #include <string.h>
- void* mempcpy(void *<[out]>, const void *<[in]>, size_t <[n]>);
-
-TRAD_SYNOPSIS
- void *mempcpy(<[out]>, <[in]>, <[n]>
- void *<[out]>;
- void *<[in]>;
- size_t <[n]>;
-
-DESCRIPTION
- This function copies <[n]> bytes from the memory region
- pointed to by <[in]> to the memory region pointed to by
- <[out]>.
-
- If the regions overlap, the behavior is undefined.
-
-RETURNS
- <<mempcpy>> returns a pointer to the byte following the
- last byte copied to the <[out]> region.
-
-PORTABILITY
-<<mempcpy>> is a GNU extension.
-
-<<mempcpy>> requires no supporting OS subroutines.
-
- */
-
-#include <_ansi.h>
-#include <stddef.h>
-#include <limits.h>
-#include <string.h>
-
-/* Nonzero if either X or Y is not aligned on a "long" boundary. */
-#define UNALIGNED(X, Y) \
- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1)))
-
-/* How many bytes are copied each iteration of the 4X unrolled loop. */
-#define BIGBLOCKSIZE (sizeof (long) << 2)
-
-/* How many bytes are copied each iteration of the word copy loop. */
-#define LITTLEBLOCKSIZE (sizeof (long))
-
-/* Threshhold for punting to the byte copier. */
-#define TOO_SMALL(LEN) ((LEN) < BIGBLOCKSIZE)
-
-_PTR
-_DEFUN (mempcpy, (dst0, src0, len0),
- _PTR dst0 _AND
- _CONST _PTR src0 _AND
- size_t len0)
-{
-#if defined(PREFER_SIZE_OVER_SPEED) || defined(__OPTIMIZE_SIZE__)
- char *dst = (char *) dst0;
- char *src = (char *) src0;
-
- while (len0--)
- {
- *dst++ = *src++;
- }
-
- return dst;
-#else
- char *dst = dst0;
- _CONST char *src = src0;
- long *aligned_dst;
- _CONST long *aligned_src;
- int len = len0;
-
- /* If the size is small, or either SRC or DST is unaligned,
- then punt into the byte copy loop. This should be rare. */
- if (!TOO_SMALL(len) && !UNALIGNED (src, dst))
- {
- aligned_dst = (long*)dst;
- aligned_src = (long*)src;
-
- /* Copy 4X long words at a time if possible. */
- while (len >= BIGBLOCKSIZE)
- {
- *aligned_dst++ = *aligned_src++;
- *aligned_dst++ = *aligned_src++;
- *aligned_dst++ = *aligned_src++;
- *aligned_dst++ = *aligned_src++;
- len -= BIGBLOCKSIZE;
- }
-
- /* Copy one long word at a time if possible. */
- while (len >= LITTLEBLOCKSIZE)
- {
- *aligned_dst++ = *aligned_src++;
- len -= LITTLEBLOCKSIZE;
- }
-
- /* Pick up any residual with a byte copier. */
- dst = (char*)aligned_dst;
- src = (char*)aligned_src;
- }
-
- while (len--)
- *dst++ = *src++;
-
- return dst;
-#endif /* not PREFER_SIZE_OVER_SPEED */
-}
diff --git a/newlib/libc/string/memset.c b/newlib/libc/string/memset.c
deleted file mode 100644
index 55d2ce180..000000000
--- a/newlib/libc/string/memset.c
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
-FUNCTION
- <<memset>>---set an area of memory
-
-INDEX
- memset
-
-ANSI_SYNOPSIS
- #include <string.h>
- void *memset(void *<[dst]>, int <[c]>, size_t <[length]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- void *memset(<[dst]>, <[c]>, <[length]>)
- void *<[dst]>;
- int <[c]>;
- size_t <[length]>;
-
-DESCRIPTION
- This function converts the argument <[c]> into an unsigned
- char and fills the first <[length]> characters of the array
- pointed to by <[dst]> to the value.
-
-RETURNS
- <<memset>> returns the value of <[dst]>.
-
-PORTABILITY
-<<memset>> is ANSI C.
-
- <<memset>> requires no supporting OS subroutines.
-
-QUICKREF
- memset ansi pure
-*/
-
-#include <string.h>
-
-#define LBLOCKSIZE (sizeof(long))
-#define UNALIGNED(X) ((long)X & (LBLOCKSIZE - 1))
-#define TOO_SMALL(LEN) ((LEN) < LBLOCKSIZE)
-
-_PTR
-_DEFUN (memset, (m, c, n),
- _PTR m _AND
- int c _AND
- size_t n)
-{
- char *s = (char *) m;
-
-#if !defined(PREFER_SIZE_OVER_SPEED) && !defined(__OPTIMIZE_SIZE__)
- int i;
- unsigned long buffer;
- unsigned long *aligned_addr;
- unsigned int d = c & 0xff; /* To avoid sign extension, copy C to an
- unsigned variable. */
-
- while (UNALIGNED (s))
- {
- if (n--)
- *s++ = (char) c;
- else
- return m;
- }
-
- if (!TOO_SMALL (n))
- {
- /* If we get this far, we know that n is large and s is word-aligned. */
- aligned_addr = (unsigned long *) s;
-
- /* Store D into each char sized location in BUFFER so that
- we can set large blocks quickly. */
- buffer = (d << 8) | d;
- buffer |= (buffer << 16);
- for (i = 32; i < LBLOCKSIZE * 8; i <<= 1)
- buffer = (buffer << i) | buffer;
-
- /* Unroll the loop. */
- while (n >= LBLOCKSIZE*4)
- {
- *aligned_addr++ = buffer;
- *aligned_addr++ = buffer;
- *aligned_addr++ = buffer;
- *aligned_addr++ = buffer;
- n -= 4*LBLOCKSIZE;
- }
-
- while (n >= LBLOCKSIZE)
- {
- *aligned_addr++ = buffer;
- n -= LBLOCKSIZE;
- }
- /* Pick up the remainder with a bytewise loop. */
- s = (char*)aligned_addr;
- }
-
-#endif /* not PREFER_SIZE_OVER_SPEED */
-
- while (n--)
- *s++ = (char) c;
-
- return m;
-}
diff --git a/newlib/libc/string/rindex.c b/newlib/libc/string/rindex.c
deleted file mode 100644
index 3c6dff909..000000000
--- a/newlib/libc/string/rindex.c
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
-FUNCTION
- <<rindex>>---reverse search for character in string
-
-INDEX
- rindex
-
-ANSI_SYNOPSIS
- #include <string.h>
- char * rindex(const char *<[string]>, int <[c]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- char * rindex(<[string]>, <[c]>);
- char *<[string]>;
- int *<[c]>;
-
-DESCRIPTION
- This function finds the last occurence of <[c]> (converted to
- a char) in the string pointed to by <[string]> (including the
- terminating null character).
-
- This function is identical to <<strrchr>>.
-
-RETURNS
- Returns a pointer to the located character, or a null pointer
- if <[c]> does not occur in <[string]>.
-
-PORTABILITY
-<<rindex>> requires no supporting OS subroutines.
-
-QUICKREF
- rindex - pure
-*/
-
-#include <string.h>
-
-char *
-_DEFUN (rindex, (s, c),
- _CONST char *s _AND
- int c)
-{
- return strrchr (s, c);
-}
diff --git a/newlib/libc/string/stpcpy.c b/newlib/libc/string/stpcpy.c
deleted file mode 100644
index 62fe79997..000000000
--- a/newlib/libc/string/stpcpy.c
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
-FUNCTION
- <<stpcpy>>---copy string returning a pointer to its end
-
-INDEX
- stpcpy
-
-ANSI_SYNOPSIS
- #include <string.h>
- char *stpcpy(char *<[dst]>, const char *<[src]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- char *stpcpy(<[dst]>, <[src]>)
- char *<[dst]>;
- char *<[src]>;
-
-DESCRIPTION
- <<stpcpy>> copies the string pointed to by <[src]>
- (including the terminating null character) to the array
- pointed to by <[dst]>.
-
-RETURNS
- This function returns a pointer to the end of the destination string,
- thus pointing to the trailing '\0'.
-
-PORTABILITY
-<<stpcpy>> is a GNU extension, candidate for inclusion into POSIX/SUSv4.
-
-<<stpcpy>> requires no supporting OS subroutines.
-
-QUICKREF
- stpcpy gnu
-*/
-
-#include <string.h>
-#include <limits.h>
-
-/*SUPPRESS 560*/
-/*SUPPRESS 530*/
-
-/* Nonzero if either X or Y is not aligned on a "long" boundary. */
-#define UNALIGNED(X, Y) \
- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1)))
-
-#if LONG_MAX == 2147483647L
-#define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080)
-#else
-#if LONG_MAX == 9223372036854775807L
-/* Nonzero if X (a long int) contains a NULL byte. */
-#define DETECTNULL(X) (((X) - 0x0101010101010101) & ~(X) & 0x8080808080808080)
-#else
-#error long int is not a 32bit or 64bit type.
-#endif
-#endif
-
-#ifndef DETECTNULL
-#error long int is not a 32bit or 64bit byte
-#endif
-
-char*
-_DEFUN (stpcpy, (dst, src),
- char *dst _AND
- _CONST char *src)
-{
-#if !defined(PREFER_SIZE_OVER_SPEED) && !defined(__OPTIMIZE_SIZE__)
- long *aligned_dst;
- _CONST long *aligned_src;
-
- /* If SRC or DEST is unaligned, then copy bytes. */
- if (!UNALIGNED (src, dst))
- {
- aligned_dst = (long*)dst;
- aligned_src = (long*)src;
-
- /* SRC and DEST are both "long int" aligned, try to do "long int"
- sized copies. */
- while (!DETECTNULL(*aligned_src))
- {
- *aligned_dst++ = *aligned_src++;
- }
-
- dst = (char*)aligned_dst;
- src = (char*)aligned_src;
- }
-#endif /* not PREFER_SIZE_OVER_SPEED */
-
- while ((*dst++ = *src++))
- ;
- return --dst;
-}
diff --git a/newlib/libc/string/stpncpy.c b/newlib/libc/string/stpncpy.c
deleted file mode 100644
index fca10d398..000000000
--- a/newlib/libc/string/stpncpy.c
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
-FUNCTION
- <<stpncpy>>---counted copy string returning a pointer to its end
-
-INDEX
- stpncpy
-
-ANSI_SYNOPSIS
- #include <string.h>
- char *stpncpy(char *<[dst]>, const char *<[src]>, size_t <[length]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- char *stpncpy(<[dst]>, <[src]>, <[length]>)
- char *<[dst]>;
- char *<[src]>;
- size_t <[length]>;
-
-DESCRIPTION
- <<stpncpy>> copies not more than <[length]> characters from the
- the string pointed to by <[src]> (including the terminating
- null character) to the array pointed to by <[dst]>. If the
- string pointed to by <[src]> is shorter than <[length]>
- characters, null characters are appended to the destination
- array until a total of <[length]> characters have been
- written.
-
-RETURNS
- This function returns a pointer to the end of the destination string,
- thus pointing to the trailing '\0', or, if the destination string is
- not null-terminated, pointing to dst + n.
-
-PORTABILITY
-<<stpncpy>> is a GNU extension, candidate for inclusion into POSIX/SUSv4.
-
-<<stpncpy>> requires no supporting OS subroutines.
-
-QUICKREF
- stpncpy gnu
-*/
-
-#include <string.h>
-#include <limits.h>
-
-/*SUPPRESS 560*/
-/*SUPPRESS 530*/
-
-/* Nonzero if either X or Y is not aligned on a "long" boundary. */
-#define UNALIGNED(X, Y) \
- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1)))
-
-#if LONG_MAX == 2147483647L
-#define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080)
-#else
-#if LONG_MAX == 9223372036854775807L
-/* Nonzero if X (a long int) contains a NULL byte. */
-#define DETECTNULL(X) (((X) - 0x0101010101010101) & ~(X) & 0x8080808080808080)
-#else
-#error long int is not a 32bit or 64bit type.
-#endif
-#endif
-
-#ifndef DETECTNULL
-#error long int is not a 32bit or 64bit byte
-#endif
-
-#define TOO_SMALL(LEN) ((LEN) < sizeof (long))
-
-char *
-_DEFUN (stpncpy, (dst, src),
- char *dst _AND
- _CONST char *src _AND
- size_t count)
-{
- char *ret = NULL;
-
-#if !defined(PREFER_SIZE_OVER_SPEED) && !defined(__OPTIMIZE_SIZE__)
- long *aligned_dst;
- _CONST long *aligned_src;
-
- /* If SRC and DEST is aligned and count large enough, then copy words. */
- if (!UNALIGNED (src, dst) && !TOO_SMALL (count))
- {
- aligned_dst = (long*)dst;
- aligned_src = (long*)src;
-
- /* SRC and DEST are both "long int" aligned, try to do "long int"
- sized copies. */
- while (count >= sizeof (long int) && !DETECTNULL(*aligned_src))
- {
- count -= sizeof (long int);
- *aligned_dst++ = *aligned_src++;
- }
-
- dst = (char*)aligned_dst;
- src = (char*)aligned_src;
- }
-#endif /* not PREFER_SIZE_OVER_SPEED */
-
- while (count > 0)
- {
- --count;
- if ((*dst++ = *src++) == '\0')
- {
- ret = dst - 1;
- break;
- }
- }
-
- while (count-- > 0)
- *dst++ = '\0';
-
- return ret ? ret : dst;
-}
diff --git a/newlib/libc/string/str-two-way.h b/newlib/libc/string/str-two-way.h
deleted file mode 100644
index 72b60c39c..000000000
--- a/newlib/libc/string/str-two-way.h
+++ /dev/null
@@ -1,415 +0,0 @@
-/* Byte-wise substring search, using the Two-Way algorithm.
- * Copyright (C) 2008 Eric Blake
- * Permission to use, copy, modify, and distribute this software
- * is freely granted, provided that this notice is preserved.
- */
-
-
-/* Before including this file, you need to include <string.h>, and define:
- RESULT_TYPE A macro that expands to the return type.
- AVAILABLE(h, h_l, j, n_l) A macro that returns nonzero if there are
- at least N_L bytes left starting at
- H[J]. H is 'unsigned char *', H_L, J,
- and N_L are 'size_t'; H_L is an
- lvalue. For NUL-terminated searches,
- H_L can be modified each iteration to
- avoid having to compute the end of H
- up front.
-
- For case-insensitivity, you may optionally define:
- CMP_FUNC(p1, p2, l) A macro that returns 0 iff the first L
- characters of P1 and P2 are equal.
- CANON_ELEMENT(c) A macro that canonicalizes an element
- right after it has been fetched from
- one of the two strings. The argument
- is an 'unsigned char'; the result must
- be an 'unsigned char' as well.
-
- This file undefines the macros documented above, and defines
- LONG_NEEDLE_THRESHOLD.
-*/
-
-#include <limits.h>
-#include <stdint.h>
-
-/* We use the Two-Way string matching algorithm, which guarantees
- linear complexity with constant space. Additionally, for long
- needles, we also use a bad character shift table similar to the
- Boyer-Moore algorithm to achieve improved (potentially sub-linear)
- performance.
-
- See http://www-igm.univ-mlv.fr/~lecroq/string/node26.html#SECTION00260
- and http://en.wikipedia.org/wiki/Boyer-Moore_string_search_algorithm
-*/
-
-/* Point at which computing a bad-byte shift table is likely to be
- worthwhile. Small needles should not compute a table, since it
- adds (1 << CHAR_BIT) + NEEDLE_LEN computations of preparation for a
- speedup no greater than a factor of NEEDLE_LEN. The larger the
- needle, the better the potential performance gain. On the other
- hand, on non-POSIX systems with CHAR_BIT larger than eight, the
- memory required for the table is prohibitive. */
-#if CHAR_BIT < 10
-# define LONG_NEEDLE_THRESHOLD 32U
-#else
-# define LONG_NEEDLE_THRESHOLD SIZE_MAX
-#endif
-
-#define MAX(a, b) ((a < b) ? (b) : (a))
-
-#ifndef CANON_ELEMENT
-# define CANON_ELEMENT(c) c
-#endif
-#ifndef CMP_FUNC
-# define CMP_FUNC memcmp
-#endif
-
-/* Perform a critical factorization of NEEDLE, of length NEEDLE_LEN.
- Return the index of the first byte in the right half, and set
- *PERIOD to the global period of the right half.
-
- The global period of a string is the smallest index (possibly its
- length) at which all remaining bytes in the string are repetitions
- of the prefix (the last repetition may be a subset of the prefix).
-
- When NEEDLE is factored into two halves, a local period is the
- length of the smallest word that shares a suffix with the left half
- and shares a prefix with the right half. All factorizations of a
- non-empty NEEDLE have a local period of at least 1 and no greater
- than NEEDLE_LEN.
-
- A critical factorization has the property that the local period
- equals the global period. All strings have at least one critical
- factorization with the left half smaller than the global period.
-
- Given an ordered alphabet, a critical factorization can be computed
- in linear time, with 2 * NEEDLE_LEN comparisons, by computing the
- larger of two ordered maximal suffixes. The ordered maximal
- suffixes are determined by lexicographic comparison of
- periodicity. */
-static size_t
-critical_factorization (const unsigned char *needle, size_t needle_len,
- size_t *period)
-{
- /* Index of last byte of left half, or SIZE_MAX. */
- size_t max_suffix, max_suffix_rev;
- size_t j; /* Index into NEEDLE for current candidate suffix. */
- size_t k; /* Offset into current period. */
- size_t p; /* Intermediate period. */
- unsigned char a, b; /* Current comparison bytes. */
-
- /* Invariants:
- 0 <= j < NEEDLE_LEN - 1
- -1 <= max_suffix{,_rev} < j (treating SIZE_MAX as if it were signed)
- min(max_suffix, max_suffix_rev) < global period of NEEDLE
- 1 <= p <= global period of NEEDLE
- p == global period of the substring NEEDLE[max_suffix{,_rev}+1...j]
- 1 <= k <= p
- */
-
- /* Perform lexicographic search. */
- max_suffix = SIZE_MAX;
- j = 0;
- k = p = 1;
- while (j + k < needle_len)
- {
- a = CANON_ELEMENT (needle[j + k]);
- b = CANON_ELEMENT (needle[(size_t)(max_suffix + k)]);
- if (a < b)
- {
- /* Suffix is smaller, period is entire prefix so far. */
- j += k;
- k = 1;
- p = j - max_suffix;
- }
- else if (a == b)
- {
- /* Advance through repetition of the current period. */
- if (k != p)
- ++k;
- else
- {
- j += p;
- k = 1;
- }
- }
- else /* b < a */
- {
- /* Suffix is larger, start over from current location. */
- max_suffix = j++;
- k = p = 1;
- }
- }
- *period = p;
-
- /* Perform reverse lexicographic search. */
- max_suffix_rev = SIZE_MAX;
- j = 0;
- k = p = 1;
- while (j + k < needle_len)
- {
- a = CANON_ELEMENT (needle[j + k]);
- b = CANON_ELEMENT (needle[max_suffix_rev + k]);
- if (b < a)
- {
- /* Suffix is smaller, period is entire prefix so far. */
- j += k;
- k = 1;
- p = j - max_suffix_rev;
- }
- else if (a == b)
- {
- /* Advance through repetition of the current period. */
- if (k != p)
- ++k;
- else
- {
- j += p;
- k = 1;
- }
- }
- else /* a < b */
- {
- /* Suffix is larger, start over from current location. */
- max_suffix_rev = j++;
- k = p = 1;
- }
- }
-
- /* Choose the longer suffix. Return the first byte of the right
- half, rather than the last byte of the left half. */
- if (max_suffix_rev + 1 < max_suffix + 1)
- return max_suffix + 1;
- *period = p;
- return max_suffix_rev + 1;
-}
-
-/* Return the first location of non-empty NEEDLE within HAYSTACK, or
- NULL. HAYSTACK_LEN is the minimum known length of HAYSTACK. This
- method is optimized for NEEDLE_LEN < LONG_NEEDLE_THRESHOLD.
- Performance is guaranteed to be linear, with an initialization cost
- of 2 * NEEDLE_LEN comparisons.
-
- If AVAILABLE does not modify HAYSTACK_LEN (as in memmem), then at
- most 2 * HAYSTACK_LEN - NEEDLE_LEN comparisons occur in searching.
- If AVAILABLE modifies HAYSTACK_LEN (as in strstr), then at most 3 *
- HAYSTACK_LEN - NEEDLE_LEN comparisons occur in searching. */
-static RETURN_TYPE
-two_way_short_needle (const unsigned char *haystack, size_t haystack_len,
- const unsigned char *needle, size_t needle_len)
-{
- size_t i; /* Index into current byte of NEEDLE. */
- size_t j; /* Index into current window of HAYSTACK. */
- size_t period; /* The period of the right half of needle. */
- size_t suffix; /* The index of the right half of needle. */
-
- /* Factor the needle into two halves, such that the left half is
- smaller than the global period, and the right half is
- periodic (with a period as large as NEEDLE_LEN - suffix). */
- suffix = critical_factorization (needle, needle_len, &period);
-
- /* Perform the search. Each iteration compares the right half
- first. */
- if (CMP_FUNC (needle, needle + period, suffix) == 0)
- {
- /* Entire needle is periodic; a mismatch can only advance by the
- period, so use memory to avoid rescanning known occurrences
- of the period. */
- size_t memory = 0;
- j = 0;
- while (AVAILABLE (haystack, haystack_len, j, needle_len))
- {
- /* Scan for matches in right half. */
- i = MAX (suffix, memory);
- while (i < needle_len && (CANON_ELEMENT (needle[i])
- == CANON_ELEMENT (haystack[i + j])))
- ++i;
- if (needle_len <= i)
- {
- /* Scan for matches in left half. */
- i = suffix - 1;
- while (memory < i + 1 && (CANON_ELEMENT (needle[i])
- == CANON_ELEMENT (haystack[i + j])))
- --i;
- if (i + 1 < memory + 1)
- return (RETURN_TYPE) (haystack + j);
- /* No match, so remember how many repetitions of period
- on the right half were scanned. */
- j += period;
- memory = needle_len - period;
- }
- else
- {
- j += i - suffix + 1;
- memory = 0;
- }
- }
- }
- else
- {
- /* The two halves of needle are distinct; no extra memory is
- required, and any mismatch results in a maximal shift. */
- period = MAX (suffix, needle_len - suffix) + 1;
- j = 0;
- while (AVAILABLE (haystack, haystack_len, j, needle_len))
- {
- /* Scan for matches in right half. */
- i = suffix;
- while (i < needle_len && (CANON_ELEMENT (needle[i])
- == CANON_ELEMENT (haystack[i + j])))
- ++i;
- if (needle_len <= i)
- {
- /* Scan for matches in left half. */
- i = suffix - 1;
- while (i != SIZE_MAX && (CANON_ELEMENT (needle[i])
- == CANON_ELEMENT (haystack[i + j])))
- --i;
- if (i == SIZE_MAX)
- return (RETURN_TYPE) (haystack + j);
- j += period;
- }
- else
- j += i - suffix + 1;
- }
- }
- return NULL;
-}
-
-/* Return the first location of non-empty NEEDLE within HAYSTACK, or
- NULL. HAYSTACK_LEN is the minimum known length of HAYSTACK. This
- method is optimized for LONG_NEEDLE_THRESHOLD <= NEEDLE_LEN.
- Performance is guaranteed to be linear, with an initialization cost
- of 3 * NEEDLE_LEN + (1 << CHAR_BIT) operations.
-
- If AVAILABLE does not modify HAYSTACK_LEN (as in memmem), then at
- most 2 * HAYSTACK_LEN - NEEDLE_LEN comparisons occur in searching,
- and sublinear performance O(HAYSTACK_LEN / NEEDLE_LEN) is possible.
- If AVAILABLE modifies HAYSTACK_LEN (as in strstr), then at most 3 *
- HAYSTACK_LEN - NEEDLE_LEN comparisons occur in searching, and
- sublinear performance is not possible. */
-static RETURN_TYPE
-two_way_long_needle (const unsigned char *haystack, size_t haystack_len,
- const unsigned char *needle, size_t needle_len)
-{
- size_t i; /* Index into current byte of NEEDLE. */
- size_t j; /* Index into current window of HAYSTACK. */
- size_t period; /* The period of the right half of needle. */
- size_t suffix; /* The index of the right half of needle. */
- size_t shift_table[1U << CHAR_BIT]; /* See below. */
-
- /* Factor the needle into two halves, such that the left half is
- smaller than the global period, and the right half is
- periodic (with a period as large as NEEDLE_LEN - suffix). */
- suffix = critical_factorization (needle, needle_len, &period);
-
- /* Populate shift_table. For each possible byte value c,
- shift_table[c] is the distance from the last occurrence of c to
- the end of NEEDLE, or NEEDLE_LEN if c is absent from the NEEDLE.
- shift_table[NEEDLE[NEEDLE_LEN - 1]] contains the only 0. */
- for (i = 0; i < 1U << CHAR_BIT; i++)
- shift_table[i] = needle_len;
- for (i = 0; i < needle_len; i++)
- shift_table[CANON_ELEMENT (needle[i])] = needle_len - i - 1;
-
- /* Perform the search. Each iteration compares the right half
- first. */
- if (CMP_FUNC (needle, needle + period, suffix) == 0)
- {
- /* Entire needle is periodic; a mismatch can only advance by the
- period, so use memory to avoid rescanning known occurrences
- of the period. */
- size_t memory = 0;
- size_t shift;
- j = 0;
- while (AVAILABLE (haystack, haystack_len, j, needle_len))
- {
- /* Check the last byte first; if it does not match, then
- shift to the next possible match location. */
- shift = shift_table[CANON_ELEMENT (haystack[j + needle_len - 1])];
- if (0 < shift)
- {
- if (memory && shift < period)
- {
- /* Since needle is periodic, but the last period has
- a byte out of place, there can be no match until
- after the mismatch. */
- shift = needle_len - period;
- memory = 0;
- }
- j += shift;
- continue;
- }
- /* Scan for matches in right half. The last byte has
- already been matched, by virtue of the shift table. */
- i = MAX (suffix, memory);
- while (i < needle_len - 1 && (CANON_ELEMENT (needle[i])
- == CANON_ELEMENT (haystack[i + j])))
- ++i;
- if (needle_len - 1 <= i)
- {
- /* Scan for matches in left half. */
- i = suffix - 1;
- while (memory < i + 1 && (CANON_ELEMENT (needle[i])
- == CANON_ELEMENT (haystack[i + j])))
- --i;
- if (i + 1 < memory + 1)
- return (RETURN_TYPE) (haystack + j);
- /* No match, so remember how many repetitions of period
- on the right half were scanned. */
- j += period;
- memory = needle_len - period;
- }
- else
- {
- j += i - suffix + 1;
- memory = 0;
- }
- }
- }
- else
- {
- /* The two halves of needle are distinct; no extra memory is
- required, and any mismatch results in a maximal shift. */
- size_t shift;
- period = MAX (suffix, needle_len - suffix) + 1;
- j = 0;
- while (AVAILABLE (haystack, haystack_len, j, needle_len))
- {
- /* Check the last byte first; if it does not match, then
- shift to the next possible match location. */
- shift = shift_table[CANON_ELEMENT (haystack[j + needle_len - 1])];
- if (0 < shift)
- {
- j += shift;
- continue;
- }
- /* Scan for matches in right half. The last byte has
- already been matched, by virtue of the shift table. */
- i = suffix;
- while (i < needle_len - 1 && (CANON_ELEMENT (needle[i])
- == CANON_ELEMENT (haystack[i + j])))
- ++i;
- if (needle_len - 1 <= i)
- {
- /* Scan for matches in left half. */
- i = suffix - 1;
- while (i != SIZE_MAX && (CANON_ELEMENT (needle[i])
- == CANON_ELEMENT (haystack[i + j])))
- --i;
- if (i == SIZE_MAX)
- return (RETURN_TYPE) (haystack + j);
- j += period;
- }
- else
- j += i - suffix + 1;
- }
- }
- return NULL;
-}
-
-#undef AVAILABLE
-#undef CANON_ELEMENT
-#undef CMP_FUNC
-#undef MAX
-#undef RETURN_TYPE
diff --git a/newlib/libc/string/strcasecmp.c b/newlib/libc/string/strcasecmp.c
deleted file mode 100644
index f96f7f5c9..000000000
--- a/newlib/libc/string/strcasecmp.c
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
-FUNCTION
- <<strcasecmp>>---case-insensitive character string compare
-
-INDEX
- strcasecmp
-
-ANSI_SYNOPSIS
- #include <string.h>
- int strcasecmp(const char *<[a]>, const char *<[b]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- int strcasecmp(<[a]>, <[b]>)
- char *<[a]>;
- char *<[b]>;
-
-DESCRIPTION
- <<strcasecmp>> compares the string at <[a]> to
- the string at <[b]> in a case-insensitive manner.
-
-RETURNS
-
- If <<*<[a]>>> sorts lexicographically after <<*<[b]>>> (after
- both are converted to uppercase), <<strcasecmp>> returns a
- number greater than zero. If the two strings match,
- <<strcasecmp>> returns zero. If <<*<[a]>>> sorts
- lexicographically before <<*<[b]>>>, <<strcasecmp>> returns a
- number less than zero.
-
-PORTABILITY
-<<strcasecmp>> is in the Berkeley Software Distribution.
-
-<<strcasecmp>> requires no supporting OS subroutines. It uses
-tolower() from elsewhere in this library.
-
-QUICKREF
- strcasecmp
-*/
-
-#include <string.h>
-#include <ctype.h>
-
-int
-_DEFUN (strcasecmp, (s1, s2),
- _CONST char *s1 _AND
- _CONST char *s2)
-{
- while (*s1 != '\0' && tolower(*s1) == tolower(*s2))
- {
- s1++;
- s2++;
- }
-
- return tolower(*(unsigned char *) s1) - tolower(*(unsigned char *) s2);
-}
diff --git a/newlib/libc/string/strcasestr.c b/newlib/libc/string/strcasestr.c
deleted file mode 100644
index a8276e2b5..000000000
--- a/newlib/libc/string/strcasestr.c
+++ /dev/null
@@ -1,147 +0,0 @@
-/*
-FUNCTION
- <<strcasestr>>---case-insensitive character string search
-
-INDEX
- strcasestr
-
-ANSI_SYNOPSIS
- #include <string.h>
- char *strcasestr(const char *<[s]>, const char *<[find]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- int strcasecmp(<[s]>, <[find]>)
- char *<[s]>;
- char *<[find]>;
-
-DESCRIPTION
- <<strcasestr>> searchs the string <[s]> for
- the first occurrence of the sequence <[find]>. <<strcasestr>>
- is identical to <<strstr>> except the search is
- case-insensitive.
-
-RETURNS
-
- A pointer to the first case-insensitive occurrence of the sequence
- <[find]> or <<NULL>> if no match was found.
-
-PORTABILITY
-<<strcasestr>> is in the Berkeley Software Distribution.
-
-<<strcasestr>> requires no supporting OS subroutines. It uses
-tolower() from elsewhere in this library.
-
-QUICKREF
- strcasestr
-*/
-
-/*-
- * Copyright (c) 1990, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * The quadratic code is derived from software contributed to Berkeley by
- * Chris Torek.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 4. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-/* Linear algorithm Copyright (C) 2008 Eric Blake
- * Permission to use, copy, modify, and distribute the linear portion of
- * software is freely granted, provided that this notice is preserved.
- */
-
-#include <sys/cdefs.h>
-
-#include <ctype.h>
-#include <string.h>
-
-#if !defined(PREFER_SIZE_OVER_SPEED) && !defined(__OPTIMIZE_SIZE__)
-# define RETURN_TYPE char *
-# define AVAILABLE(h, h_l, j, n_l) \
- (!memchr ((h) + (h_l), '\0', (j) + (n_l) - (h_l)) \
- && ((h_l) = (j) + (n_l)))
-# define CANON_ELEMENT(c) tolower (c)
-# define CMP_FUNC strncasecmp
-# include "str-two-way.h"
-#endif
-
-/*
- * Find the first occurrence of find in s, ignore case.
- */
-char *
-strcasestr(s, find)
- const char *s, *find;
-{
-#if defined(PREFER_SIZE_OVER_SPEED) || defined(__OPTIMIZE_SIZE__)
-
- /* Less code size, but quadratic performance in the worst case. */
- char c, sc;
- size_t len;
-
- if ((c = *find++) != 0) {
- c = tolower((unsigned char)c);
- len = strlen(find);
- do {
- do {
- if ((sc = *s++) == 0)
- return (NULL);
- } while ((char)tolower((unsigned char)sc) != c);
- } while (strncasecmp(s, find, len) != 0);
- s--;
- }
- return ((char *)s);
-
-#else /* compilation for speed */
-
- /* Larger code size, but guaranteed linear performance. */
- const char *haystack = s;
- const char *needle = find;
- size_t needle_len; /* Length of NEEDLE. */
- size_t haystack_len; /* Known minimum length of HAYSTACK. */
- int ok = 1; /* True if NEEDLE is prefix of HAYSTACK. */
-
- /* Determine length of NEEDLE, and in the process, make sure
- HAYSTACK is at least as long (no point processing all of a long
- NEEDLE if HAYSTACK is too short). */
- while (*haystack && *needle)
- ok &= (tolower ((unsigned char) *haystack++)
- == tolower ((unsigned char) *needle++));
- if (*needle)
- return NULL;
- if (ok)
- return (char *) s;
- needle_len = needle - find;
- haystack = s + 1;
- haystack_len = needle_len - 1;
-
- /* Perform the search. */
- if (needle_len < LONG_NEEDLE_THRESHOLD)
- return two_way_short_needle ((const unsigned char *) haystack,
- haystack_len,
- (const unsigned char *) find, needle_len);
- return two_way_long_needle ((const unsigned char *) haystack, haystack_len,
- (const unsigned char *) find, needle_len);
-#endif /* compilation for speed */
-}
diff --git a/newlib/libc/string/strcat.c b/newlib/libc/string/strcat.c
deleted file mode 100644
index 411eadb85..000000000
--- a/newlib/libc/string/strcat.c
+++ /dev/null
@@ -1,104 +0,0 @@
-/*
-FUNCTION
- <<strcat>>---concatenate strings
-
-INDEX
- strcat
-
-ANSI_SYNOPSIS
- #include <string.h>
- char *strcat(char *<[dst]>, const char *<[src]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- char *strcat(<[dst]>, <[src]>)
- char *<[dst]>;
- char *<[src]>;
-
-DESCRIPTION
- <<strcat>> appends a copy of the string pointed to by <[src]>
- (including the terminating null character) to the end of the
- string pointed to by <[dst]>. The initial character of
- <[src]> overwrites the null character at the end of <[dst]>.
-
-RETURNS
- This function returns the initial value of <[dst]>
-
-PORTABILITY
-<<strcat>> is ANSI C.
-
-<<strcat>> requires no supporting OS subroutines.
-
-QUICKREF
- strcat ansi pure
-*/
-
-#include <string.h>
-#include <limits.h>
-
-/* Nonzero if X is aligned on a "long" boundary. */
-#define ALIGNED(X) \
- (((long)X & (sizeof (long) - 1)) == 0)
-
-#if LONG_MAX == 2147483647L
-#define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080)
-#else
-#if LONG_MAX == 9223372036854775807L
-/* Nonzero if X (a long int) contains a NULL byte. */
-#define DETECTNULL(X) (((X) - 0x0101010101010101) & ~(X) & 0x8080808080808080)
-#else
-#error long int is not a 32bit or 64bit type.
-#endif
-#endif
-
-#ifndef DETECTNULL
-#error long int is not a 32bit or 64bit byte
-#endif
-
-
-/*SUPPRESS 560*/
-/*SUPPRESS 530*/
-
-char *
-_DEFUN (strcat, (s1, s2),
- char *s1 _AND
- _CONST char *s2)
-{
-#if defined(PREFER_SIZE_OVER_SPEED) || defined(__OPTIMIZE_SIZE__)
- char *s = s1;
-
- while (*s1)
- s1++;
-
- while (*s1++ = *s2++)
- ;
- return s;
-#else
- char *s = s1;
-
-
- /* Skip over the data in s1 as quickly as possible. */
- if (ALIGNED (s1))
- {
- unsigned long *aligned_s1 = (unsigned long *)s1;
- while (!DETECTNULL (*aligned_s1))
- aligned_s1++;
-
- s1 = (char *)aligned_s1;
- }
-
- while (*s1)
- s1++;
-
- /* s1 now points to the its trailing null character, we can
- just use strcpy to do the work for us now.
-
- ?!? We might want to just include strcpy here.
- Also, this will cause many more unaligned string copies because
- s1 is much less likely to be aligned. I don't know if its worth
- tweaking strcpy to handle this better. */
- strcpy (s1, s2);
-
- return s;
-#endif /* not PREFER_SIZE_OVER_SPEED */
-}
diff --git a/newlib/libc/string/strchr.c b/newlib/libc/string/strchr.c
deleted file mode 100644
index e921b5db7..000000000
--- a/newlib/libc/string/strchr.c
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
-FUNCTION
- <<strchr>>---search for character in string
-
-INDEX
- strchr
-
-ANSI_SYNOPSIS
- #include <string.h>
- char * strchr(const char *<[string]>, int <[c]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- char * strchr(<[string]>, <[c]>);
- const char *<[string]>;
- int <[c]>;
-
-DESCRIPTION
- This function finds the first occurence of <[c]> (converted to
- a char) in the string pointed to by <[string]> (including the
- terminating null character).
-
-RETURNS
- Returns a pointer to the located character, or a null pointer
- if <[c]> does not occur in <[string]>.
-
-PORTABILITY
-<<strchr>> is ANSI C.
-
-<<strchr>> requires no supporting OS subroutines.
-
-QUICKREF
- strchr ansi pure
-*/
-
-#include <string.h>
-#include <limits.h>
-
-/* Nonzero if X is not aligned on a "long" boundary. */
-#define UNALIGNED(X) ((long)X & (sizeof (long) - 1))
-
-/* How many bytes are loaded each iteration of the word copy loop. */
-#define LBLOCKSIZE (sizeof (long))
-
-#if LONG_MAX == 2147483647L
-#define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080)
-#else
-#if LONG_MAX == 9223372036854775807L
-/* Nonzero if X (a long int) contains a NULL byte. */
-#define DETECTNULL(X) (((X) - 0x0101010101010101) & ~(X) & 0x8080808080808080)
-#else
-#error long int is not a 32bit or 64bit type.
-#endif
-#endif
-
-/* DETECTCHAR returns nonzero if (long)X contains the byte used
- to fill (long)MASK. */
-#define DETECTCHAR(X,MASK) (DETECTNULL(X ^ MASK))
-
-char *
-_DEFUN (strchr, (s1, i),
- _CONST char *s1 _AND
- int i)
-{
- _CONST unsigned char *s = (_CONST unsigned char *)s1;
- unsigned char c = i;
-
-#if !defined(PREFER_SIZE_OVER_SPEED) && !defined(__OPTIMIZE_SIZE__)
- unsigned long mask,j;
- unsigned long *aligned_addr;
-
- /* Special case for finding 0. */
- if (!c)
- {
- while (UNALIGNED (s))
- {
- if (!*s)
- return (char *) s;
- s++;
- }
- /* Operate a word at a time. */
- aligned_addr = (unsigned long *) s;
- while (!DETECTNULL (*aligned_addr))
- aligned_addr++;
- /* Found the end of string. */
- s = (const unsigned char *) aligned_addr;
- while (*s)
- s++;
- return (char *) s;
- }
-
- /* All other bytes. Align the pointer, then search a long at a time. */
- while (UNALIGNED (s))
- {
- if (!*s)
- return NULL;
- if (*s == c)
- return (char *) s;
- s++;
- }
-
- mask = c;
- for (j = 8; j < LBLOCKSIZE * 8; j <<= 1)
- mask = (mask << j) | mask;
-
- aligned_addr = (unsigned long *) s;
- while (!DETECTNULL (*aligned_addr) && !DETECTCHAR (*aligned_addr, mask))
- aligned_addr++;
-
- /* The block of bytes currently pointed to by aligned_addr
- contains either a null or the target char, or both. We
- catch it using the bytewise search. */
-
- s = (unsigned char *) aligned_addr;
-
-#endif /* not PREFER_SIZE_OVER_SPEED */
-
- while (*s && *s != c)
- s++;
- if (*s == c)
- return (char *)s;
- return NULL;
-}
diff --git a/newlib/libc/string/strcmp.c b/newlib/libc/string/strcmp.c
deleted file mode 100644
index 81d65272e..000000000
--- a/newlib/libc/string/strcmp.c
+++ /dev/null
@@ -1,106 +0,0 @@
-/*
-FUNCTION
- <<strcmp>>---character string compare
-
-INDEX
- strcmp
-
-ANSI_SYNOPSIS
- #include <string.h>
- int strcmp(const char *<[a]>, const char *<[b]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- int strcmp(<[a]>, <[b]>)
- char *<[a]>;
- char *<[b]>;
-
-DESCRIPTION
- <<strcmp>> compares the string at <[a]> to
- the string at <[b]>.
-
-RETURNS
- If <<*<[a]>>> sorts lexicographically after <<*<[b]>>>,
- <<strcmp>> returns a number greater than zero. If the two
- strings match, <<strcmp>> returns zero. If <<*<[a]>>>
- sorts lexicographically before <<*<[b]>>>, <<strcmp>> returns a
- number less than zero.
-
-PORTABILITY
-<<strcmp>> is ANSI C.
-
-<<strcmp>> requires no supporting OS subroutines.
-
-QUICKREF
- strcmp ansi pure
-*/
-
-#include <string.h>
-#include <limits.h>
-
-/* Nonzero if either X or Y is not aligned on a "long" boundary. */
-#define UNALIGNED(X, Y) \
- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1)))
-
-/* DETECTNULL returns nonzero if (long)X contains a NULL byte. */
-#if LONG_MAX == 2147483647L
-#define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080)
-#else
-#if LONG_MAX == 9223372036854775807L
-#define DETECTNULL(X) (((X) - 0x0101010101010101) & ~(X) & 0x8080808080808080)
-#else
-#error long int is not a 32bit or 64bit type.
-#endif
-#endif
-
-#ifndef DETECTNULL
-#error long int is not a 32bit or 64bit byte
-#endif
-
-int
-_DEFUN (strcmp, (s1, s2),
- _CONST char *s1 _AND
- _CONST char *s2)
-{
-#if defined(PREFER_SIZE_OVER_SPEED) || defined(__OPTIMIZE_SIZE__)
- while (*s1 != '\0' && *s1 == *s2)
- {
- s1++;
- s2++;
- }
-
- return (*(unsigned char *) s1) - (*(unsigned char *) s2);
-#else
- unsigned long *a1;
- unsigned long *a2;
-
- /* If s1 or s2 are unaligned, then compare bytes. */
- if (!UNALIGNED (s1, s2))
- {
- /* If s1 and s2 are word-aligned, compare them a word at a time. */
- a1 = (unsigned long*)s1;
- a2 = (unsigned long*)s2;
- while (*a1 == *a2)
- {
- /* To get here, *a1 == *a2, thus if we find a null in *a1,
- then the strings must be equal, so return zero. */
- if (DETECTNULL (*a1))
- return 0;
-
- a1++;
- a2++;
- }
-
- /* A difference was detected in last few bytes of s1, so search bytewise */
- s1 = (char*)a1;
- s2 = (char*)a2;
- }
-
- while (*s1 != '\0' && *s1 == *s2)
- {
- s1++;
- s2++;
- }
- return (*(unsigned char *) s1) - (*(unsigned char *) s2);
-#endif /* not PREFER_SIZE_OVER_SPEED */
-}
diff --git a/newlib/libc/string/strcoll.c b/newlib/libc/string/strcoll.c
deleted file mode 100644
index 65dc38037..000000000
--- a/newlib/libc/string/strcoll.c
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
-FUNCTION
- <<strcoll>>---locale-specific character string compare
-
-INDEX
- strcoll
-
-ANSI_SYNOPSIS
- #include <string.h>
- int strcoll(const char *<[stra]>, const char * <[strb]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- int strcoll(<[stra]>, <[strb]>)
- char *<[stra]>;
- char *<[strb]>;
-
-DESCRIPTION
- <<strcoll>> compares the string pointed to by <[stra]> to
- the string pointed to by <[strb]>, using an interpretation
- appropriate to the current <<LC_COLLATE>> state.
-
-RETURNS
- If the first string is greater than the second string,
- <<strcoll>> returns a number greater than zero. If the two
- strings are equivalent, <<strcoll>> returns zero. If the first
- string is less than the second string, <<strcoll>> returns a
- number less than zero.
-
-PORTABILITY
-<<strcoll>> is ANSI C.
-
-<<strcoll>> requires no supporting OS subroutines.
-
-QUICKREF
- strcoll ansi pure
-*/
-
-#include <string.h>
-
-int
-_DEFUN (strcoll, (a, b),
- _CONST char *a _AND
- _CONST char *b)
-
-{
- return strcmp (a, b);
-}
diff --git a/newlib/libc/string/strcpy.c b/newlib/libc/string/strcpy.c
deleted file mode 100644
index 3dc3c33f6..000000000
--- a/newlib/libc/string/strcpy.c
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
-FUNCTION
- <<strcpy>>---copy string
-
-INDEX
- strcpy
-
-ANSI_SYNOPSIS
- #include <string.h>
- char *strcpy(char *<[dst]>, const char *<[src]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- char *strcpy(<[dst]>, <[src]>)
- char *<[dst]>;
- char *<[src]>;
-
-DESCRIPTION
- <<strcpy>> copies the string pointed to by <[src]>
- (including the terminating null character) to the array
- pointed to by <[dst]>.
-
-RETURNS
- This function returns the initial value of <[dst]>.
-
-PORTABILITY
-<<strcpy>> is ANSI C.
-
-<<strcpy>> requires no supporting OS subroutines.
-
-QUICKREF
- strcpy ansi pure
-*/
-
-#include <string.h>
-#include <limits.h>
-
-/*SUPPRESS 560*/
-/*SUPPRESS 530*/
-
-/* Nonzero if either X or Y is not aligned on a "long" boundary. */
-#define UNALIGNED(X, Y) \
- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1)))
-
-#if LONG_MAX == 2147483647L
-#define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080)
-#else
-#if LONG_MAX == 9223372036854775807L
-/* Nonzero if X (a long int) contains a NULL byte. */
-#define DETECTNULL(X) (((X) - 0x0101010101010101) & ~(X) & 0x8080808080808080)
-#else
-#error long int is not a 32bit or 64bit type.
-#endif
-#endif
-
-#ifndef DETECTNULL
-#error long int is not a 32bit or 64bit byte
-#endif
-
-char*
-_DEFUN (strcpy, (dst0, src0),
- char *dst0 _AND
- _CONST char *src0)
-{
-#if defined(PREFER_SIZE_OVER_SPEED) || defined(__OPTIMIZE_SIZE__)
- char *s = dst0;
-
- while (*dst0++ = *src0++)
- ;
-
- return s;
-#else
- char *dst = dst0;
- _CONST char *src = src0;
- long *aligned_dst;
- _CONST long *aligned_src;
-
- /* If SRC or DEST is unaligned, then copy bytes. */
- if (!UNALIGNED (src, dst))
- {
- aligned_dst = (long*)dst;
- aligned_src = (long*)src;
-
- /* SRC and DEST are both "long int" aligned, try to do "long int"
- sized copies. */
- while (!DETECTNULL(*aligned_src))
- {
- *aligned_dst++ = *aligned_src++;
- }
-
- dst = (char*)aligned_dst;
- src = (char*)aligned_src;
- }
-
- while ((*dst++ = *src++))
- ;
- return dst0;
-#endif /* not PREFER_SIZE_OVER_SPEED */
-}
diff --git a/newlib/libc/string/strcspn.c b/newlib/libc/string/strcspn.c
deleted file mode 100644
index 403330c94..000000000
--- a/newlib/libc/string/strcspn.c
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
-FUNCTION
- <<strcspn>>---count characters not in string
-
-INDEX
- strcspn
-
-ANSI_SYNOPSIS
- size_t strcspn(const char *<[s1]>, const char *<[s2]>);
-
-TRAD_SYNOPSIS
- size_t strcspn(<[s1]>, <[s2]>)
- char *<[s1]>;
- char *<[s2]>;
-
-DESCRIPTION
- This function computes the length of the initial part of
- the string pointed to by <[s1]> which consists entirely of
- characters <[NOT]> from the string pointed to by <[s2]>
- (excluding the terminating null character).
-
-RETURNS
- <<strcspn>> returns the length of the substring found.
-
-PORTABILITY
-<<strcspn>> is ANSI C.
-
-<<strcspn>> requires no supporting OS subroutines.
- */
-
-#include <string.h>
-
-size_t
-_DEFUN (strcspn, (s1, s2),
- _CONST char *s1 _AND
- _CONST char *s2)
-{
- _CONST char *s = s1;
- _CONST char *c;
-
- while (*s1)
- {
- for (c = s2; *c; c++)
- {
- if (*s1 == *c)
- break;
- }
- if (*c)
- break;
- s1++;
- }
-
- return s1 - s;
-}
diff --git a/newlib/libc/string/strdup.c b/newlib/libc/string/strdup.c
deleted file mode 100644
index dbb069264..000000000
--- a/newlib/libc/string/strdup.c
+++ /dev/null
@@ -1,13 +0,0 @@
-#ifndef _REENT_ONLY
-
-#include <reent.h>
-#include <stdlib.h>
-#include <string.h>
-
-char *
-_DEFUN (strdup, (str), _CONST char *str)
-{
- return _strdup_r (_REENT, str);
-}
-
-#endif /* !_REENT_ONLY */
diff --git a/newlib/libc/string/strdup_r.c b/newlib/libc/string/strdup_r.c
deleted file mode 100644
index ef77a58eb..000000000
--- a/newlib/libc/string/strdup_r.c
+++ /dev/null
@@ -1,17 +0,0 @@
-#include <reent.h>
-#include <stdlib.h>
-#include <string.h>
-
-char *
-_DEFUN (_strdup_r, (reent_ptr, str),
- struct _reent *reent_ptr _AND
- _CONST char *str)
-{
- size_t len = strlen (str) + 1;
- char *copy = _malloc_r (reent_ptr, len);
- if (copy)
- {
- memcpy (copy, str, len);
- }
- return copy;
-}
diff --git a/newlib/libc/string/strerror.c b/newlib/libc/string/strerror.c
deleted file mode 100644
index 73660f076..000000000
--- a/newlib/libc/string/strerror.c
+++ /dev/null
@@ -1,785 +0,0 @@
-/***
-**** CAUTION!!! KEEP DOC CONSISTENT---if you change text of a message
-**** here, change two places:
-**** 1) the leading doc section (alphabetized by macro)
-**** 2) the real text inside switch(errnum)
-***/
-
-/*
-FUNCTION
- <<strerror>>---convert error number to string
-
-INDEX
- strerror
-
-ANSI_SYNOPSIS
- #include <string.h>
- char *strerror(int <[errnum]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- char *strerror(<[errnum]>)
- int <[errnum]>;
-
-DESCRIPTION
-<<strerror>> converts the error number <[errnum]> into a
-string. The value of <[errnum]> is usually a copy of <<errno>>.
-If <<errnum>> is not a known error number, the result points to an
-empty string.
-
-This implementation of <<strerror>> prints out the following strings
-for each of the values defined in `<<errno.h>>':
-
-o+
-o E2BIG
-Arg list too long
-
-o EACCES
-Permission denied
-
-o EADDRINUSE
-Address already in use
-
-o EADV
-Advertise error
-
-o EAFNOSUPPORT
-Address family not supported by protocol family
-
-o EAGAIN
-No more processes
-
-o EALREADY
-Socket already connected
-
-o EBADF
-Bad file number
-
-o EBADMSG
-Bad message
-
-o EBUSY
-Device or resource busy
-
-o ECHILD
-No children
-
-o ECOMM
-Communication error
-
-o ECONNABORTED
-Software caused connection abort
-
-o ECONNREFUSED
-Connection refused
-
-o EDEADLK
-Deadlock
-
-o EDESTADDRREQ
-Destination address required
-
-o EEXIST
-File exists
-
-o EDOM
-Math argument
-
-o EFAULT
-Bad address
-
-o EFBIG
-File too large
-
-o EHOSTDOWN
-Host is down
-
-o EHOSTUNREACH
-Host is unreachable
-
-o EIDRM
-Identifier removed
-
-o EINPROGRESS
-Connection already in progress
-
-o EINTR
-Interrupted system call
-
-o EINVAL
-Invalid argument
-
-o EIO
-I/O error
-
-o EISCONN
-Socket is already connected
-
-o EISDIR
-Is a directory
-
-o ELIBACC
-Cannot access a needed shared library
-
-o ELIBBAD
-Accessing a corrupted shared library
-
-o ELIBEXEC
-Cannot exec a shared library directly
-
-o ELIBMAX
-Attempting to link in more shared libraries than system limit
-
-o ELIBSCN
-<<.lib>> section in a.out corrupted
-
-o EMFILE
-Too many open files
-
-o EMLINK
-Too many links
-
-o EMSGSIZE
-Message too long
-
-o EMULTIHOP
-Multihop attempted
-
-o ENAMETOOLONG
-File or path name too long
-
-o ENETDOWN
-Network interface not configured
-
-o ENETUNREACH
-Network is unreachable
-
-o ENFILE
-Too many open files in system
-
-o ENODEV
-No such device
-
-o ENOENT
-No such file or directory
-
-o ENOEXEC
-Exec format error
-
-o ENOLCK
-No lock
-
-o ENOLINK
-Virtual circuit is gone
-
-o ENOMEM
-Not enough space
-
-o ENOMSG
-No message of desired type
-
-o ENONET
-Machine is not on the network
-
-o ENOPKG
-No package
-
-o ENOPROTOOPT
-Protocol not available
-
-o ENOSPC
-No space left on device
-
-o ENOSR
-No stream resources
-
-o ENOSTR
-Not a stream
-
-o ENOSYS
-Function not implemented
-
-o ENOTBLK
-Block device required
-
-o ENOTCONN
-Socket is not connected
-
-o ENOTDIR
-Not a directory
-
-o ENOTEMPTY
-Directory not empty
-
-o ENOTSOCK
-Socket operation on non-socket
-
-o ENOTSUP
-Not supported
-
-o ENOTTY
-Not a character device
-
-o ENXIO
-No such device or address
-
-o EPERM
-Not owner
-
-o EPIPE
-Broken pipe
-
-o EPROTO
-Protocol error
-
-o EPROTOTYPE
-Protocol wrong type for socket
-
-o EPROTONOSUPPORT
-Unknown protocol
-
-o ERANGE
-Result too large
-
-o EREMOTE
-Resource is remote
-
-o EROFS
-Read-only file system
-
-o ESHUTDOWN
-Can't send after socket shutdown
-
-o ESOCKTNOSUPPORT
-Socket type not supported
-
-o ESPIPE
-Illegal seek
-
-o ESRCH
-No such process
-
-o ESRMNT
-Srmount error
-
-o ETIME
-Stream ioctl timeout
-
-o ETIMEDOUT
-Connection timed out
-
-o ETXTBSY
-Text file busy
-
-o EXDEV
-Cross-device link
-
-o ECANCELED
-Operation canceled
-
-o ENOTRECOVERABLE
-State not recoverable
-
-o EOWNERDEAD
-Previous owner died
-
-o-
-
-RETURNS
-This function returns a pointer to a string. Your application must
-not modify that string.
-
-PORTABILITY
-ANSI C requires <<strerror>>, but does not specify the strings used
-for each error number.
-
-Although this implementation of <<strerror>> is reentrant, ANSI C
-declares that subsequent calls to <<strerror>> may overwrite the
-result string; therefore portable code cannot depend on the reentrancy
-of this subroutine.
-
-This implementation of <<strerror>> provides for user-defined
-extensibility. <<errno.h>> defines <[__ELASTERROR]>, which can be
-used as a base for user-defined error values. If the user supplies a
-routine named <<_user_strerror>>, and <[errnum]> passed to
-<<strerror>> does not match any of the supported values,
-<<_user_strerror>> is called with <[errnum]> as its argument.
-
-<<_user_strerror>> takes one argument of type <[int]>, and returns a
-character pointer. If <[errnum]> is unknown to <<_user_strerror>>,
-<<_user_strerror>> returns <[NULL]>. The default <<_user_strerror>>
-returns <[NULL]> for all input values.
-
-<<strerror>> requires no supporting OS subroutines.
-
-QUICKREF
- strerror ansi pure
-*/
-
-#include <errno.h>
-#include <string.h>
-
-char *
-_DEFUN (strerror, (errnum),
- int errnum)
-{
- char *error;
- extern char *_user_strerror _PARAMS ((int));
-
- switch (errnum)
- {
-/* go32 defines EPERM as EACCES */
-#if defined (EPERM) && (!defined (EACCES) || (EPERM != EACCES))
- case EPERM:
- error = "Not owner";
- break;
-#endif
-#ifdef ENOENT
- case ENOENT:
- error = "No such file or directory";
- break;
-#endif
-#ifdef ESRCH
- case ESRCH:
- error = "No such process";
- break;
-#endif
-#ifdef EINTR
- case EINTR:
- error = "Interrupted system call";
- break;
-#endif
-#ifdef EIO
- case EIO:
- error = "I/O error";
- break;
-#endif
-/* go32 defines ENXIO as ENODEV */
-#if defined (ENXIO) && (!defined (ENODEV) || (ENXIO != ENODEV))
- case ENXIO:
- error = "No such device or address";
- break;
-#endif
-#ifdef E2BIG
- case E2BIG:
- error = "Arg list too long";
- break;
-#endif
-#ifdef ENOEXEC
- case ENOEXEC:
- error = "Exec format error";
- break;
-#endif
-#ifdef EALREADY
- case EALREADY:
- error = "Socket already connected";
- break;
-#endif
-#ifdef EBADF
- case EBADF:
- error = "Bad file number";
- break;
-#endif
-#ifdef ECHILD
- case ECHILD:
- error = "No children";
- break;
-#endif
-#ifdef EDESTADDRREQ
- case EDESTADDRREQ:
- error = "Destination address required";
- break;
-#endif
-#ifdef EAGAIN
- case EAGAIN:
- error = "No more processes";
- break;
-#endif
-#ifdef ENOMEM
- case ENOMEM:
- error = "Not enough space";
- break;
-#endif
-#ifdef EACCES
- case EACCES:
- error = "Permission denied";
- break;
-#endif
-#ifdef EFAULT
- case EFAULT:
- error = "Bad address";
- break;
-#endif
-#ifdef ENOTBLK
- case ENOTBLK:
- error = "Block device required";
- break;
-#endif
-#ifdef EBUSY
- case EBUSY:
- error = "Device or resource busy";
- break;
-#endif
-#ifdef EEXIST
- case EEXIST:
- error = "File exists";
- break;
-#endif
-#ifdef EXDEV
- case EXDEV:
- error = "Cross-device link";
- break;
-#endif
-#ifdef ENODEV
- case ENODEV:
- error = "No such device";
- break;
-#endif
-#ifdef ENOTDIR
- case ENOTDIR:
- error = "Not a directory";
- break;
-#endif
-#ifdef EHOSTDOWN
- case EHOSTDOWN:
- error = "Host is down";
- break;
-#endif
-#ifdef EINPROGRESS
- case EINPROGRESS:
- error = "Connection already in progress";
- break;
-#endif
-#ifdef EISDIR
- case EISDIR:
- error = "Is a directory";
- break;
-#endif
-#ifdef EINVAL
- case EINVAL:
- error = "Invalid argument";
- break;
-#endif
-#ifdef ENETDOWN
- case ENETDOWN:
- error = "Network interface is not configured";
- break;
-#endif
-#ifdef ENFILE
- case ENFILE:
- error = "Too many open files in system";
- break;
-#endif
-#ifdef EMFILE
- case EMFILE:
- error = "Too many open files";
- break;
-#endif
-#ifdef ENOTTY
- case ENOTTY:
- error = "Not a character device";
- break;
-#endif
-#ifdef ETXTBSY
- case ETXTBSY:
- error = "Text file busy";
- break;
-#endif
-#ifdef EFBIG
- case EFBIG:
- error = "File too large";
- break;
-#endif
-#ifdef EHOSTUNREACH
- case EHOSTUNREACH:
- error = "Host is unreachable";
- break;
-#endif
-#ifdef ENOSPC
- case ENOSPC:
- error = "No space left on device";
- break;
-#endif
-#ifdef ENOTSUP
- case ENOTSUP:
- error = "Not supported";
- break;
-#endif
-#ifdef ESPIPE
- case ESPIPE:
- error = "Illegal seek";
- break;
-#endif
-#ifdef EROFS
- case EROFS:
- error = "Read-only file system";
- break;
-#endif
-#ifdef EMLINK
- case EMLINK:
- error = "Too many links";
- break;
-#endif
-#ifdef EPIPE
- case EPIPE:
- error = "Broken pipe";
- break;
-#endif
-#ifdef EDOM
- case EDOM:
- error = "Math argument";
- break;
-#endif
-#ifdef ERANGE
- case ERANGE:
- error = "Result too large";
- break;
-#endif
-#ifdef ENOMSG
- case ENOMSG:
- error = "No message of desired type";
- break;
-#endif
-#ifdef EIDRM
- case EIDRM:
- error = "Identifier removed";
- break;
-#endif
-#ifdef EDEADLK
- case EDEADLK:
- error = "Deadlock";
- break;
-#endif
-#ifdef ENETUNREACH
- case ENETUNREACH:
- error = "Network is unreachable";
- break;
-#endif
-#ifdef ENOLCK
- case ENOLCK:
- error = "No lock";
- break;
-#endif
-#ifdef ENOSTR
- case ENOSTR:
- error = "Not a stream";
- break;
-#endif
-#ifdef ETIME
- case ETIME:
- error = "Stream ioctl timeout";
- break;
-#endif
-#ifdef ENOSR
- case ENOSR:
- error = "No stream resources";
- break;
-#endif
-#ifdef ENONET
- case ENONET:
- error = "Machine is not on the network";
- break;
-#endif
-#ifdef ENOPKG
- case ENOPKG:
- error = "No package";
- break;
-#endif
-#ifdef EREMOTE
- case EREMOTE:
- error = "Resource is remote";
- break;
-#endif
-#ifdef ENOLINK
- case ENOLINK:
- error = "Virtual circuit is gone";
- break;
-#endif
-#ifdef EADV
- case EADV:
- error = "Advertise error";
- break;
-#endif
-#ifdef ESRMNT
- case ESRMNT:
- error = "Srmount error";
- break;
-#endif
-#ifdef ECOMM
- case ECOMM:
- error = "Communication error";
- break;
-#endif
-#ifdef EPROTO
- case EPROTO:
- error = "Protocol error";
- break;
-#endif
-#ifdef EPROTONOSUPPORT
- case EPROTONOSUPPORT:
- error = "Unknown protocol";
- break;
-#endif
-#ifdef EMULTIHOP
- case EMULTIHOP:
- error = "Multihop attempted";
- break;
-#endif
-#ifdef EBADMSG
- case EBADMSG:
- error = "Bad message";
- break;
-#endif
-#ifdef ELIBACC
- case ELIBACC:
- error = "Cannot access a needed shared library";
- break;
-#endif
-#ifdef ELIBBAD
- case ELIBBAD:
- error = "Accessing a corrupted shared library";
- break;
-#endif
-#ifdef ELIBSCN
- case ELIBSCN:
- error = ".lib section in a.out corrupted";
- break;
-#endif
-#ifdef ELIBMAX
- case ELIBMAX:
- error = "Attempting to link in more shared libraries than system limit";
- break;
-#endif
-#ifdef ELIBEXEC
- case ELIBEXEC:
- error = "Cannot exec a shared library directly";
- break;
-#endif
-#ifdef ENOSYS
- case ENOSYS:
- error = "Function not implemented";
- break;
-#endif
-#ifdef ENMFILE
- case ENMFILE:
- error = "No more files";
- break;
-#endif
-#ifdef ENOTEMPTY
- case ENOTEMPTY:
- error = "Directory not empty";
- break;
-#endif
-#ifdef ENAMETOOLONG
- case ENAMETOOLONG:
- error = "File or path name too long";
- break;
-#endif
-#ifdef ELOOP
- case ELOOP:
- error = "Too many symbolic links";
- break;
-#endif
-#ifdef ENOBUFS
- case ENOBUFS:
- error = "No buffer space available";
- break;
-#endif
-#ifdef EAFNOSUPPORT
- case EAFNOSUPPORT:
- error = "Address family not supported by protocol family";
- break;
-#endif
-#ifdef EPROTOTYPE
- case EPROTOTYPE:
- error = "Protocol wrong type for socket";
- break;
-#endif
-#ifdef ENOTSOCK
- case ENOTSOCK:
- error = "Socket operation on non-socket";
- break;
-#endif
-#ifdef ENOPROTOOPT
- case ENOPROTOOPT:
- error = "Protocol not available";
- break;
-#endif
-#ifdef ESHUTDOWN
- case ESHUTDOWN:
- error = "Can't send after socket shutdown";
- break;
-#endif
-#ifdef ECONNREFUSED
- case ECONNREFUSED:
- error = "Connection refused";
- break;
-#endif
-#ifdef EADDRINUSE
- case EADDRINUSE:
- error = "Address already in use";
- break;
-#endif
-#ifdef ECONNABORTED
- case ECONNABORTED:
- error = "Software caused connection abort";
- break;
-#endif
-#if (defined(EWOULDBLOCK) && (!defined (EAGAIN) || (EWOULDBLOCK != EAGAIN)))
- case EWOULDBLOCK:
- error = "Operation would block";
- break;
-#endif
-#ifdef ENOTCONN
- case ENOTCONN:
- error = "Socket is not connected";
- break;
-#endif
-#ifdef ESOCKTNOSUPPORT
- case ESOCKTNOSUPPORT:
- error = "Socket type not supported";
- break;
-#endif
-#ifdef EISCONN
- case EISCONN:
- error = "Socket is already connected";
- break;
-#endif
-#ifdef ECANCELED
- case ECANCELED:
- error = "Operation canceled";
- break;
-#endif
-#ifdef ENOTRECOVERABLE
- case ENOTRECOVERABLE:
- error = "State not recoverable";
- break;
-#endif
-#ifdef EOWNERDEAD
- case EOWNERDEAD:
- error = "Previous owner died";
- break;
-#endif
-#if defined(EOPNOTSUPP) && (!defined(ENOTSUP) || (ENOTSUP != EOPNOTSUPP))
- case EOPNOTSUPP:
- error = "Operation not supported on socket";
- break;
-#endif
-#ifdef EMSGSIZE
- case EMSGSIZE:
- error = "Message too long";
- break;
-#endif
-#ifdef ETIMEDOUT
- case ETIMEDOUT:
- error = "Connection timed out";
- break;
-#endif
- default:
- if ((error = _user_strerror (errnum)) == 0)
- error = "";
- break;
- }
-
- return error;
-}
diff --git a/newlib/libc/string/strerror_r.c b/newlib/libc/string/strerror_r.c
deleted file mode 100644
index be5358f3e..000000000
--- a/newlib/libc/string/strerror_r.c
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
-FUNCTION
- <<strerror_r>>---convert error number to string and copy to buffer
-
-INDEX
- strerror_r
-
-ANSI_SYNOPSIS
- #include <string.h>
- char *strerror_r(int <[errnum]>, char *<[buffer]>, size_t <[n]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- char *strerror_r(<[errnum]>, <[buffer]>, <[n]>)
- int <[errnum]>;
- char *<[buffer]>;
- size_t <[n]>;
-
-DESCRIPTION
-<<strerror_r>> converts the error number <[errnum]> into a
-string and copies the result into the supplied <[buffer]> for
-a length up to <[n]>, including the NUL terminator. The value of
-<[errnum]> is usually a copy of <<errno>>. If <<errnum>> is not a known
-error number, the result is the empty string.
-
-See <<strerror>> for how strings are mapped to <<errnum>>.
-
-RETURNS
-This function returns a pointer to a string. Your application must
-not modify that string.
-
-PORTABILITY
-<<strerror_r>> is a GNU extension.
-
-<<strerror_r>> requires no supporting OS subroutines.
-
-*/
-
-#undef __STRICT_ANSI__
-#include <errno.h>
-#include <string.h>
-
-char *
-_DEFUN (strerror_r, (errnum, buffer, n),
- int errnum _AND
- char *buffer _AND
- size_t n)
-{
- char *error;
- error = strerror (errnum);
-
- return strncpy (buffer, (const char *)error, n);
-}
diff --git a/newlib/libc/string/strings.tex b/newlib/libc/string/strings.tex
deleted file mode 100644
index 6750f3eb0..000000000
--- a/newlib/libc/string/strings.tex
+++ /dev/null
@@ -1,169 +0,0 @@
-@node Strings
-@chapter Strings and Memory (@file{string.h})
-
-This chapter describes string-handling functions and functions for
-managing areas of memory. The corresponding declarations are in
-@file{string.h}.
-
-@menu
-* bcmp:: Compare two memory areas
-* bcopy:: Copy memory regions
-* bzero:: Initialize memory to zero
-* index:: Search for character in string
-* memccpy:: Copy memory regions up to end-token
-* memchr:: Find character in memory
-* memcmp:: Compare two memory areas
-* memcpy:: Copy memory regions
-* memmem:: Find memory segment
-* memmove:: Move possibly overlapping memory
-* mempcpy:: Copy memory regions and locate end
-* memset:: Set an area of memory
-* rindex:: Reverse search for character in string
-* stpcpy:: Copy string returning a pointer to its end
-* stpncpy:: Counted copy string returning a pointer to its end
-* strcasecmp:: Compare strings ignoring case
-* strcasestr:: Find string segment ignoring case
-* strcat:: Concatenate strings
-* strchr:: Search for character in string
-* strcmp:: Character string compare
-* strcoll:: Locale-specific character string compare
-* strcpy:: Copy string
-* strcspn:: Count chars not in string
-* strerror:: Convert error number to string
-* strerror_r:: Convert error number to string
-* strlen:: Character string length
-* strlwr:: Convert string to lowercase
-* strncasecmp:: Compare strings ignoring case
-* strncat:: Concatenate strings
-* strncmp:: Character string compare
-* strncpy:: Counted copy string
-* strnlen:: Character string length
-* strpbrk:: Find chars in string
-* strrchr:: Reverse search for character in string
-* strspn:: Find initial match
-* strstr:: Find string segment
-* strtok:: Get next token from a string
-* strupr:: Convert string to upper case
-* strxfrm:: Transform string
-* swab:: Swap adjacent bytes
-@end menu
-
-@page
-@include string/bcmp.def
-
-@page
-@include string/bcopy.def
-
-@page
-@include string/bzero.def
-
-@page
-@include string/index.def
-
-@page
-@include string/memccpy.def
-
-@page
-@include string/memchr.def
-
-@page
-@include string/memcmp.def
-
-@page
-@include string/memcpy.def
-
-@page
-@include string/memmem.def
-
-@page
-@include string/memmove.def
-
-@page
-@include string/mempcpy.def
-
-@page
-@include string/memset.def
-
-@page
-@include string/rindex.def
-
-@page
-@include string/stpcpy.def
-
-@page
-@include string/stpncpy.def
-
-@page
-@include string/strcasecmp.def
-
-@page
-@include string/strcasestr.def
-
-@page
-@include string/strcat.def
-
-@page
-@include string/strchr.def
-
-@page
-@include string/strcmp.def
-
-@page
-@include string/strcoll.def
-
-@page
-@include string/strcpy.def
-
-@page
-@include string/strcspn.def
-
-@page
-@include string/strerror.def
-
-@page
-@include string/strerror_r.def
-
-@page
-@include string/strlen.def
-
-@page
-@include string/strlwr.def
-
-@page
-@include string/strncasecmp.def
-
-@page
-@include string/strncat.def
-
-@page
-@include string/strncmp.def
-
-@page
-@include string/strncpy.def
-
-@page
-@include string/strnlen.def
-
-@page
-@include string/strpbrk.def
-
-@page
-@include string/strrchr.def
-
-@page
-@include string/strspn.def
-
-@page
-@include string/strstr.def
-
-@page
-@include string/strtok.def
-
-@page
-@include string/strupr.def
-
-@page
-@include string/strxfrm.def
-
-@page
-@include string/swab.def
diff --git a/newlib/libc/string/strlcat.c b/newlib/libc/string/strlcat.c
deleted file mode 100644
index 0c47bd527..000000000
--- a/newlib/libc/string/strlcat.c
+++ /dev/null
@@ -1,74 +0,0 @@
-/* $OpenBSD: strlcat.c,v 1.8 2001/05/13 15:40:15 deraadt Exp $ */
-
-/*
- * Copyright (c) 1998 Todd C. Miller <Todd.Miller@courtesan.com>
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
- * THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
-static char *rcsid = "$OpenBSD: strlcat.c,v 1.8 2001/05/13 15:40:15 deraadt Exp $";
-#endif /* LIBC_SCCS and not lint */
-
-#include <sys/types.h>
-#include <string.h>
-
-/*
- * Appends src to string dst of size siz (unlike strncat, siz is the
- * full size of dst, not space left). At most siz-1 characters
- * will be copied. Always NUL terminates (unless siz <= strlen(dst)).
- * Returns strlen(src) + MIN(siz, strlen(initial dst)).
- * If retval >= siz, truncation occurred.
- */
-size_t
-_DEFUN (strlcat, (dst, src, siz),
- char *dst _AND
- _CONST char *src _AND
- size_t siz)
-{
- register char *d = dst;
- register const char *s = src;
- register size_t n = siz;
- size_t dlen;
-
- /* Find the end of dst and adjust bytes left but don't go past end */
- while (n-- != 0 && *d != '\0')
- d++;
- dlen = d - dst;
- n = siz - dlen;
-
- if (n == 0)
- return(dlen + strlen(s));
- while (*s != '\0') {
- if (n != 1) {
- *d++ = *s;
- n--;
- }
- s++;
- }
- *d = '\0';
-
- return(dlen + (s - src)); /* count does not include NUL */
-}
-
diff --git a/newlib/libc/string/strlcpy.c b/newlib/libc/string/strlcpy.c
deleted file mode 100644
index c31001642..000000000
--- a/newlib/libc/string/strlcpy.c
+++ /dev/null
@@ -1,70 +0,0 @@
-/* $OpenBSD: strlcpy.c,v 1.5 2001/05/13 15:40:16 deraadt Exp $ */
-
-/*
- * Copyright (c) 1998 Todd C. Miller <Todd.Miller@courtesan.com>
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
- * THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#if defined(LIBC_SCCS) && !defined(lint)
-static char *rcsid = "$OpenBSD: strlcpy.c,v 1.5 2001/05/13 15:40:16 deraadt Exp $";
-#endif /* LIBC_SCCS and not lint */
-
-#include <sys/types.h>
-#include <string.h>
-
-/*
- * Copy src to string dst of size siz. At most siz-1 characters
- * will be copied. Always NUL terminates (unless siz == 0).
- * Returns strlen(src); if retval >= siz, truncation occurred.
- */
-size_t
-_DEFUN (strlcpy, (dst, src, siz),
- char *dst _AND
- _CONST char *src _AND
- size_t siz)
-{
- register char *d = dst;
- register const char *s = src;
- register size_t n = siz;
-
- /* Copy as many bytes as will fit */
- if (n != 0 && --n != 0) {
- do {
- if ((*d++ = *s++) == 0)
- break;
- } while (--n != 0);
- }
-
- /* Not enough room in dst, add NUL and traverse rest of src */
- if (n == 0) {
- if (siz != 0)
- *d = '\0'; /* NUL-terminate dst */
- while (*s++)
- ;
- }
-
- return(s - src - 1); /* count does not include NUL */
-}
-
diff --git a/newlib/libc/string/strlen.c b/newlib/libc/string/strlen.c
deleted file mode 100644
index a796d2738..000000000
--- a/newlib/libc/string/strlen.c
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
-FUNCTION
- <<strlen>>---character string length
-
-INDEX
- strlen
-
-ANSI_SYNOPSIS
- #include <string.h>
- size_t strlen(const char *<[str]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- size_t strlen(<[str]>)
- char *<[src]>;
-
-DESCRIPTION
- The <<strlen>> function works out the length of the string
- starting at <<*<[str]>>> by counting chararacters until it
- reaches a <<NULL>> character.
-
-RETURNS
- <<strlen>> returns the character count.
-
-PORTABILITY
-<<strlen>> is ANSI C.
-
-<<strlen>> requires no supporting OS subroutines.
-
-QUICKREF
- strlen ansi pure
-*/
-
-#include <_ansi.h>
-#include <string.h>
-#include <limits.h>
-
-#define LBLOCKSIZE (sizeof (long))
-#define UNALIGNED(X) ((long)X & (LBLOCKSIZE - 1))
-
-#if LONG_MAX == 2147483647L
-#define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080)
-#else
-#if LONG_MAX == 9223372036854775807L
-/* Nonzero if X (a long int) contains a NULL byte. */
-#define DETECTNULL(X) (((X) - 0x0101010101010101) & ~(X) & 0x8080808080808080)
-#else
-#error long int is not a 32bit or 64bit type.
-#endif
-#endif
-
-#ifndef DETECTNULL
-#error long int is not a 32bit or 64bit byte
-#endif
-
-size_t
-_DEFUN (strlen, (str),
- _CONST char *str)
-{
- _CONST char *start = str;
-
-#if !defined(PREFER_SIZE_OVER_SPEED) && !defined(__OPTIMIZE_SIZE__)
- unsigned long *aligned_addr;
-
- /* Align the pointer, so we can search a word at a time. */
- while (UNALIGNED (str))
- {
- if (!*str)
- return str - start;
- str++;
- }
-
- /* If the string is word-aligned, we can check for the presence of
- a null in each word-sized block. */
- aligned_addr = (unsigned long *)str;
- while (!DETECTNULL (*aligned_addr))
- aligned_addr++;
-
- /* Once a null is detected, we check each byte in that block for a
- precise position of the null. */
- str = (char *) aligned_addr;
-
-#endif /* not PREFER_SIZE_OVER_SPEED */
-
- while (*str)
- str++;
- return str - start;
-}
diff --git a/newlib/libc/string/strlwr.c b/newlib/libc/string/strlwr.c
deleted file mode 100644
index 47096d430..000000000
--- a/newlib/libc/string/strlwr.c
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
-FUNCTION
- <<strlwr>>---force string to lowercase
-
-INDEX
- strlwr
-
-ANSI_SYNOPSIS
- #include <string.h>
- char *strlwr(char *<[a]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- char *strlwr(<[a]>)
- char *<[a]>;
-
-DESCRIPTION
- <<strlwr>> converts each character in the string at <[a]> to
- lowercase.
-
-RETURNS
- <<strlwr>> returns its argument, <[a]>.
-
-PORTABILITY
-<<strlwr>> is not widely portable.
-
-<<strlwr>> requires no supporting OS subroutines.
-
-QUICKREF
- strlwr
-*/
-
-#include <string.h>
-#include <ctype.h>
-
-char *
-strlwr (a)
- char *a;
-{
- char *ret = a;
-
- while (*a != '\0')
- {
- if (isupper (*a))
- *a = tolower (*a);
- ++a;
- }
-
- return ret;
-}
diff --git a/newlib/libc/string/strncasecmp.c b/newlib/libc/string/strncasecmp.c
deleted file mode 100644
index c877ba53c..000000000
--- a/newlib/libc/string/strncasecmp.c
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
-FUNCTION
- <<strncasecmp>>---case-insensitive character string compare
-
-INDEX
- strncasecmp
-
-ANSI_SYNOPSIS
- #include <string.h>
- int strncasecmp(const char *<[a]>, const char * <[b]>, size_t <[length]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- int strncasecmp(<[a]>, <[b]>, <[length]>)
- char *<[a]>;
- char *<[b]>;
- size_t <[length]>
-
-DESCRIPTION
- <<strncasecmp>> compares up to <[length]> characters
- from the string at <[a]> to the string at <[b]> in a
- case-insensitive manner.
-
-RETURNS
-
- If <<*<[a]>>> sorts lexicographically after <<*<[b]>>> (after
- both are converted to uppercase), <<strncasecmp>> returns a
- number greater than zero. If the two strings are equivalent,
- <<strncasecmp>> returns zero. If <<*<[a]>>> sorts
- lexicographically before <<*<[b]>>>, <<strncasecmp>> returns a
- number less than zero.
-
-PORTABILITY
-<<strncasecmp>> is in the Berkeley Software Distribution.
-
-<<strncasecmp>> requires no supporting OS subroutines. It uses
-tolower() from elsewhere in this library.
-
-QUICKREF
- strncasecmp
-*/
-
-#include <string.h>
-#include <ctype.h>
-
-int
-_DEFUN (strncasecmp, (s1, s2, n),
- _CONST char *s1 _AND
- _CONST char *s2 _AND
- size_t n)
-{
- if (n == 0)
- return 0;
-
- while (n-- != 0 && tolower(*s1) == tolower(*s2))
- {
- if (n == 0 || *s1 == '\0' || *s2 == '\0')
- break;
- s1++;
- s2++;
- }
-
- return tolower(*(unsigned char *) s1) - tolower(*(unsigned char *) s2);
-}
diff --git a/newlib/libc/string/strncat.c b/newlib/libc/string/strncat.c
deleted file mode 100644
index 0f29247a8..000000000
--- a/newlib/libc/string/strncat.c
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
-FUNCTION
- <<strncat>>---concatenate strings
-
-INDEX
- strncat
-
-ANSI_SYNOPSIS
- #include <string.h>
- char *strncat(char *<[dst]>, const char *<[src]>, size_t <[length]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- char *strncat(<[dst]>, <[src]>, <[length]>)
- char *<[dst]>;
- char *<[src]>;
- size_t <[length]>;
-
-DESCRIPTION
- <<strncat>> appends not more than <[length]> characters from
- the string pointed to by <[src]> (including the terminating
- null character) to the end of the string pointed to by
- <[dst]>. The initial character of <[src]> overwrites the null
- character at the end of <[dst]>. A terminating null character
- is always appended to the result
-
-WARNINGS
- Note that a null is always appended, so that if the copy is
- limited by the <[length]> argument, the number of characters
- appended to <[dst]> is <<n + 1>>.
-
-RETURNS
- This function returns the initial value of <[dst]>
-
-PORTABILITY
-<<strncat>> is ANSI C.
-
-<<strncat>> requires no supporting OS subroutines.
-
-QUICKREF
- strncat ansi pure
-*/
-
-#include <string.h>
-#include <limits.h>
-
-/* Nonzero if X is aligned on a "long" boundary. */
-#define ALIGNED(X) \
- (((long)X & (sizeof (long) - 1)) == 0)
-
-#if LONG_MAX == 2147483647L
-#define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080)
-#else
-#if LONG_MAX == 9223372036854775807L
-/* Nonzero if X (a long int) contains a NULL byte. */
-#define DETECTNULL(X) (((X) - 0x0101010101010101) & ~(X) & 0x8080808080808080)
-#else
-#error long int is not a 32bit or 64bit type.
-#endif
-#endif
-
-#ifndef DETECTNULL
-#error long int is not a 32bit or 64bit byte
-#endif
-
-char *
-_DEFUN (strncat, (s1, s2, n),
- char *s1 _AND
- _CONST char *s2 _AND
- size_t n)
-{
-#if defined(PREFER_SIZE_OVER_SPEED) || defined(__OPTIMIZE_SIZE__)
- char *s = s1;
-
- while (*s1)
- s1++;
- while (n-- != 0 && (*s1++ = *s2++))
- {
- if (n == 0)
- *s1 = '\0';
- }
-
- return s;
-#else
- char *s = s1;
-
- /* Skip over the data in s1 as quickly as possible. */
- if (ALIGNED (s1))
- {
- unsigned long *aligned_s1 = (unsigned long *)s1;
- while (!DETECTNULL (*aligned_s1))
- aligned_s1++;
-
- s1 = (char *)aligned_s1;
- }
-
- while (*s1)
- s1++;
-
- /* s1 now points to the its trailing null character, now copy
- up to N bytes from S2 into S1 stopping if a NULL is encountered
- in S2.
-
- It is not safe to use strncpy here since it copies EXACTLY N
- characters, NULL padding if necessary. */
- while (n-- != 0 && (*s1++ = *s2++))
- {
- if (n == 0)
- *s1 = '\0';
- }
-
- return s;
-#endif /* not PREFER_SIZE_OVER_SPEED */
-}
diff --git a/newlib/libc/string/strncmp.c b/newlib/libc/string/strncmp.c
deleted file mode 100644
index 9801b7d92..000000000
--- a/newlib/libc/string/strncmp.c
+++ /dev/null
@@ -1,122 +0,0 @@
-/*
-FUNCTION
- <<strncmp>>---character string compare
-
-INDEX
- strncmp
-
-ANSI_SYNOPSIS
- #include <string.h>
- int strncmp(const char *<[a]>, const char * <[b]>, size_t <[length]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- int strncmp(<[a]>, <[b]>, <[length]>)
- char *<[a]>;
- char *<[b]>;
- size_t <[length]>
-
-DESCRIPTION
- <<strncmp>> compares up to <[length]> characters
- from the string at <[a]> to the string at <[b]>.
-
-RETURNS
- If <<*<[a]>>> sorts lexicographically after <<*<[b]>>>,
- <<strncmp>> returns a number greater than zero. If the two
- strings are equivalent, <<strncmp>> returns zero. If <<*<[a]>>>
- sorts lexicographically before <<*<[b]>>>, <<strncmp>> returns a
- number less than zero.
-
-PORTABILITY
-<<strncmp>> is ANSI C.
-
-<<strncmp>> requires no supporting OS subroutines.
-
-QUICKREF
- strncmp ansi pure
-*/
-
-#include <string.h>
-#include <limits.h>
-
-/* Nonzero if either X or Y is not aligned on a "long" boundary. */
-#define UNALIGNED(X, Y) \
- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1)))
-
-/* DETECTNULL returns nonzero if (long)X contains a NULL byte. */
-#if LONG_MAX == 2147483647L
-#define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080)
-#else
-#if LONG_MAX == 9223372036854775807L
-#define DETECTNULL(X) (((X) - 0x0101010101010101) & ~(X) & 0x8080808080808080)
-#else
-#error long int is not a 32bit or 64bit type.
-#endif
-#endif
-
-#ifndef DETECTNULL
-#error long int is not a 32bit or 64bit byte
-#endif
-
-int
-_DEFUN (strncmp, (s1, s2, n),
- _CONST char *s1 _AND
- _CONST char *s2 _AND
- size_t n)
-{
-#if defined(PREFER_SIZE_OVER_SPEED) || defined(__OPTIMIZE_SIZE__)
- if (n == 0)
- return 0;
-
- while (n-- != 0 && *s1 == *s2)
- {
- if (n == 0 || *s1 == '\0')
- break;
- s1++;
- s2++;
- }
-
- return (*(unsigned char *) s1) - (*(unsigned char *) s2);
-#else
- unsigned long *a1;
- unsigned long *a2;
-
- if (n == 0)
- return 0;
-
- /* If s1 or s2 are unaligned, then compare bytes. */
- if (!UNALIGNED (s1, s2))
- {
- /* If s1 and s2 are word-aligned, compare them a word at a time. */
- a1 = (unsigned long*)s1;
- a2 = (unsigned long*)s2;
- while (n >= sizeof (long) && *a1 == *a2)
- {
- n -= sizeof (long);
-
- /* If we've run out of bytes or hit a null, return zero
- since we already know *a1 == *a2. */
- if (n == 0 || DETECTNULL (*a1))
- return 0;
-
- a1++;
- a2++;
- }
-
- /* A difference was detected in last few bytes of s1, so search bytewise */
- s1 = (char*)a1;
- s2 = (char*)a2;
- }
-
- while (n-- > 0 && *s1 == *s2)
- {
- /* If we've run out of bytes or hit a null, return zero
- since we already know *s1 == *s2. */
- if (n == 0 || *s1 == '\0')
- return 0;
- s1++;
- s2++;
- }
- return (*(unsigned char *) s1) - (*(unsigned char *) s2);
-#endif /* not PREFER_SIZE_OVER_SPEED */
-}
diff --git a/newlib/libc/string/strncpy.c b/newlib/libc/string/strncpy.c
deleted file mode 100644
index 7c1973ba6..000000000
--- a/newlib/libc/string/strncpy.c
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
-FUNCTION
- <<strncpy>>---counted copy string
-
-INDEX
- strncpy
-
-ANSI_SYNOPSIS
- #include <string.h>
- char *strncpy(char *<[dst]>, const char *<[src]>, size_t <[length]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- char *strncpy(<[dst]>, <[src]>, <[length]>)
- char *<[dst]>;
- char *<[src]>;
- size_t <[length]>;
-
-DESCRIPTION
- <<strncpy>> copies not more than <[length]> characters from the
- the string pointed to by <[src]> (including the terminating
- null character) to the array pointed to by <[dst]>. If the
- string pointed to by <[src]> is shorter than <[length]>
- characters, null characters are appended to the destination
- array until a total of <[length]> characters have been
- written.
-
-RETURNS
- This function returns the initial value of <[dst]>.
-
-PORTABILITY
-<<strncpy>> is ANSI C.
-
-<<strncpy>> requires no supporting OS subroutines.
-
-QUICKREF
- strncpy ansi pure
-*/
-
-#include <string.h>
-#include <limits.h>
-
-/*SUPPRESS 560*/
-/*SUPPRESS 530*/
-
-/* Nonzero if either X or Y is not aligned on a "long" boundary. */
-#define UNALIGNED(X, Y) \
- (((long)X & (sizeof (long) - 1)) | ((long)Y & (sizeof (long) - 1)))
-
-#if LONG_MAX == 2147483647L
-#define DETECTNULL(X) (((X) - 0x01010101) & ~(X) & 0x80808080)
-#else
-#if LONG_MAX == 9223372036854775807L
-/* Nonzero if X (a long int) contains a NULL byte. */
-#define DETECTNULL(X) (((X) - 0x0101010101010101) & ~(X) & 0x8080808080808080)
-#else
-#error long int is not a 32bit or 64bit type.
-#endif
-#endif
-
-#ifndef DETECTNULL
-#error long int is not a 32bit or 64bit byte
-#endif
-
-#define TOO_SMALL(LEN) ((LEN) < sizeof (long))
-
-char *
-_DEFUN (strncpy, (dst0, src0),
- char *dst0 _AND
- _CONST char *src0 _AND
- size_t count)
-{
-#if defined(PREFER_SIZE_OVER_SPEED) || defined(__OPTIMIZE_SIZE__)
- char *dscan;
- _CONST char *sscan;
-
- dscan = dst0;
- sscan = src0;
- while (count > 0)
- {
- --count;
- if ((*dscan++ = *sscan++) == '\0')
- break;
- }
- while (count-- > 0)
- *dscan++ = '\0';
-
- return dst0;
-#else
- char *dst = dst0;
- _CONST char *src = src0;
- long *aligned_dst;
- _CONST long *aligned_src;
-
- /* If SRC and DEST is aligned and count large enough, then copy words. */
- if (!UNALIGNED (src, dst) && !TOO_SMALL (count))
- {
- aligned_dst = (long*)dst;
- aligned_src = (long*)src;
-
- /* SRC and DEST are both "long int" aligned, try to do "long int"
- sized copies. */
- while (count >= sizeof (long int) && !DETECTNULL(*aligned_src))
- {
- count -= sizeof (long int);
- *aligned_dst++ = *aligned_src++;
- }
-
- dst = (char*)aligned_dst;
- src = (char*)aligned_src;
- }
-
- while (count > 0)
- {
- --count;
- if ((*dst++ = *src++) == '\0')
- break;
- }
-
- while (count-- > 0)
- *dst++ = '\0';
-
- return dst0;
-#endif /* not PREFER_SIZE_OVER_SPEED */
-}
diff --git a/newlib/libc/string/strndup.c b/newlib/libc/string/strndup.c
deleted file mode 100644
index caa1b68b7..000000000
--- a/newlib/libc/string/strndup.c
+++ /dev/null
@@ -1,16 +0,0 @@
-#ifndef _REENT_ONLY
-
-#include <_ansi.h>
-#include <reent.h>
-#include <stdlib.h>
-#include <string.h>
-
-char *
-_DEFUN (strndup, (str, n),
- _CONST char *str _AND
- size_t n)
-{
- return _strndup_r (_REENT, str, n);
-}
-
-#endif /* !_REENT_ONLY */
diff --git a/newlib/libc/string/strndup_r.c b/newlib/libc/string/strndup_r.c
deleted file mode 100644
index 2acf63dec..000000000
--- a/newlib/libc/string/strndup_r.c
+++ /dev/null
@@ -1,27 +0,0 @@
-#include <reent.h>
-#include <stdlib.h>
-#include <string.h>
-
-char *
-_DEFUN (_strndup_r, (reent_ptr, str, n),
- struct _reent *reent_ptr _AND
- _CONST char *str _AND
- size_t n)
-{
- _CONST char *ptr = str;
- size_t len;
- char *copy;
-
- while (n-- > 0 && *ptr)
- ptr++;
-
- len = ptr - str;
-
- copy = _malloc_r (reent_ptr, len + 1);
- if (copy)
- {
- memcpy (copy, str, len);
- copy[len] = '\0';
- }
- return copy;
-}
diff --git a/newlib/libc/string/strnlen.c b/newlib/libc/string/strnlen.c
deleted file mode 100644
index ed60e9371..000000000
--- a/newlib/libc/string/strnlen.c
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
-FUNCTION
- <<strnlen>>---character string length
-
-INDEX
- strnlen
-
-ANSI_SYNOPSIS
- #include <string.h>
- size_t strnlen(const char *<[str]>, size_t <[n]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- size_t strnlen(<[str]>, <[n]>)
- char *<[src]>;
- size_t <[n]>;
-
-DESCRIPTION
- The <<strnlen>> function works out the length of the string
- starting at <<*<[str]>>> by counting chararacters until it
- reaches a NUL character or the maximum: <[n]> number of
- characters have been inspected.
-
-RETURNS
- <<strnlen>> returns the character count or <[n]>.
-
-PORTABILITY
-<<strnlen>> is a GNU extension.
-
-<<strnlen>> requires no supporting OS subroutines.
-
-*/
-
-#undef __STRICT_ANSI__
-#include <_ansi.h>
-#include <string.h>
-
-size_t
-_DEFUN (strnlen, (str, n),
- _CONST char *str _AND
- size_t n)
-{
- _CONST char *start = str;
-
- while (n-- > 0 && *str)
- str++;
-
- return str - start;
-}
diff --git a/newlib/libc/string/strpbrk.c b/newlib/libc/string/strpbrk.c
deleted file mode 100644
index 5668db395..000000000
--- a/newlib/libc/string/strpbrk.c
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
-FUNCTION
- <<strpbrk>>---find characters in string
-
-INDEX
- strpbrk
-
-ANSI_SYNOPSIS
- #include <string.h>
- char *strpbrk(const char *<[s1]>, const char *<[s2]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- char *strpbrk(<[s1]>, <[s2]>)
- char *<[s1]>;
- char *<[s2]>;
-
-DESCRIPTION
- This function locates the first occurence in the string
- pointed to by <[s1]> of any character in string pointed to by
- <[s2]> (excluding the terminating null character).
-
-RETURNS
- <<strpbrk>> returns a pointer to the character found in <[s1]>, or a
- null pointer if no character from <[s2]> occurs in <[s1]>.
-
-PORTABILITY
-<<strpbrk>> requires no supporting OS subroutines.
-*/
-
-#include <string.h>
-
-char *
-_DEFUN (strpbrk, (s1, s2),
- _CONST char *s1 _AND
- _CONST char *s2)
-{
- _CONST char *c = s2;
- if (!*s1)
- return (char *) NULL;
-
- while (*s1)
- {
- for (c = s2; *c; c++)
- {
- if (*s1 == *c)
- break;
- }
- if (*c)
- break;
- s1++;
- }
-
- if (*c == '\0')
- s1 = NULL;
-
- return (char *) s1;
-}
diff --git a/newlib/libc/string/strrchr.c b/newlib/libc/string/strrchr.c
deleted file mode 100644
index 4f903afe2..000000000
--- a/newlib/libc/string/strrchr.c
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
-FUNCTION
- <<strrchr>>---reverse search for character in string
-
-INDEX
- strrchr
-
-ANSI_SYNOPSIS
- #include <string.h>
- char * strrchr(const char *<[string]>, int <[c]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- char * strrchr(<[string]>, <[c]>);
- char *<[string]>;
- int *<[c]>;
-
-DESCRIPTION
- This function finds the last occurence of <[c]> (converted to
- a char) in the string pointed to by <[string]> (including the
- terminating null character).
-
-RETURNS
- Returns a pointer to the located character, or a null pointer
- if <[c]> does not occur in <[string]>.
-
-PORTABILITY
-<<strrchr>> is ANSI C.
-
-<<strrchr>> requires no supporting OS subroutines.
-
-QUICKREF
- strrchr ansi pure
-*/
-
-#include <string.h>
-
-char *
-_DEFUN (strrchr, (s, i),
- _CONST char *s _AND
- int i)
-{
- _CONST char *last = NULL;
-
- if (i)
- {
- while ((s=strchr(s, i)))
- {
- last = s;
- s++;
- }
- }
- else
- {
- last = strchr(s, i);
- }
-
- return (char *) last;
-}
diff --git a/newlib/libc/string/strsep.c b/newlib/libc/string/strsep.c
deleted file mode 100644
index d3d0ad0a9..000000000
--- a/newlib/libc/string/strsep.c
+++ /dev/null
@@ -1,19 +0,0 @@
-/* BSD strsep function */
-
-/* Copyright 2002, Red Hat Inc. */
-
-/* undef STRICT_ANSI so that strsep prototype will be defined */
-#undef __STRICT_ANSI__
-#include <string.h>
-#include <_ansi.h>
-#include <reent.h>
-
-extern char *__strtok_r (char *, const char *, char **, int);
-
-char *
-_DEFUN (strsep, (source_ptr, delim),
- register char **source_ptr _AND
- register const char *delim)
-{
- return __strtok_r (*source_ptr, delim, source_ptr, 0);
-}
diff --git a/newlib/libc/string/strspn.c b/newlib/libc/string/strspn.c
deleted file mode 100644
index 32b921b10..000000000
--- a/newlib/libc/string/strspn.c
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
-FUNCTION
- <<strspn>>---find initial match
-
-INDEX
- strspn
-
-ANSI_SYNOPSIS
- #include <string.h>
- size_t strspn(const char *<[s1]>, const char *<[s2]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- size_t strspn(<[s1]>, <[s2]>)
- char *<[s1]>;
- char *<[s2]>;
-
-DESCRIPTION
- This function computes the length of the initial segment of
- the string pointed to by <[s1]> which consists entirely of
- characters from the string pointed to by <[s2]> (excluding the
- terminating null character).
-
-RETURNS
- <<strspn>> returns the length of the segment found.
-
-PORTABILITY
-<<strspn>> is ANSI C.
-
-<<strspn>> requires no supporting OS subroutines.
-
-QUICKREF
- strspn ansi pure
-*/
-
-#include <string.h>
-
-size_t
-_DEFUN (strspn, (s1, s2),
- _CONST char *s1 _AND
- _CONST char *s2)
-{
- _CONST char *s = s1;
- _CONST char *c;
-
- while (*s1)
- {
- for (c = s2; *c; c++)
- {
- if (*s1 == *c)
- break;
- }
- if (*c == '\0')
- break;
- s1++;
- }
-
- return s1 - s;
-}
diff --git a/newlib/libc/string/strstr.c b/newlib/libc/string/strstr.c
deleted file mode 100644
index 0480bce0a..000000000
--- a/newlib/libc/string/strstr.c
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
-FUNCTION
- <<strstr>>---find string segment
-
-INDEX
- strstr
-
-ANSI_SYNOPSIS
- #include <string.h>
- char *strstr(const char *<[s1]>, const char *<[s2]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- char *strstr(<[s1]>, <[s2]>)
- char *<[s1]>;
- char *<[s2]>;
-
-DESCRIPTION
- Locates the first occurrence in the string pointed to by <[s1]> of
- the sequence of characters in the string pointed to by <[s2]>
- (excluding the terminating null character).
-
-RETURNS
- Returns a pointer to the located string segment, or a null
- pointer if the string <[s2]> is not found. If <[s2]> points to
- a string with zero length, <[s1]> is returned.
-
-PORTABILITY
-<<strstr>> is ANSI C.
-
-<<strstr>> requires no supporting OS subroutines.
-
-QUICKREF
- strstr ansi pure
-*/
-
-#include <string.h>
-
-#if !defined(PREFER_SIZE_OVER_SPEED) && !defined(__OPTIMIZE_SIZE__)
-# define RETURN_TYPE char *
-# define AVAILABLE(h, h_l, j, n_l) \
- (!memchr ((h) + (h_l), '\0', (j) + (n_l) - (h_l)) \
- && ((h_l) = (j) + (n_l)))
-# include "str-two-way.h"
-#endif
-
-char *
-_DEFUN (strstr, (searchee, lookfor),
- _CONST char *searchee _AND
- _CONST char *lookfor)
-{
-#if defined(PREFER_SIZE_OVER_SPEED) || defined(__OPTIMIZE_SIZE__)
-
- /* Less code size, but quadratic performance in the worst case. */
- if (*searchee == 0)
- {
- if (*lookfor)
- return (char *) NULL;
- return (char *) searchee;
- }
-
- while (*searchee)
- {
- size_t i;
- i = 0;
-
- while (1)
- {
- if (lookfor[i] == 0)
- {
- return (char *) searchee;
- }
-
- if (lookfor[i] != searchee[i])
- {
- break;
- }
- i++;
- }
- searchee++;
- }
-
- return (char *) NULL;
-
-#else /* compilation for speed */
-
- /* Larger code size, but guaranteed linear performance. */
- const char *haystack = searchee;
- const char *needle = lookfor;
- size_t needle_len; /* Length of NEEDLE. */
- size_t haystack_len; /* Known minimum length of HAYSTACK. */
- int ok = 1; /* True if NEEDLE is prefix of HAYSTACK. */
-
- /* Determine length of NEEDLE, and in the process, make sure
- HAYSTACK is at least as long (no point processing all of a long
- NEEDLE if HAYSTACK is too short). */
- while (*haystack && *needle)
- ok &= *haystack++ == *needle++;
- if (*needle)
- return NULL;
- if (ok)
- return (char *) searchee;
-
- /* Reduce the size of haystack using strchr, since it has a smaller
- linear coefficient than the Two-Way algorithm. */
- needle_len = needle - lookfor;
- haystack = strchr (searchee + 1, *lookfor);
- if (!haystack || needle_len == 1)
- return (char *) haystack;
- haystack_len = (haystack > searchee + needle_len ? 1
- : needle_len + searchee - haystack);
-
- /* Perform the search. */
- if (needle_len < LONG_NEEDLE_THRESHOLD)
- return two_way_short_needle ((const unsigned char *) haystack,
- haystack_len,
- (const unsigned char *) lookfor, needle_len);
- return two_way_long_needle ((const unsigned char *) haystack, haystack_len,
- (const unsigned char *) lookfor, needle_len);
-#endif /* compilation for speed */
-}
diff --git a/newlib/libc/string/strtok.c b/newlib/libc/string/strtok.c
deleted file mode 100644
index 7640fb73d..000000000
--- a/newlib/libc/string/strtok.c
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
-FUNCTION
- <<strtok>>, <<strtok_r>>, <<strsep>>---get next token from a string
-
-INDEX
- strtok
-
-INDEX
- strtok_r
-
-INDEX
- strsep
-
-ANSI_SYNOPSIS
- #include <string.h>
- char *strtok(char *<[source]>, const char *<[delimiters]>)
- char *strtok_r(char *<[source]>, const char *<[delimiters]>,
- char **<[lasts]>)
- char *strsep(char **<[source_ptr]>, const char *<[delimiters]>)
-
-TRAD_SYNOPSIS
- #include <string.h>
- char *strtok(<[source]>, <[delimiters]>)
- char *<[source]>;
- char *<[delimiters]>;
-
- char *strtok_r(<[source]>, <[delimiters]>, <[lasts]>)
- char *<[source]>;
- char *<[delimiters]>;
- char **<[lasts]>;
-
- char *strsep(<[source_ptr]>, <[delimiters]>)
- char **<[source_ptr]>;
- char *<[delimiters]>;
-
-DESCRIPTION
- The <<strtok>> function is used to isolate sequential tokens in a
- null-terminated string, <<*<[source]>>>. These tokens are delimited
- in the string by at least one of the characters in <<*<[delimiters]>>>.
- The first time that <<strtok>> is called, <<*<[source]>>> should be
- specified; subsequent calls, wishing to obtain further tokens from
- the same string, should pass a null pointer instead. The separator
- string, <<*<[delimiters]>>>, must be supplied each time and may
- change between calls.
-
- The <<strtok>> function returns a pointer to the beginning of each
- subsequent token in the string, after replacing the separator
- character itself with a null character. When no more tokens remain,
- a null pointer is returned.
-
- The <<strtok_r>> function has the same behavior as <<strtok>>, except
- a pointer to placeholder <<*<[lasts]>>> must be supplied by the caller.
-
- The <<strsep>> function is similar in behavior to <<strtok>>, except
- a pointer to the string pointer must be supplied <<<[source_ptr]>>> and
- the function does not skip leading delimiters. When the string starts
- with a delimiter, the delimiter is changed to the null character and
- the empty string is returned. Like <<strtok_r>> and <<strtok>>, the
- <<*<[source_ptr]>>> is updated to the next character following the
- last delimiter found or NULL if the end of string is reached with
- no more delimiters.
-
-RETURNS
- <<strtok>>, <<strtok_r>>, and <<strsep>> all return a pointer to the
- next token, or <<NULL>> if no more tokens can be found. For
- <<strsep>>, a token may be the empty string.
-
-NOTES
- <<strtok>> is unsafe for multi-threaded applications. <<strtok_r>>
- and <<strsep>> are thread-safe and should be used instead.
-
-PORTABILITY
-<<strtok>> is ANSI C.
-<<strtok_r>> is POSIX.
-<<strsep>> is a BSD extension.
-
-<<strtok>>, <<strtok_r>>, and <<strsep>> require no supporting OS subroutines.
-
-QUICKREF
- strtok ansi impure
-*/
-
-/* undef STRICT_ANSI so that strtok_r prototype will be defined */
-#undef __STRICT_ANSI__
-#include <string.h>
-#include <_ansi.h>
-#include <reent.h>
-
-#ifndef _REENT_ONLY
-
-extern char *__strtok_r (char *, const char *, char **, int);
-
-char *
-_DEFUN (strtok, (s, delim),
- register char *s _AND
- register const char *delim)
-{
- _REENT_CHECK_MISC(_REENT);
- return __strtok_r (s, delim, &(_REENT_STRTOK_LAST(_REENT)), 1);
-}
-#endif
diff --git a/newlib/libc/string/strtok_r.c b/newlib/libc/string/strtok_r.c
deleted file mode 100644
index 02ad80b9b..000000000
--- a/newlib/libc/string/strtok_r.c
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * Copyright (c) 1988 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include <string.h>
-
-char *
-_DEFUN (__strtok_r, (s, delim, lasts, skip_leading_delim),
- register char *s _AND
- register const char *delim _AND
- char **lasts _AND
- int skip_leading_delim)
-{
- register char *spanp;
- register int c, sc;
- char *tok;
-
-
- if (s == NULL && (s = *lasts) == NULL)
- return (NULL);
-
- /*
- * Skip (span) leading delimiters (s += strspn(s, delim), sort of).
- */
-cont:
- c = *s++;
- for (spanp = (char *)delim; (sc = *spanp++) != 0;) {
- if (c == sc) {
- if (skip_leading_delim) {
- goto cont;
- }
- else {
- *lasts = s;
- s[-1] = 0;
- return (s - 1);
- }
- }
- }
-
- if (c == 0) { /* no non-delimiter characters */
- *lasts = NULL;
- return (NULL);
- }
- tok = s - 1;
-
- /*
- * Scan token (scan for delimiters: s += strcspn(s, delim), sort of).
- * Note that delim must have one NUL; we stop if we see that, too.
- */
- for (;;) {
- c = *s++;
- spanp = (char *)delim;
- do {
- if ((sc = *spanp++) == c) {
- if (c == 0)
- s = NULL;
- else
- s[-1] = 0;
- *lasts = s;
- return (tok);
- }
- } while (sc != 0);
- }
- /* NOTREACHED */
-}
-
-char *
-_DEFUN (strtok_r, (s, delim, lasts),
- register char *s _AND
- register const char *delim _AND
- char **lasts)
-{
- return __strtok_r (s, delim, lasts, 1);
-}
diff --git a/newlib/libc/string/strupr.c b/newlib/libc/string/strupr.c
deleted file mode 100644
index 3f346b840..000000000
--- a/newlib/libc/string/strupr.c
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
-FUNCTION
- <<strupr>>---force string to uppercase
-
-INDEX
- strupr
-
-ANSI_SYNOPSIS
- #include <string.h>
- char *strupr(char *<[a]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- char *strupr(<[a]>)
- char *<[a]>;
-
-DESCRIPTION
- <<strupr>> converts each character in the string at <[a]> to
- uppercase.
-
-RETURNS
- <<strupr>> returns its argument, <[a]>.
-
-PORTABILITY
-<<strupr>> is not widely portable.
-
-<<strupr>> requires no supporting OS subroutines.
-
-QUICKREF
- strupr */
-
-#include <string.h>
-#include <ctype.h>
-
-char *
-strupr (a)
- char *a;
-{
- char *ret = a;
-
- while (*a != '\0')
- {
- if (islower (*a))
- *a = toupper (*a);
- ++a;
- }
-
- return ret;
-}
diff --git a/newlib/libc/string/strxfrm.c b/newlib/libc/string/strxfrm.c
deleted file mode 100644
index 65ed4f1b1..000000000
--- a/newlib/libc/string/strxfrm.c
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
-FUNCTION
- <<strxfrm>>---transform string
-
-INDEX
- strxfrm
-
-ANSI_SYNOPSIS
- #include <string.h>
- size_t strxfrm(char *<[s1]>, const char *<[s2]>, size_t <[n]>);
-
-TRAD_SYNOPSIS
- #include <string.h>
- size_t strxfrm(<[s1]>, <[s2]>, <[n]>);
- char *<[s1]>;
- char *<[s2]>;
- size_t <[n]>;
-
-DESCRIPTION
- This function transforms the string pointed to by <[s2]> and
- places the resulting string into the array pointed to by
- <[s1]>. The transformation is such that if the <<strcmp>>
- function is applied to the two transformed strings, it returns
- a value greater than, equal to, or less than zero,
- correspoinding to the result of a <<strcoll>> function applied
- to the same two original strings.
-
- No more than <[n]> characters are placed into the resulting
- array pointed to by <[s1]>, including the terminating null
- character. If <[n]> is zero, <[s1]> may be a null pointer. If
- copying takes place between objects that overlap, the behavior
- is undefined.
-
- With a C locale, this function just copies.
-
-RETURNS
- The <<strxfrm>> function returns the length of the transformed string
- (not including the terminating null character). If the value returned
- is <[n]> or more, the contents of the array pointed to by
- <[s1]> are indeterminate.
-
-PORTABILITY
-<<strxfrm>> is ANSI C.
-
-<<strxfrm>> requires no supporting OS subroutines.
-
-QUICKREF
- strxfrm ansi pure
-*/
-
-#include <string.h>
-
-size_t
-_DEFUN (strxfrm, (s1, s2, n),
- char *s1 _AND
- _CONST char *s2 _AND
- size_t n)
-{
- size_t res;
- res = 0;
- while (n-- > 0)
- {
- if ((*s1++ = *s2++) != '\0')
- ++res;
- else
- return res;
- }
- while (*s2)
- {
- ++s2;
- ++res;
- }
-
- return res;
-}
diff --git a/newlib/libc/string/swab.c b/newlib/libc/string/swab.c
deleted file mode 100644
index aee076319..000000000
--- a/newlib/libc/string/swab.c
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
-FUNCTION
- <<swab>>---swap adjacent bytes
-
-ANSI_SYNOPSIS
- #include <unistd.h>
- void swab(const void *<[in]>, void *<[out]>, ssize_t <[n]>);
-
-TRAD_SYNOPSIS
- void swab(<[in]>, <[out]>, <[n]>
- void *<[in]>;
- void *<[out]>;
- ssize_t <[n]>;
-
-DESCRIPTION
- This function copies <[n]> bytes from the memory region
- pointed to by <[in]> to the memory region pointed to by
- <[out]>, exchanging adjacent even and odd bytes.
-
-PORTABILITY
-<<swab>> requires no supporting OS subroutines.
-*/
-
-#include <unistd.h>
-
-void
-_DEFUN (swab, (b1, b2, length),
- _CONST void *b1 _AND
- void *b2 _AND
- ssize_t length)
-{
- const char *from = b1;
- char *to = b2;
- ssize_t ptr;
- for (ptr = 1; ptr < length; ptr += 2)
- {
- char p = from[ptr];
- char q = from[ptr-1];
- to[ptr-1] = p;
- to[ptr ] = q;
- }
- if (ptr == length) /* I.e., if length is odd, */
- to[ptr-1] = 0; /* then pad with a NUL. */
-}
diff --git a/newlib/libc/string/u_strerr.c b/newlib/libc/string/u_strerr.c
deleted file mode 100644
index fa4605c8b..000000000
--- a/newlib/libc/string/u_strerr.c
+++ /dev/null
@@ -1,8 +0,0 @@
-#include <_ansi.h>
-
-char *
-_DEFUN(_user_strerror, (errnum),
- int errnum)
-{
- return 0;
-}
diff --git a/newlib/libc/string/wcpcpy.c b/newlib/libc/string/wcpcpy.c
deleted file mode 100644
index 7bb9a1e9f..000000000
--- a/newlib/libc/string/wcpcpy.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
-FUNCTION
- <<wcpcpy>>---copy a wide-character string returning a pointer to its end
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- wchar_t *wcpcpy(wchar_t *<[s1]>, const wchar_t *,<[s2]>);
-
-TRAD_SYNOPSIS
- wchar_t *wcpcpy(<[s1]>, <[s2]>
- wchar_t *<[s1]>;
- const wchar_t *<[s2]>;
-
-DESCRIPTION
- The <<wcpcpy>> function copies the wide-character string pointed to by
- <[s2]> (including the terminating null wide-character code) into the
- array pointed to by <[s1]>. If copying takes place between objects that
- overlap, the behaviour is undefined.
-
-RETURNS
- This function returns a pointer to the end of the destination string,
- thus pointing to the trailing '\0'.
-
-PORTABILITY
-<<wcpcpy>> is a GNU extension.
-
-No supporting OS subroutines are required.
-*/
-
-#include <_ansi.h>
-#include <wchar.h>
-
-wchar_t *
-_DEFUN (wcpcpy, (s1, s2),
- wchar_t * s1 _AND
- _CONST wchar_t * s2)
-{
- while ((*s1++ = *s2++))
- ;
- return --s1;
-}
diff --git a/newlib/libc/string/wcpncpy.c b/newlib/libc/string/wcpncpy.c
deleted file mode 100644
index 654bdb78f..000000000
--- a/newlib/libc/string/wcpncpy.c
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
-FUNCTION
- <<wcpncpy>>---copy part of a wide-character string returning a pointer to its end
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- wchar_t *wcpncpy(wchar_t *<[s1]>, const wchar_t *<[s2]>, size_t <[n]>);
-
-TRAD_SYNOPSIS
- wchar_t *wcpncpy(<[s1]>, <[s2]>, <[n]>
- wchar_t *<[s1]>;
- const wchar_t *<[s2]>;
- size_t <[n]>;
-
-DESCRIPTION
- The <<wcpncpy>> function copies not more than n wide-character codes
- (wide-character codes that follow a null wide-character code are not
- copied) from the array pointed to by <[s2]> to the array pointed to
- by <[s1]>. If copying takes place between objects that overlap, the
- behaviour is undefined.
-
- If the array pointed to by <[s2]> is a wide-character string that is
- shorter than <[n]> wide-character codes, null wide-character codes are
- appended to the copy in the array pointed to by <[s1]>, until <[n]>
- wide-character codes in all are written.
-
-RETURNS
- The <<wcpncpy>> function returns <[s1]>; no return value is reserved to
- indicate an error.
-
-PORTABILITY
-<<wcpncpy>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
-No supporting OS subroutines are required.
-*/
-
-#include <_ansi.h>
-#include <wchar.h>
-
-wchar_t *
-_DEFUN (wcpncpy, (dst, src, count),
- wchar_t * dst _AND
- _CONST wchar_t * src _AND
- size_t count)
-{
- wchar_t *ret = NULL;
-
- while (count > 0)
- {
- --count;
- if ((*dst++ = *src++) == L'\0')
- {
- ret = dst - 1;
- break;
- }
- }
- while (count-- > 0)
- *dst++ = L'\0';
-
- return ret ? ret : dst;
-}
diff --git a/newlib/libc/string/wcscat.c b/newlib/libc/string/wcscat.c
deleted file mode 100644
index 54c0b503b..000000000
--- a/newlib/libc/string/wcscat.c
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
-FUNCTION
- <<wcscat>>---concatenate two wide-character strings
-INDEX
- wcscat
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- wchar_t *wcscat(wchar_t *<[s1]>, const wchar_t *<[s2]>);
-
-TRAD_SYNOPSIS
- wchar_t *wcscat(<[s1]>, <[s2]>
- wchar_t *<[s1]>;
- const wchar_t *<[s2]>;
-
-DESCRIPTION
- The <<wcscat>> function appends a copy of the wide-character string
- pointed to by <[s2]> (including the terminating null wide-character
- code) to the end of the wide-character string pointed to by <[s1]>.
- The initial wide-character code of <[s2]> overwrites the null
- wide-character code at the end of <[s1]>. If copying takes place between
- objects that overlap, the behaviour is undefined.
-
-RETURNS
- The <<wcscat>> function returns <[s1]>;
- no return value is reserved to indicate an error.
-
-PORTABILITY
-<<wcscat>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
-No supporting OS subroutines are required.
-*/
-
-/* $NetBSD: wcscat.c,v 1.1 2000/12/23 23:14:36 itojun Exp $ */
-
-/*-
- * Copyright (c)1999 Citrus Project,
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * citrus Id: wcscat.c,v 1.1 1999/12/29 21:47:45 tshiozak Exp
- */
-
-#include <_ansi.h>
-#include <wchar.h>
-
-wchar_t *
-_DEFUN (wcscat, (s1, s2),
- wchar_t * s1 _AND
- _CONST wchar_t * s2)
-{
- wchar_t *p;
- wchar_t *q;
- _CONST wchar_t *r;
-
- p = s1;
- while (*p)
- p++;
- q = p;
- r = s2;
- while (*r)
- *q++ = *r++;
- *q = '\0';
- return s1;
-}
diff --git a/newlib/libc/string/wcschr.c b/newlib/libc/string/wcschr.c
deleted file mode 100644
index fb35d1f42..000000000
--- a/newlib/libc/string/wcschr.c
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
-FUNCTION
- <<wcschr>>---wide-character string scanning operation
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- wchar_t *wcschr(const wchar_t *<[s]>, wchar_t <[c]>);
-
-TRAD_SYNOPSIS
- wchar_t *wcschr(<[s]>, <[c]>
- const wchar_t *<[s]>;
- wchar_t <[c]>;
-
-DESCRIPTION
- The <<wcschr>> function locates the first occurrence of <[c]> in the
- wide-character string pointed to by <[s]>. The value of <[c]> must be a
- character representable as a type wchar_t and must be a wide-character
- code corresponding to a valid character in the current locale.
- The terminating null wide-character string.
-
-RETURNS
- Upon completion, <<wcschr>> returns a pointer to the wide-character
- code, or a null pointer if the wide-character code is not found.
-
-PORTABILITY
-<<wcschr>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
-No supporting OS subroutines are required.
-*/
-
-/* $NetBSD: wcschr.c,v 1.1 2000/12/23 23:14:36 itojun Exp $ */
-
-/*-
- * Copyright (c)1999 Citrus Project,
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * citrus Id: wcschr.c,v 1.2 2000/12/21 05:07:25 itojun Exp
- */
-
-#include <_ansi.h>
-#include <stddef.h>
-#include <wchar.h>
-
-wchar_t *
-_DEFUN (wcschr, (s, c),
- _CONST wchar_t * s _AND
- wchar_t c)
-{
- _CONST wchar_t *p;
-
- p = s;
- do
- {
- if (*p == c)
- {
- /* LINTED interface specification */
- return (wchar_t *) p;
- }
- } while (*p++);
- return NULL;
-}
diff --git a/newlib/libc/string/wcscmp.c b/newlib/libc/string/wcscmp.c
deleted file mode 100644
index 03089620d..000000000
--- a/newlib/libc/string/wcscmp.c
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
-FUNCTION
- <<wcscmp>>---compare two wide-character strings
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- int wcscmp(const wchar_t *<[s1]>, *<[s2]>);
-
-TRAD_SYNOPSIS
- int wcscmp(<[s1]>, <[s2]>
- const wchar_t *<[s1]>, <[s2]>;
-
-DESCRIPTION
- The <<wcscmp>> function compares the wide-character string pointed to
- by <[s1]> to the wide-character string pointed to by <[s2]>.
-
- The sign of a non-zero return value is determined by the sign of the
- difference between the values of the first pair of wide-character codes
- that differ in the objects being compared.
-
-RETURNS
- Upon completion, <<wcscmp>> returns an integer greater than, equal to
- or less than 0, if the wide-character string pointed to by <[s1]> is
- greater than, equal to or less than the wide-character string pointed
- to by <[s2]> respectively.
-
-PORTABILITY
-<<wcscmp>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
-No supporting OS subroutines are required.
-*/
-
-/* $NetBSD$ */
-
-/*-
- * Copyright (c) 1990, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * This code is derived from software contributed to Berkeley by
- * Chris Torek.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include <_ansi.h>
-#include <wchar.h>
-
-/*
- * Compare strings.
- */
-int
-_DEFUN (wcscmp, (s1, s2),
- _CONST wchar_t * s1 _AND
- _CONST wchar_t * s2)
-{
-
- while (*s1 == *s2++)
- if (*s1++ == 0)
- return (0);
- return (*s1 - *--s2);
-}
diff --git a/newlib/libc/string/wcscoll.c b/newlib/libc/string/wcscoll.c
deleted file mode 100644
index 0f0513a58..000000000
--- a/newlib/libc/string/wcscoll.c
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
-FUNCTION
- <<wcscoll>>---locale-specific wide-character string compare
-
-INDEX
- wcscoll
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- int wcscoll(const wchar_t *<[stra]>, const wchar_t * <[strb]>);
-
-TRAD_SYNOPSIS
- #include <wchar.h>
- int wcscoll(<[stra]>, <[strb]>)
- wchar_t *<[stra]>;
- wchar_t *<[strb]>;
-
-DESCRIPTION
- <<wcscoll>> compares the wide-character string pointed to by
- <[stra]> to the wide-character string pointed to by <[strb]>,
- using an interpretation appropriate to the current <<LC_COLLATE>>
- state.
-
- The current implementation of <<wcscoll>> simply uses <<wcscmp>>
- and does not support any language-specific sorting.
-
-RETURNS
- If the first string is greater than the second string,
- <<wcscoll>> returns a number greater than zero. If the two
- strings are equivalent, <<wcscoll>> returns zero. If the first
- string is less than the second string, <<wcscoll>> returns a
- number less than zero.
-
-PORTABILITY
-<<wcscoll>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-*/
-
-#include <_ansi.h>
-#include <wchar.h>
-
-int
-_DEFUN (wcscoll, (a, b),
- _CONST wchar_t *a _AND
- _CONST wchar_t *b)
-
-{
- return wcscmp (a, b);
-}
diff --git a/newlib/libc/string/wcscpy.c b/newlib/libc/string/wcscpy.c
deleted file mode 100644
index ede693d9c..000000000
--- a/newlib/libc/string/wcscpy.c
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
-FUNCTION
- <<wcscpy>>---copy a wide-character string
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- wchar_t *wcscpy(wchar_t *<[s1]>, const wchar_t *,<[s2]>);
-
-TRAD_SYNOPSIS
- wchar_t *wcscpy(<[s1]>, <[s2]>
- wchar_t *<[s1]>;
- const wchar_t *<[s2]>;
-
-DESCRIPTION
- The <<wcscpy>> function copies the wide-character string pointed to by
- <[s2]> (including the terminating null wide-character code) into the
- array pointed to by <[s1]>. If copying takes place between objects that
- overlap, the behaviour is undefined.
-
-RETURNS
- The <<wcscpy>> function returns <[s1]>; no return value is reserved to
- indicate an error.
-
-PORTABILITY
-<<wcscpy>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
-No supporting OS subroutines are required.
-*/
-
-/* $NetBSD: wcscpy.c,v 1.1 2000/12/23 23:14:36 itojun Exp $ */
-
-/*-
- * Copyright (c)1999 Citrus Project,
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * citrus Id: wcscpy.c,v 1.2 2000/12/21 04:51:09 itojun Exp
- */
-
-#include <_ansi.h>
-#include <wchar.h>
-
-wchar_t *
-_DEFUN (wcscpy, (s1, s2),
- wchar_t * s1 _AND
- _CONST wchar_t * s2)
-{
- wchar_t *p;
- _CONST wchar_t *q;
-
- *s1 = '\0';
- p = s1;
- q = s2;
- while (*q)
- *p++ = *q++;
- *p = '\0';
-
- return s1;
-}
diff --git a/newlib/libc/string/wcscspn.c b/newlib/libc/string/wcscspn.c
deleted file mode 100644
index 5ab965690..000000000
--- a/newlib/libc/string/wcscspn.c
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
-FUNCTION
- <<wcscspn>>---get length of a complementary wide substring
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- size_t wcscspn(const wchar_t *<[s]>, wchar_t *<[set]>);
-
-TRAD_SYNOPSIS
- size_t wcscspn(<[s]>, <[set]>
- const wchar_t *<[s]>;
- const wchar_t *<[set]>;
-
-DESCRIPTION
- The <<wcscspn>> function computes the length of the maximum initial
- segment of the wide-character string pointed to by <[s]> which consists
- entirely of wide-character codes not from the wide-character string
- pointed to by <[set]>.
-
-RETURNS
- The <<wcscspn>> function returns the length of the initial substring of
- <[s1]>; no return value is reserved to indicate an error.
-
-PORTABILITY
-<<wcscspn>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
-No supporting OS subroutines are required.
-*/
-
-/* $NetBSD: wcscspn.c,v 1.1 2000/12/23 23:14:36 itojun Exp $ */
-
-/*-
- * Copyright (c)1999 Citrus Project,
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * citrus Id: wcscspn.c,v 1.1 1999/12/29 21:47:45 tshiozak Exp
- */
-
-#include <_ansi.h>
-#include <wchar.h>
-
-size_t
-_DEFUN (wcscspn, (s, set),
- _CONST wchar_t * s _AND
- _CONST wchar_t * set)
-{
- _CONST wchar_t *p;
- _CONST wchar_t *q;
-
- p = s;
- while (*p)
- {
- q = set;
- while (*q)
- {
- if (*p == *q)
- goto done;
- q++;
- }
- p++;
- }
-
-done:
- return (p - s);
-}
diff --git a/newlib/libc/string/wcslcat.c b/newlib/libc/string/wcslcat.c
deleted file mode 100644
index 75c085b5b..000000000
--- a/newlib/libc/string/wcslcat.c
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
-FUNCTION
- <<wcslcat>>---concatenate wide-character strings to specified length
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- size_t wcslcat(wchar_t *<[dst]>, const wchar_t *<[src]>, size_t <[siz]>);
-
-TRAD_SYNOPSIS
- #include <wchar.h>
- size_t wcslcat(<[dst]>, <[src]>, <[siz]>
- wchar_t *<[dst]>;
- const wchar_t *<[src]>;
- size_t <[siz]>;
-
-DESCRIPTION
- The <<wcslcat>> function appends wide characters from <[src]> to
- end of the <[dst]> wide-character string so that the resultant
- wide-character string is not more than <[siz]> wide characters
- including the terminating null wide-character code. A terminating
- null wide character is always added unless <[siz]> is 0. Thus,
- the maximum number of wide characters that can be appended from
- <[src]> is <[siz]> - 1. If copying takes place between objects
- that overlap, the behaviour is undefined.
-
-RETURNS
- Wide-character string length of initial <[dst]> plus the
- wide-character string length of <[src]> (does not include
- terminating null wide-characters). If the return value is
- greater than or equal to <[siz]>, then truncation occurred and
- not all wide characters from <[src]> were appended.
-
-PORTABILITY
-No supporting OS subroutines are required.
-*/
-
-/* $NetBSD: wcslcat.c,v 1.1 2000/12/23 23:14:36 itojun Exp $ */
-/* from OpenBSD: strlcat.c,v 1.3 2000/11/24 11:10:02 itojun Exp */
-
-/*
- * Copyright (c) 1998 Todd C. Miller <Todd.Miller@courtesan.com>
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
- * THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include <_ansi.h>
-#include <wchar.h>
-
-/*
- * Appends src to string dst of size siz (unlike wcsncat, siz is the
- * full size of dst, not space left). At most siz-1 characters
- * will be copied. Always NUL terminates (unless siz == 0).
- * Returns wcslen(initial dst) + wcslen(src); if retval >= siz,
- * truncation occurred.
- */
-size_t
-_DEFUN (wcslcat, (dst, src, siz),
- wchar_t * dst _AND
- _CONST wchar_t * src _AND
- size_t siz)
-{
- wchar_t *d = dst;
- _CONST wchar_t *s = src;
- size_t n = siz;
- size_t dlen;
-
- /* Find the end of dst and adjust bytes left but don't go past end */
- while (*d != '\0' && n-- != 0)
- d++;
- dlen = d - dst;
- n = siz - dlen;
-
- if (n == 0)
- return (dlen + wcslen (s));
- while (*s != '\0')
- {
- if (n != 1)
- {
- *d++ = *s;
- n--;
- }
- s++;
- }
- *d = '\0';
-
- return (dlen + (s - src)); /* count does not include NUL */
-}
diff --git a/newlib/libc/string/wcslcpy.c b/newlib/libc/string/wcslcpy.c
deleted file mode 100644
index 21c030b38..000000000
--- a/newlib/libc/string/wcslcpy.c
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
-FUNCTION
- <<wcslcpy>>---copy a wide-character string to specified length
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- size_t wcslcpy(wchar_t *<[dst]>, const wchar_t *<[src]>, size_t <[siz]>);
-
-TRAD_SYNOPSIS
- #include <wchar.h>
- size_t wcslcpy(<[dst]>, <[src]>, <[siz]>)
- wchar_t *<[dst]>;
- const wchar_t *<[src]>;
- size_t <[siz]>;
-
-DESCRIPTION
- <<wcslcpy>> copies wide characters from <[src]> to <[dst]>
- such that up to <[siz]> - 1 characters are copied. A
- terminating null is appended to the result, unless <[siz]>
- is zero.
-
-RETURNS
- <<wcslcpy>> returns the number of wide characters in <[src]>,
- not including the terminating null wide character. If the
- return value is greater than or equal to <[siz]>, then
- not all wide characters were copied from <[src]> and truncation
- occurred.
-
-PORTABILITY
-No supporting OS subroutines are required.
-*/
-
-/* $NetBSD: wcslcpy.c,v 1.1 2000/12/23 23:14:36 itojun Exp $ */
-/* from OpenBSD: strlcpy.c,v 1.4 1999/05/01 18:56:41 millert Exp */
-
-/*
- * Copyright (c) 1998 Todd C. Miller <Todd.Miller@courtesan.com>
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. The name of the author may not be used to endorse or promote products
- * derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
- * THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
- * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
- * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
- * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include <_ansi.h>
-#include <wchar.h>
-
-/*
- * Copy src to string dst of size siz. At most siz-1 characters
- * will be copied. Always NUL terminates (unless siz == 0).
- * Returns wcslen(src); if retval >= siz, truncation occurred.
- */
-size_t
-_DEFUN (wcslcpy, (dst, src, siz),
- wchar_t * dst _AND
- _CONST wchar_t * src _AND
- size_t siz)
-{
- wchar_t *d = dst;
- _CONST wchar_t *s = src;
- size_t n = siz;
-
- /* Copy as many bytes as will fit */
- if (n != 0 && --n != 0)
- {
- do
- {
- if ((*d++ = *s++) == 0)
- break;
- }
- while (--n != 0);
- }
-
- /* Not enough room in dst, add NUL and traverse rest of src */
- if (n == 0)
- {
- if (siz != 0)
- *d = '\0'; /* NUL-terminate dst */
- while (*s++)
- ;
- }
-
- return (s - src - 1); /* count does not include NUL */
-}
diff --git a/newlib/libc/string/wcslen.c b/newlib/libc/string/wcslen.c
deleted file mode 100644
index d671551af..000000000
--- a/newlib/libc/string/wcslen.c
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
-FUNCTION
- <<wcslen>>---get wide-character string length
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- size_t wcslen(const wchar_t *<[s]>);
-
-TRAD_SYNOPSIS
- size_t wcslen(<[s]>
- const wchar_t *<[s]>;
-
-DESCRIPTION
- The <<wcslen>> function computes the number of wide-character codes
- in the wide-character string to which <[s]> points, not including the
- terminating null wide-character code.
-
-RETURNS
- The <<wcslen>> function returns the length of <[s]>; no return value is
- reserved to indicate an error.
-
-PORTABILITY
-<<wcslen>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
-No supporting OS subroutines are required.
-*/
-
-/* $NetBSD: wcslen.c,v 1.1 2000/12/23 23:14:36 itojun Exp $ */
-
-/*-
- * Copyright (c)1999 Citrus Project,
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * citrus Id: wcslen.c,v 1.1 1999/12/29 21:47:45 tshiozak Exp
- */
-
-#include <_ansi.h>
-#include <wchar.h>
-
-size_t
-_DEFUN (wcslen, (s),
- _CONST wchar_t * s)
-{
- _CONST wchar_t *p;
-
- p = s;
- while (*p)
- p++;
-
- return p - s;
-}
diff --git a/newlib/libc/string/wcsncat.c b/newlib/libc/string/wcsncat.c
deleted file mode 100644
index fd77c0cc8..000000000
--- a/newlib/libc/string/wcsncat.c
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
-FUNCTION
- <<wcsncat>>---concatenate part of two wide-character strings
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- wchar_t *wcsncat(wchar_t *<[s1]>, const wchar_t *<[s2]>, size_t <[n]>);
-
-TRAD_SYNOPSIS
- wchar_t *wcsncat(<[s1]>, <[s2]>, <[n]>
- wchar_t *<[s1]>;
- const wchar_t *<[s2]>;
- size_t <[n]>;
-
-DESCRIPTION
- The <<wcsncat>> function appends not more than <[n]> wide-character
- codes (a null wide-character code and wide-character codes that follow
- it are not appended) from the array pointed to by <[s2]> to the end of
- the wide-character string pointed to by <[s1]>. The initial
- wide-character code of <[s2]> overwrites the null wide-character code
- at the end of <[s1]>.
- A terminating null wide-character code is always appended to the result.
- If copying takes place between objects that overlap, the behaviour is
- undefined.
-
-RETURNS
- The <<wcsncat>> function returns <[s1]>; no return value is reserved to
- indicate an error.
-
-PORTABILITY
-<<wcsncat>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
-No supporting OS subroutines are required.
-*/
-
-/* $NetBSD: wcsncat.c,v 1.1 2000/12/23 23:14:36 itojun Exp $ */
-
-/*-
- * Copyright (c)1999 Citrus Project,
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * citrus Id: wcsncat.c,v 1.1 1999/12/29 21:47:45 tshiozak Exp
- */
-
-#include <_ansi.h>
-#include <wchar.h>
-
-wchar_t *
-_DEFUN (wcsncat, (s1, s2, n),
- wchar_t * s1 _AND
- _CONST wchar_t * s2 _AND
- size_t n)
-{
- wchar_t *p;
- wchar_t *q;
- _CONST wchar_t *r;
-
- p = s1;
- while (*p)
- p++;
- q = p;
- r = s2;
- while (*r && n)
- {
- *q++ = *r++;
- n--;
- }
- *q = '\0';
- return s1;
-}
diff --git a/newlib/libc/string/wcsncmp.c b/newlib/libc/string/wcsncmp.c
deleted file mode 100644
index 1897f5c4e..000000000
--- a/newlib/libc/string/wcsncmp.c
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
-FUNCTION
- <<wcsncmp>>---compare part of two wide-character strings
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- int wcsncmp(const wchar_t *<[s1]>, const wchar_t *<[s2]>, size_t <[n]>);
-
-TRAD_SYNOPSIS
- int wcsncmp(<[s1]>, <[s2]>, <[n]>
- const wchar_t *<[s1]>;
- const wchar_t *<[s2]>;
- size_t <[n]>;
-
-DESCRIPTION
- The <<wcsncmp>> function compares not more than <[n]> wide-character
- codes (wide-character codes that follow a null wide-character code are
- not compared) from the array pointed to by <[s1]> to the array pointed
- to by <[s2]>.
-
- The sign of a non-zero return value is determined by the sign of the
- difference between the values of the first pair of wide-character codes
- that differ in the objects being compared.
-
-RETURNS
- Upon successful completion, <<wcsncmp>> returns an integer greater than,
- equal to or less than 0, if the possibly null-terminated array pointed
- to by <[s1]> is greater than, equal to or less than the possibly
- null-terminated array pointed to by <[s2]> respectively.
-
-PORTABILITY
-<<wcsncmp>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
-No supporting OS subroutines are required.
-*/
-
-/* $NetBSD$ */
-
-/*
- * Copyright (c) 1989, 1993
- * The Regents of the University of California. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include <_ansi.h>
-#include <wchar.h>
-
-int
-_DEFUN (wcsncmp, (s1, s2, n),
- _CONST wchar_t * s1 _AND
- _CONST wchar_t * s2 _AND
- size_t n)
-{
-
- if (n == 0)
- return (0);
- do
- {
- if (*s1 != *s2++)
- {
- return (*s1 - *--s2);
- }
- if (*s1++ == 0)
- break;
- }
- while (--n != 0);
- return (0);
-}
diff --git a/newlib/libc/string/wcsncpy.c b/newlib/libc/string/wcsncpy.c
deleted file mode 100644
index b53e9c332..000000000
--- a/newlib/libc/string/wcsncpy.c
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
-FUNCTION
- <<wcsncpy>>---copy part of a wide-character string
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- wchar_t *wcsncpy(wchar_t *<[s1]>, const wchar_t *<[s2]>, size_t <[n]>);
-
-TRAD_SYNOPSIS
- wchar_t *wcsncpy(<[s1]>, <[s2]>, <[n]>
- wchar_t *<[s1]>;
- const wchar_t *<[s2]>;
- size_t <[n]>;
-
-DESCRIPTION
- The <<wcsncpy>> function copies not more than n wide-character codes
- (wide-character codes that follow a null wide-character code are not
- copied) from the array pointed to by <[s2]> to the array pointed to
- by <[s1]>. If copying takes place between objects that overlap, the
- behaviour is undefined.
-
- If the array pointed to by <[s2]> is a wide-character string that is
- shorter than <[n]> wide-character codes, null wide-character codes are
- appended to the copy in the array pointed to by <[s1]>, until <[n]>
- wide-character codes in all are written.
-
-RETURNS
- The <<wcsncpy>> function returns <[s1]>; no return value is reserved to
- indicate an error.
-
-PORTABILITY
-<<wcsncpy>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
-No supporting OS subroutines are required.
-*/
-
-/* $NetBSD: wcsncpy.c,v 1.1 2000/12/23 23:14:36 itojun Exp $ */
-
-/*-
- * Copyright (c)1999 Citrus Project,
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * citrus Id: wcsncpy.c,v 1.1 1999/12/29 21:47:45 tshiozak Exp
- */
-
-#include <_ansi.h>
-#include <wchar.h>
-
-wchar_t *
-_DEFUN (wcsncpy, (s1, s2, n),
- wchar_t * s1 _AND
- _CONST wchar_t * s2 _AND
- size_t n)
-{
- wchar_t *p;
- _CONST wchar_t *q;
-
- *s1 = '\0';
- p = s1;
- q = s2;
- while (n && *q)
- {
- *p++ = *q++;
- n--;
- }
- *p = '\0';
-
- return s1;
-}
diff --git a/newlib/libc/string/wcsnlen.c b/newlib/libc/string/wcsnlen.c
deleted file mode 100644
index 9d680d603..000000000
--- a/newlib/libc/string/wcsnlen.c
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
-FUNCTION
- <<wcsnlen>>---get fixed-size wide-character string length
-
-INDEX
- wcsnlen
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- size_t wcsnlen(const wchar_t *<[s]>, size_t <[maxlen]>);
-
-TRAD_SYNOPSIS
- #include <wchar.h>
- size_t wcsnlen(<[s]>, <[maxlen]>)
- wchar_t *<[s]>;
- size_t <[maxlen]>;
-
-DESCRIPTION
- The <<wcsnlen>> function computes the number of wide-character codes
- in the wide-character string pointed to by <[s]> not including the
- terminating L'\0' wide character but at most <[maxlen]> wide
- characters.
-
-RETURNS
- <<wcsnlen>> returns the length of <[s]> if it is less then <[maxlen]>,
- or <[maxlen]> if there is no L'\0' wide character in first <[maxlen]>
- characters.
-
-PORTABILITY
-<<wcsnlen>> is a GNU extension.
-
-<<wcsnlen>> requires no supporting OS subroutines.
-*/
-
-/*
- * Copyright (c) 2003, Artem B. Bityuckiy (dedekind@mail.ru).
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the above copyright notice,
- * this condition statement, and the following disclaimer are retained
- * in any redistributions of the source code.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include <_ansi.h>
-#include <sys/types.h>
-#include <wchar.h>
-
-size_t
-_DEFUN(wcsnlen, (s, maxlen),
- _CONST wchar_t *s _AND
- size_t maxlen)
-{
- _CONST wchar_t *p;
-
- p = s;
- while (*p && maxlen-- > 0)
- p++;
-
- return (size_t)(p - s);
-}
-
-
-
diff --git a/newlib/libc/string/wcspbrk.c b/newlib/libc/string/wcspbrk.c
deleted file mode 100644
index fbdf9e49c..000000000
--- a/newlib/libc/string/wcspbrk.c
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
-FUNCTION
- <<wcspbrk>>----scan wide-character string for a wide-character code
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- wchar_t *wcspbrk(const wchar_t *<[s]>, const wchar_t *<[set]>);
-
-TRAD_SYNOPSIS
- wchar_t *wcspbrk(<[s]>, <[set]>
- const wchar_t *<[s]>;
- const wchar_t *<[set]>;
-
-DESCRIPTION
- The <<wcspbrk>> function locates the first occurrence in the
- wide-character string pointed to by <[s]> of any wide-character code
- from the wide-character string pointed to by <[set]>.
-
-RETURNS
- Upon successful completion, <<wcspbrk>> returns a pointer to the
- wide-character code or a null pointer if no wide-character code from
- <[set]> occurs in <[s]>.
-
-PORTABILITY
-<<wcspbrk>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
-No supporting OS subroutines are required.
-*/
-
-/* $NetBSD: wcspbrk.c,v 1.1 2000/12/23 23:14:37 itojun Exp $ */
-
-/*-
- * Copyright (c)1999 Citrus Project,
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * citrus Id: wcspbrk.c,v 1.2 2000/12/21 05:07:25 itojun Exp
- */
-
-#include <_ansi.h>
-#include <stddef.h>
-#include <wchar.h>
-
-wchar_t *
-_DEFUN (wcspbrk, (s, set),
- _CONST wchar_t * s _AND
- _CONST wchar_t * set)
-{
- _CONST wchar_t *p;
- _CONST wchar_t *q;
-
- p = s;
- while (*p)
- {
- q = set;
- while (*q)
- {
- if (*p == *q)
- {
- /* LINTED interface specification */
- return (wchar_t *) p;
- }
- q++;
- }
- p++;
- }
- return NULL;
-}
diff --git a/newlib/libc/string/wcsrchr.c b/newlib/libc/string/wcsrchr.c
deleted file mode 100644
index 495d95a15..000000000
--- a/newlib/libc/string/wcsrchr.c
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
-FUNCTION
- <<wcsrchr>>---wide-character string scanning operation
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- wchar_t *wcsrchr(const wchar_t *<[s]>, wchar_t <[c]>);
-
-TRAD_SYNOPSIS
- #include <wchar.h>
- wchar_t *wcsrchr(<[s]>, <[c]>
- const wchar_t *<[s]>;
- wchar_t <[c]>;
-
-DESCRIPTION
- The <<wcsrchr>> function locates the last occurrence of <[c]> in the
- wide-character string pointed to by <[s]>. The value of <[c]> must be a
- character representable as a type wchar_t and must be a wide-character
- code corresponding to a valid character in the current locale.
- The terminating null wide-character code is considered to be part of
- the wide-character string.
-
-RETURNS
- Upon successful completion, <<wcsrchr>> returns a pointer to the
- wide-character code or a null pointer if <[c]> does not occur in the
- wide-character string.
-
-PORTABILITY
-<<wcsrchr>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
-No supporting OS subroutines are required.
-*/
-
-/* $NetBSD: wcsrchr.c,v 1.1 2000/12/23 23:14:37 itojun Exp $ */
-
-/*-
- * Copyright (c)1999 Citrus Project,
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * citrus Id: wcsrchr.c,v 1.2 2000/12/21 05:07:25 itojun Exp
- */
-
-#include <_ansi.h>
-#include <stddef.h>
-#include <wchar.h>
-
-wchar_t *
-_DEFUN (wcsrchr, (s, c),
- _CONST wchar_t * s _AND
- wchar_t c)
-{
- _CONST wchar_t *p;
-
- p = s;
- while (*p)
- p++;
- while (s <= p)
- {
- if (*p == c)
- {
- /* LINTED interface specification */
- return (wchar_t *) p;
- }
- p--;
- }
- return NULL;
-}
diff --git a/newlib/libc/string/wcsspn.c b/newlib/libc/string/wcsspn.c
deleted file mode 100644
index e83f42f4f..000000000
--- a/newlib/libc/string/wcsspn.c
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
-FUNCTION
- <<wcsspn>>---get length of a wide substring
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- size_t wcsspn(const wchar_t *<[s]>, const wchar_t *<[set]>);
-
-TRAD_SYNOPSIS
- size_t wcsspn(<[s]>, <[set]>
- const wchar_t *<[s]>;
- const wchar_t *<[set]>;
-
-DESCRIPTION
- The <<wcsspn>> function computes the length of the maximum initial
- segment of the wide-character string pointed to by <[s]> which consists
- entirely of wide-character codes from the wide-character string
- pointed to by <[set]>.
-
-RETURNS
- The wcsspn() function returns the length <[s1]>; no return value is
- reserved to indicate an error.
-
-PORTABILITY
-<<wcsspn>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
-No supporting OS subroutines are required.
-*/
-
-/* $NetBSD: wcsspn.c,v 1.1 2000/12/23 23:14:37 itojun Exp $ */
-
-/*-
- * Copyright (c)1999 Citrus Project,
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * citrus Id: wcsspn.c,v 1.1 1999/12/29 21:47:45 tshiozak Exp
- */
-
-#include <_ansi.h>
-#include <wchar.h>
-
-size_t
-_DEFUN (wcsspn, (s, set),
- _CONST wchar_t * s _AND
- _CONST wchar_t * set)
-{
- _CONST wchar_t *p;
- _CONST wchar_t *q;
-
- p = s;
- while (*p)
- {
- q = set;
- while (*q)
- {
- if (*p == *q)
- break;
- q++;
- }
- if (!*q)
- goto done;
- p++;
- }
-
-done:
- return (p - s);
-}
diff --git a/newlib/libc/string/wcsstr.c b/newlib/libc/string/wcsstr.c
deleted file mode 100644
index 0b00396ea..000000000
--- a/newlib/libc/string/wcsstr.c
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
-FUNCTION
- <<wcsstr>>---find a wide-character substring
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- wchar_t *wcsstr(const wchar_t *<[big]>, const wchar_t *<[little]>);
-
-TRAD_SYNOPSIS
- wchar_t *wcsstr(<[big]>, <[little]>
- const wchar_t *<[big]>;
- const wchar_t *<[little]>;
-
-DESCRIPTION
- The <<wcsstr>> function locates the first occurrence in the
- wide-character string pointed to by <[big]> of the sequence of
- wide characters (excluding the terminating null wide character) in the
- wide-character string pointed to by <[little]>.
-
-RETURNS
- On successful completion, <<wcsstr>> returns a pointer to the located
- wide-character string, or a null pointer if the wide-character string
- is not found.
-
- If <[little]> points to a wide-character string with zero length,
- the function returns <[big]>.
-
-PORTABILITY
-<<wcsstr>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
-*/
-
-/* $NetBSD: wcsstr.c,v 1.1 2000/12/23 23:14:37 itojun Exp $ */
-
-/*-
- * Copyright (c)1999 Citrus Project,
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * citrus Id: wcsstr.c,v 1.2 2000/12/21 05:07:25 itojun Exp
- */
-
-#include <_ansi.h>
-#include <stddef.h>
-#include <wchar.h>
-
-wchar_t *
-_DEFUN (wcsstr, (big, little),
- _CONST wchar_t * big _AND
- _CONST wchar_t * little)
-{
- _CONST wchar_t *p;
- _CONST wchar_t *q;
- _CONST wchar_t *r;
-
- if (!*little)
- {
- /* LINTED interface specification */
- return (wchar_t *) big;
- }
- if (wcslen (big) < wcslen (little))
- return NULL;
-
- p = big;
- q = little;
- while (*p)
- {
- q = little;
- r = p;
- while (*q)
- {
- if (*r != *q)
- break;
- q++;
- r++;
- }
- if (!*q)
- {
- /* LINTED interface specification */
- return (wchar_t *) p;
- }
- p++;
- }
- return NULL;
-}
diff --git a/newlib/libc/string/wcstok.c b/newlib/libc/string/wcstok.c
deleted file mode 100644
index de38d3a55..000000000
--- a/newlib/libc/string/wcstok.c
+++ /dev/null
@@ -1,181 +0,0 @@
-/*
-FUNCTION
- <<wcstok>>---get next token from a string
-
-INDEX
- wcstok
-
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- wchar_t *wcstok(wchar_t *<[source]>, const wchar_t *<[delimiters]>,
- wchar_t **<[lasts]>)
-
-TRAD_SYNOPSIS
- #include <wchar.h>
- wchar_t *wcstok(<[source]>, <[delimiters]>, <[lasts]>)
- wchar_t *<[source]>;
- wchar_t *<[delimiters]>;
- wchar_t **<[lasts]>;
-
-DESCRIPTION
- The <<wcstok>> function is the wide-character equivalent of the
- <<strtok_r>> function (which in turn is the same as the <<strtok>>
- function with an added argument to make it thread-safe).
-
- The <<wcstok>> function is used to isolate (one at a time)
- sequential tokens in a null-terminated wide-character string,
- <<*<[source]>>>. A token is defined as a substring not containing
- any wide-characters from <<*<[delimiters]>>>.
-
- The first time that <<wcstok>> is called, <<*<[source]>>> should
- be specified with the wide-character string to be searched, and
- <<*<[lasts]>>>--but not <<lasts>>, which must be non-NULL--may be
- random; subsequent calls, wishing to obtain further tokens from
- the same string, should pass a null pointer for <<*<[source]>>>
- instead but must supply <<*<[lasts]>>> unchanged from the last
- call. The separator wide-character string, <<*<[delimiters]>>>,
- must be supplied each time and may change between calls.
- A pointer to placeholder <<*<[lasts]>>> must be supplied by
- the caller, and is set each time as needed to save the state
- by <<wcstok>>. Every call to <<wcstok>> with <<*<[source]>>>
- == <<NULL>> must pass the value of <<*<[lasts]>>> as last set
- by <<wcstok>>.
-
- The <<wcstok>> function returns a pointer to the beginning of each
- subsequent token in the string, after replacing the separator
- wide-character itself with a null wide-character. When no more tokens
- remain, a null pointer is returned.
-
-RETURNS
- <<wcstok>> returns a pointer to the first wide character of a token, or
- <<NULL>> if there is no token.
-
-NOTES
- <<wcstok>> is thread-safe (unlike <<strtok>>, but like <<strtok_r>>).
- <<wcstok>> writes into the string being searched.
-
-PORTABILITY
-<<wcstok>> is C99 and POSIX.1-2001.
-
-<<wcstok>> requires no supporting OS subroutines.
-
-QUICKREF
- strtok ansi pure
-*/
-/* wcstok for Newlib created by adapting strtok_r, 2008. */
-/*
- * Copyright (c) 1988 Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include <wchar.h>
-
-wchar_t *
-_DEFUN (wcstok, (s, delim, lasts),
- register wchar_t *s _AND
- register const wchar_t *delim _AND
- wchar_t **lasts)
-{
- register const wchar_t *spanp;
- register int c, sc;
- wchar_t *tok;
-
-
- if (s == NULL && (s = *lasts) == NULL)
- return (NULL);
-
- /*
- * Skip (span) leading delimiters (s += wcsspn(s, delim), sort of).
- */
-cont:
- c = *s++;
- for (spanp = delim; (sc = *spanp++) != L'\0';) {
- if (c == sc) goto cont;
- }
-
- if (c == L'\0') { /* no non-delimiter characters */
- *lasts = NULL;
- return (NULL);
- }
- tok = s - 1;
-
- /*
- * Scan token (scan for delimiters: s += wcscspn(s, delim), sort of).
- * Note that delim must have one NUL; we stop if we see that, too.
- */
- for (;;) {
- c = *s++;
- spanp = delim;
- do {
- if ((sc = *spanp++) == c) {
- if (c == L'\0')
- s = NULL;
- else
- s[-1] = L'\0';
- *lasts = s;
- return (tok);
- }
- } while (sc != L'\0');
- }
- /* NOTREACHED */
-}
-
-/* The remainder of this file can serve as a regression test. Compile
- * with -D_REGRESSION_TEST. */
-#if defined(_REGRESSION_TEST) /* [Test code: example from C99 standard */
-#include <stdio.h>
-#include <wchar.h>
-
-/* example from C99 standard with minor additions to be a test */
-int
-main(void)
-{
-int errs=0;
-static wchar_t str1[] = L"?a???b,,,#c";
-static wchar_t str2[] = L"\t \t";
-wchar_t *t, *ptr1, *ptr2;
-
-t = wcstok(str1, L"?", &ptr1); // t points to the token L"a"
-if(wcscmp(t,L"a")) errs++;
-t = wcstok(NULL, L",", &ptr1); // t points to the token L"??b"
-if(wcscmp(t,L"??b")) errs++;
-t = wcstok(str2, L" \t", &ptr2); // t is a null pointer
-if(t != NULL) errs++;
-t = wcstok(NULL, L"#,", &ptr1); // t points to the token L"c"
-if(wcscmp(t,L"c")) errs++;
-t = wcstok(NULL, L"?", &ptr1); // t is a null pointer
-if(t != NULL) errs++;
-
-printf("wcstok() test ");
-if(errs) printf("FAILED %d test cases", errs);
- else printf("passed");
-printf(".\n");
-
-return(errs);
-}
-#endif /* defined(_REGRESSION_TEST) ] */
diff --git a/newlib/libc/string/wcstrings.tex b/newlib/libc/string/wcstrings.tex
deleted file mode 100644
index 298d2bc71..000000000
--- a/newlib/libc/string/wcstrings.tex
+++ /dev/null
@@ -1,122 +0,0 @@
-@node Wchar strings
-@chapter Wide Character Strings (@file{wchar.h})
-
-This chapter describes wide-character string-handling functions and
-managing areas of memory containing wide characters. The corresponding
-declarations are in @file{wchar.h}.
-
-@menu
-* wmemchr:: Find wide character in memory
-* wmemcmp:: Compare two wide-character memory areas
-* wmemcpy:: Copy wide-character memory regions
-* wmemmove:: Move possibly overlapping wide-character memory
-* wmemset:: Set an area of memory to a specified wide character
-* wcscat:: Concatenate wide-character strings
-* wcschr:: Search for wide character in string
-* wcscmp:: Wide-character string compare
-* wcscoll:: Locale-specific wide-character string compare
-* wcscpy:: Copy wide-character string
-* wcpcpy:: Copy a wide-character string returning a pointer to its end
-* wcscspn:: Count wide characters not in string
-* wcslcat:: Concatenate wide-character strings to specified length
-* wcslcpy:: Copy wide-character string to specified length
-* wcslen:: Wide-character string length
-* wcsncat:: Concatenate wide-character strings
-* wcsncmp:: Wide-character string compare
-* wcsncpy:: Counted copy wide-character string
-* wcpncpy:: Copy part of a wide-character string returning a pointer to its end
-* wcsnlen:: Wide-character string length with maximum limit
-* wcspbrk:: Find wide characters in string
-* wcsrchr:: Reverse search for wide character in string
-* wcsspn:: Find initial match in wide-character string
-* wcsstr:: Find wide-character string segment
-* wcstok:: Tokenize wide-character string
-* wcswidth:: Number of column positions of a wide-character string
-* wcsxfrm:: Locale-specific wide-character string transformation
-* wcwidth:: Number of column positions of a wide-character code
-@end menu
-
-@page
-@include string/wmemchr.def
-
-@page
-@include string/wmemcmp.def
-
-@page
-@include string/wmemcpy.def
-
-@page
-@include string/wmemmove.def
-
-@page
-@include string/wmemset.def
-
-@page
-@include string/wcscat.def
-
-@page
-@include string/wcschr.def
-
-@page
-@include string/wcscmp.def
-
-@page
-@include string/wcscoll.def
-
-@page
-@include string/wcscpy.def
-
-@page
-@include string/wcpcpy.def
-
-@page
-@include string/wcscspn.def
-
-@page
-@include string/wcslcat.def
-
-@page
-@include string/wcslcpy.def
-
-@page
-@include string/wcslen.def
-
-@page
-@include string/wcsncat.def
-
-@page
-@include string/wcsncmp.def
-
-@page
-@include string/wcsncpy.def
-
-@page
-@include string/wcpncpy.def
-
-@page
-@include string/wcsnlen.def
-
-@page
-@include string/wcspbrk.def
-
-@page
-@include string/wcsrchr.def
-
-@page
-@include string/wcsspn.def
-
-@page
-@include string/wcsstr.def
-
-@page
-@include string/wcstok.def
-
-@page
-@include string/wcswidth.def
-
-@page
-@include string/wcsxfrm.def
-
-@page
-@include string/wcwidth.def
-
diff --git a/newlib/libc/string/wcswidth.c b/newlib/libc/string/wcswidth.c
deleted file mode 100644
index 8a9670eb1..000000000
--- a/newlib/libc/string/wcswidth.c
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
-FUNCTION
- <<wcswidth>>---number of column positions of a wide-character string
-
-INDEX
- wcswidth
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- int wcswidth(const wchar_t *<[pwcs]>, size_t <[n]>);
-
-TRAD_SYNOPSIS
- #include <wchar.h>
- int wcswidth(<[pwcs]>, <[n]>)
- wchar_t *<[wc]>;
- size_t <[n]>;
-
-DESCRIPTION
- The <<wcswidth>> function shall determine the number of column
- positions required for <[n]> wide-character codes (or fewer than <[n]>
- wide-character codes if a null wide-character code is encountered
- before <[n]> wide-character codes are exhausted) in the string pointed
- to by <[pwcs]>.
-
-RETURNS
- The <<wcswidth>> function either shall return 0 (if <[pwcs]> points to a
- null wide-character code), or return the number of column positions
- to be occupied by the wide-character string pointed to by <[pwcs]>, or
- return -1 (if any of the first <[n]> wide-character codes in the
- wide-character string pointed to by <[pwcs]> is not a printable
- wide-character code).
-
-PORTABILITY
-<<wcswidth>> has been introduced in the Single UNIX Specification Volume 2.
-<<wcswidth>> has been marked as an extension in the Single UNIX Specification Volume 3.
-*/
-
-#include <_ansi.h>
-#include <wchar.h>
-
-int
-_DEFUN (wcswidth, (pwcs, n),
- _CONST wchar_t *pwcs _AND
- size_t n)
-
-{
- int w, len = 0;
- if (!pwcs || n == 0)
- return 0;
- do {
- if ((w = wcwidth (*pwcs)) < 0)
- return -1;
- len += w;
- } while (*pwcs++ && --n > 0);
- return len;
-}
diff --git a/newlib/libc/string/wcsxfrm.c b/newlib/libc/string/wcsxfrm.c
deleted file mode 100644
index 439bdd036..000000000
--- a/newlib/libc/string/wcsxfrm.c
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
-FUNCTION
- <<wcsxfrm>>---locale-specific wide-character string transformation
-
-INDEX
- wcsxfrm
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- int wcsxfrm(wchar_t *<[stra]>, const wchar_t * <[strb]>, size_t <[n]>);
-
-TRAD_SYNOPSIS
- #include <wchar.h>
- size_t wcsxfrm(<[stra]>, <[strb]>, <[n]>)
- wchar_t *<[stra]>;
- wchar_t *<[strb]>;
- size_t <[n]>
-
-DESCRIPTION
- <<wcsxfrm>> transforms the wide-character string pointed to by
- <[strb]> to the wide-character string pointed to by <[stra]>,
- Comparing two transformed wide strings with <<wcscmp>> should return
- the same result as comparing the original strings with <<wcscoll>>.
- No more than <[n]> wide characters are transformed, including the
- trailing null character.
-
- If <[n]> is 0, <[stra]> may be a NULL pointer.
-
- The current implementation of <<wcsxfrm>> simply uses <<wcslcpy>>
- and does not support any language-specific transformations.
-
-RETURNS
- <<wcsxfrm>> returns the length of the transformed wide character
- string. if the return value is greater or equal to <[n]>, the
- content of <[stra]> is undefined.
-
-PORTABILITY
-<<wcsxfrm>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-*/
-
-#include <_ansi.h>
-#include <wchar.h>
-
-size_t
-_DEFUN (wcsxfrm, (a, b, n),
- wchar_t *a _AND
- _CONST wchar_t *b _AND
- size_t n)
-
-{
- return wcslcpy (a, b, n);
-}
diff --git a/newlib/libc/string/wcwidth.c b/newlib/libc/string/wcwidth.c
deleted file mode 100644
index d886b4aca..000000000
--- a/newlib/libc/string/wcwidth.c
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
-FUNCTION
- <<wcwidth>>---number of column positions of a wide-character code
-
-INDEX
- wcwidth
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- int wcwidth(const wchar_t <[wc]>);
-
-TRAD_SYNOPSIS
- #include <wchar.h>
- int wcwidth(<[wc]>)
- wchar_t *<[wc]>;
-
-DESCRIPTION
- The <<wcwidth>> function shall determine the number of column
- positions required for the wide character <[wc]>. The application
- shall ensure that the value of <[wc]> is a character representable
- as a wchar_t, and is a wide-character code corresponding to a
- valid character in the current locale.
-
-RETURNS
- The <<wcwidth>> function shall either return 0 (if <[wc]> is a null
- wide-character code), or return the number of column positions to
- be occupied by the wide-character code <[wc]>, or return -1 (if <[wc]>
- does not correspond to a printable wide-character code).
-
- The current implementation of <<wcwidth>> simply sets the width
- of all printable characters to 1 since newlib has no character
- tables around.
-
-PORTABILITY
-<<wcwidth>> has been introduced in the Single UNIX Specification Volume 2.
-<<wcwidth>> has been marked as an extension in the Single UNIX Specification Volume 3.
-*/
-
-#include <_ansi.h>
-#include <wchar.h>
-#include <wctype.h>
-
-int
-_DEFUN (wcwidth, (wc),
- _CONST wchar_t wc)
-
-{
- if (iswprint (wc))
- return 1;
- if (iswcntrl (wc) || wc == L'\0')
- return 0;
- return -1;
-}
diff --git a/newlib/libc/string/wmemchr.c b/newlib/libc/string/wmemchr.c
deleted file mode 100644
index b582b8948..000000000
--- a/newlib/libc/string/wmemchr.c
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
-FUNCTION
- <<wmemchr>>---find a wide character in memory
-
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- wchar_t *wmemchr(const wchar_t *<[s]>, wchar_t <[c]>, size_t <[n]>);
-
-TRAD_SYNOPSIS
- wchar_t *wmemchr(<[s]>, <[c]>, <[n]>
- const wchar_t *<[s]>;
- wchar_t <[c]>;
- size_t <[n]>;
-
-DESCRIPTION
- The <<wmemchr>> function locates the first occurrence of <[c]> in the
- initial <[n]> wide characters of the object pointed to be <[s]>. This
- function is not affected by locale and all wchar_t values are treated
- identically. The null wide character and wchar_t values not
- corresponding to valid characters are not treated specially.
-
- If <[n]> is zero, <[s]> must be a valid pointer and the function
- behaves as if no valid occurrence of <[c]> is found.
-
-RETURNS
- The <<wmemchr>> function returns a pointer to the located
- wide character, or a null pointer if the wide character does not occur
- in the object.
-
-PORTABILITY
-<<wmemchr>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
-No supporting OS subroutines are required.
-*/
-
-/* $NetBSD: wmemchr.c,v 1.1 2000/12/23 23:14:37 itojun Exp $ */
-
-/*-
- * Copyright (c)1999 Citrus Project,
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * citrus Id: wmemchr.c,v 1.2 2000/12/20 14:08:31 itojun Exp
- */
-
-
-#include <_ansi.h>
-#include <wchar.h>
-
-wchar_t *
-_DEFUN (wmemchr, (s, c, n),
- _CONST wchar_t * s _AND
- wchar_t c _AND
- size_t n)
-{
- size_t i;
-
- for (i = 0; i < n; i++)
- {
- if (*s == c)
- {
- /* LINTED const castaway */
- return (wchar_t *) s;
- }
- s++;
- }
- return NULL;
-}
diff --git a/newlib/libc/string/wmemcmp.c b/newlib/libc/string/wmemcmp.c
deleted file mode 100644
index af9ee3207..000000000
--- a/newlib/libc/string/wmemcmp.c
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
-FUNCTION
- <<wmemcmp>>---compare wide characters in memory
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- int wmemcmp(const wchar_t *<[s1]>, const wchar_t *<[s2]>, size_t <[n]>);
-
-TRAD_SYNOPSIS
- int wmemcmp(<[s1]>, <[s2]>, <[n]>
- const wchar_t *<[s1]>;
- const wchar_t *<[s2]>;
- size_t <[n]>;
-
-DESCRIPTION
- The <<wmemcmp>> function compares the first <[n]> wide characters of the
- object pointed to by <[s1]> to the first <[n]> wide characters of the
- object pointed to by <[s2]>. This function is not affected by locale
- and all wchar_t values are treated identically. The null wide character
- and wchar_t values not corresponding to valid characters are not treated
- specially.
-
- If <[n]> is zero, <[s1]> and <[s2]> must be a valid pointers and the
- function behaves as if the two objects compare equal.
-
-RETURNS
- The <<wmemcmp>> function returns an integer greater than, equal to,
- or less than zero, accordingly as the object pointed to by <[s1]> is
- greater than, equal to, or less than the object pointed to by <[s2]>.
-
-PORTABILITY
-<<wmemcmp>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
-No supporting OS subroutines are required.
-*/
-
-/* $NetBSD: wmemcmp.c,v 1.1 2000/12/23 23:14:37 itojun Exp $ */
-
-/*-
- * Copyright (c)1999 Citrus Project,
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * citrus Id: wmemcmp.c,v 1.2 2000/12/20 14:08:31 itojun Exp
- */
-
-#include <_ansi.h>
-#include <wchar.h>
-
-int
-_DEFUN (wmemcmp, (s1, s2, n),
- _CONST wchar_t * s1 _AND
- _CONST wchar_t * s2 _AND
- size_t n)
-{
- size_t i;
-
- for (i = 0; i < n; i++)
- {
- if (*s1 != *s2)
- {
- /* wchar might be unsigned */
- return *s1 > *s2 ? 1 : -1;
- }
- s1++;
- s2++;
- }
- return 0;
-}
diff --git a/newlib/libc/string/wmemcpy.c b/newlib/libc/string/wmemcpy.c
deleted file mode 100644
index 748e8e196..000000000
--- a/newlib/libc/string/wmemcpy.c
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
-FUNCTION
- <<wmemcpy>>---copy wide characters in memory
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- wchar_t *wmemcpy(wchar_t *<[d]>, const wchar_t *<[s]>, size_t <[n]>);
-
-TRAD_SYNOPSIS
- wchar_t *wmemcpy(<[d]>, <[s]>, <[n]>
- wchar_t *<[d]>;
- const wchar_t *<[s]>;
- size_t <[n]>;
-
-DESCRIPTION
- The <<wmemcpy>> function copies <[n]> wide characters from the object
- pointed to by <[s]> to the object pointed to be <[d]>. This function
- is not affected by locale and all wchar_t values are treated
- identically. The null wide character and wchar_t values not
- corresponding to valid characters are not treated specially.
-
- If <[n]> is zero, <[d]> and <[s]> must be a valid pointers, and the
- function copies zero wide characters.
-
-RETURNS
- The <<wmemcpy>> function returns the value of <[d]>.
-
-PORTABILITY
-<<wmemcpy>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
-No supporting OS subroutines are required.
-*/
-
-/* $NetBSD: wmemcpy.c,v 1.1 2000/12/23 23:14:37 itojun Exp $ */
-
-/*-
- * Copyright (c)1999 Citrus Project,
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * citrus Id: wmemcpy.c,v 1.2 2000/12/20 14:08:31 itojun Exp
- */
-
-#include <_ansi.h>
-#include <string.h>
-#include <wchar.h>
-
-wchar_t *
-_DEFUN (wmemcpy, (d, s, n),
- wchar_t * d _AND
- _CONST wchar_t * s _AND
- size_t n)
-{
-
- return (wchar_t *) memcpy (d, s, n * sizeof (wchar_t));
-}
diff --git a/newlib/libc/string/wmemmove.c b/newlib/libc/string/wmemmove.c
deleted file mode 100644
index e20a26ae9..000000000
--- a/newlib/libc/string/wmemmove.c
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
-FUNCTION
- <<wmemmove>>---copy wide characters in memory with overlapping areas
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- wchar_t *wmemmove(wchar_t *<[d]>, const wchar_t *<[s]>, size_t <[n]>);
-
-TRAD_SYNOPSIS
- wchar_t *wmemmove(<[d]>, <[s]>, <[n]>
- wchar_t *<[d]>;
- const wchar_t *<[s]>;
- size_t <[n]>;
-
-DESCRIPTION
- The <<wmemmove>> function copies <[n]> wide characters from the object
- pointed to by <[s]> to the object pointed to by <[d]>. Copying takes
- place as if the <[n]> wide characters from the object pointed to by
- <[s]> are first copied into a temporary array of <[n]> wide characters
- that does not overlap the objects pointed to by <[d]> or <[s]>, and then
- the <[n]> wide characters from the temporary array are copied into the
- object pointed to by <[d]>.
-
- This function is not affected by locale and all wchar_t values are
- treated identically. The null wide character and wchar_t values not
- corresponding to valid characters are not treated specially.
-
- If <[n]> is zero, <[d]> and <[s]> must be a valid pointers, and the
- function copies zero wide characters.
-
-RETURNS
- The <<wmemmove>> function returns the value of <[d]>.
-
-PORTABILITY
-<<wmemmove>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
-No supporting OS subroutines are required.
-*/
-
-/* $NetBSD: wmemmove.c,v 1.1 2000/12/23 23:14:37 itojun Exp $ */
-
-/*-
- * Copyright (c)1999 Citrus Project,
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * citrus Id: wmemmove.c,v 1.2 2000/12/20 14:08:31 itojun Exp
- */
-
-#include <_ansi.h>
-#include <string.h>
-#include <wchar.h>
-
-wchar_t *
-_DEFUN (wmemmove, (d, s, n),
- wchar_t * d _AND
- _CONST wchar_t * s _AND
- size_t n)
-{
-
- return (wchar_t *) memmove (d, s, n * sizeof (wchar_t));
-}
diff --git a/newlib/libc/string/wmemset.c b/newlib/libc/string/wmemset.c
deleted file mode 100644
index 0af6f91d5..000000000
--- a/newlib/libc/string/wmemset.c
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
-FUNCTION
- <<wmemset>>---set wide characters in memory
-
-ANSI_SYNOPSIS
- #include <wchar.h>
- wchar_t *wmemset(wchar_t *<[s]>, wchar_t <[c]>, size_t <[n]>);
-
-TRAD_SYNOPSIS
- wchar_t *wmemset(<[s]>, <[c]>, <[n]>
- wchar_t *<[s]>;
- wchar_t <[c]>;
- size_t <[n]>;
-
-DESCRIPTION
- The <<wmemset>> function copies the value of <[c]> into each of the
- first <[n]> wide characters of the object pointed to by <[s]>. This
- function is not affected by locale and all wchar_t values are treated
- identically. The null wide character and wchar_t values not
- corresponding to valid characters are not treated specially.
-
- If <[n]> is zero, <[s]> must be a valid pointer and the function
- copies zero wide characters.
-
-RETURNS
- The <<wmemset>> function returns the value of <[s]>.
-
-PORTABILITY
-<<wmemset>> is ISO/IEC 9899/AMD1:1995 (ISO C).
-
-No supporting OS subroutines are required.
-*/
-
-/* $NetBSD: wmemset.c,v 1.1 2000/12/23 23:14:37 itojun Exp $ */
-
-/*-
- * Copyright (c)1999 Citrus Project,
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * citrus Id: wmemset.c,v 1.2 2000/12/20 14:08:31 itojun Exp
- */
-
-#include <_ansi.h>
-#include <wchar.h>
-
-wchar_t *
-_DEFUN(wmemset, (s, c, n),
- wchar_t *s _AND
- wchar_t c _AND
- size_t n)
-{
- size_t i;
- wchar_t *p;
-
- p = (wchar_t *)s;
- for (i = 0; i < n; i++) {
- *p = c;
- p++;
- }
- return s;
-}