summaryrefslogtreecommitdiff
path: root/include/string.h
AgeCommit message (Collapse)Author
2021-02-19string.h: Make strdup() available if _USE_XOPEN2K8Paul Cercueil
The strdup() function is present in POSIX 2008.09. Signed-off-by: Paul Cercueil <paul@crapouillou.net>
2016-01-10Implement legacy bcopy/bzero/bcmp/index/rindex as inline functionsWaldemar Brodkorb
patch from OpenWrt. Reported-by: Leonid Lisovskiy <lly.dev@gmail.com>
2015-12-22Use gcc's __builtin_mempcpy() as __mempcpy(), if possibleWaldemar Brodkorb
Patch from OpenWrt. Reported-by: Leonid Lisovskiy <lly.dev@gmail.com>
2012-11-18drop support for pre ISO-C compilersMike Frysinger
This drops __signed, __volatile, and __const. Only the latter was used in the code base, and for uClibc, not consistently. Much of the code used plain "const" which meant "__const" was useless. Really, the point of this is to stay in sync with what glibc did. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-11-18Replace FSF snail mail address with URLsMike Frysinger
This matches a similar change made to glibc. No functional changes here. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-06-15update partially string.h and strings.hPeter S. Mazinger
Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15remove unneeded hiddens for rtime, basename, strtof* and wcstof*Peter S. Mazinger
Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2011-03-09remove unused hidden functionsPeter S. Mazinger
Signed-off-by: Peter S. Mazinger <ps.m@gmx.net>
2011-03-09memmem.c, string.h: remove unused hidden memmemPeter S. Mazinger
It is used only by gen_collate, not included into libc. Signed-off-by: Peter S. Mazinger <ps.m@gmx.net>
2011-03-09ctype.c, _collate.c, str[n]casecmp.c, strlcpy.c: remove unused hidden functionsPeter S. Mazinger
Signed-off-by: Peter S. Mazinger <ps.m@gmx.net>
2011-03-06simplify ffs* codePeter S. Mazinger
Remove __libc_ffs*, unneeded Signed-off-by: Peter S. Mazinger <ps.m@gmx.net>
2011-03-05Implement ffsl and ffsll.Bernd Schmidt
This imports and adapts ffsll.c from glibc. The same mechanism as in glibc is used to choose between ffs and ffsll to implement ffsl. The single user in libc is changed to use the hidden version __libc_ffs. Signed-off-by: Bernd Schmidt <bernds@codesourcery.com> Acked-by: Bernhard Reutner-Fischer <aldot@uclibc.org>
2009-07-21s/UCLIBC_INTERNAL/_LIBC/gDenys Vlasenko
Undo my old mistake. I added UCLIBC_INTERNAL define, but later I realized _LIBC is doing exactly the same thing. This change converts all usages of UCLIBC_INTERNAL to _LIBC, removing all instances of UCLIBC_INTERNAL. Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2009-07-20string: only include inline-asm if UCLIBC_HAS_STRING_ARCH_OPTMike Frysinger
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-07-20relocate i386 string.h to i386-specific dirMike Frysinger
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-02-08Add strverscmp() and versionsort[64]().Denis Vlasenko
By Hai Zaar (haizaar AT codefidence.com)
2008-12-17since gcc -Os hates us and does not inline string ops,Denis Vlasenko
implement inline versions of some of them. Enable only those which result roughly in the same code size as using out-or-line versions. None of this affects users, installed headers won't have any trace of it.
2008-11-20Last portion of libc_hidden_proto removal.Denis Vlasenko
Appears to build fine (several .configs tried)
2008-06-08In string.h, move libc_hidden_proto next to the corresponding declaration.Bernd Schmidt
Filter them out when installing headers. Tested by building up bfin-*linux toolchains and building our copy of uClinux-dist.
2008-06-04This fixes a problem with the move of libc_hidden_proto to string.h.Bernd Schmidt
The obsolete functions bcopy, index, etc. are not supposed to be used within uClibc itself. Hence, there is no libc_hidden_def for them, but the previous patch did not just move libc_hidden_protos, it also added new ones for the legacy functions. As a result, programs which use these functions can no longer link with uClibc. This fixes it by removing the unnecessary libc_hidden_protos. I've also removed all inclusions of <strings.h> from uClibc source files: since we define _GNU_SOURCE, it is sufficient to include <string.h>. We then do not need to duplicate the libc_hidden_proto block in <strings.h>.
2008-05-19Moving libc_hidden_proto's into #ifdef UCLIBC_INTERNAL blockDenis Vlasenko
in string.h and strings.h. This caught unguarded string ops in libc/inet/ethers.c __ether_line_w() function. I will wait for fallout reports for a week or so, then continue converting more libc_hidden_proto's.
2006-11-29- introduce UCLIBC_SUSV3_LEGACY_MACROS to be able to do away with all LEGACYBernhard Reutner-Fischer
stuff, even the fallback defines.
2006-03-23Add new option for SuSv3 legacy functions and use it for ↵Peter S. Mazinger
bcopy/bzero/bcmp/index/rindex
2005-12-05Sync w/ glibc and disable everything uClibc does not providePeter S. Mazinger
2005-12-03More hiding, including __mempcpyPeter S. Mazinger
2005-11-04Sync up w/ glibcPeter S. Mazinger
2005-07-30sjhill appears confused. vapier's earlier commit of string.h was broken.Manuel Novoa III
But I fixed it, and tested both x86 (locale) and mipsel before I commited the fixes. Just built with gcc 4.0.1 to see if that was the cause of his problems, but x86 (locale) built fine. So revert his last change.
2005-07-30The newly added __glibc_strerror_r function is probably fine, but the"Steven J. Hill"
uClibc did not even compile or link without errors. This fixes that up. Please test more thoroughly next time.
2005-07-28Fix string.h. Change our _susv3_strerror_r to __xpg_strerror_r for glibcManuel Novoa III
compatibility. Also change _glibc_strerror_r to __glibc_strerror_r for consistency.
2005-07-02sync with glibc versionsMike Frysinger
2004-07-30Cleanup some dead wood in the header filesEric Andersen
2003-08-24Fix a few bugs in the new extended locale functions.Manuel Novoa III
Move stub gettext functions to a stub libintl to make switching in gnu gettext easier. Also add a few gnu-isms. Change to using hidden names with global weak aliases for the extended locale functions, as expected by libstd++. Slightly rework the locale data generation stuff to allow pregenerated locale data to be used with buildroot.
2003-08-01Add a new *scanf implementation, includeing the *wscanf functions.Manuel Novoa III
Should be standards compliant and with several optional features, including support for hexadecimal float notation, locale awareness, glibc-like locale-specific digit grouping with the `'' flag, and positional arg support. I tested it pretty well (finding several bugs in glibc's scanf in the process), but it is brand new so be aware. The *wprintf functions now support floating point output. Also, a couple of bugs were squashed. Finally, %a/%A conversions are now implemented. Implement the glibc xlocale interface for thread-specific locale support. Also add the various *_l(args, locale_t loc_arg) funcs. NOTE!!! setlocale() is NOT threadsafe! NOTE!!! The strto{floating point} conversion functions are now locale aware. The also now support hexadecimal floating point notation. Add the wcsto{floating point} conversion functions. Fix a bug in mktime() related to dst. Note that unlike glibc's mktime, uClibc's version always normalizes the struct tm before attempting to determine the correct dst setting if tm_isdst == -1 on entry. Add a stub version of the libintl functions. (untested) Fixed a known memory leak in setlocale() related to the collation data. Add lots of new config options (which Erik agreed to sort out :-), including finally exposing some of the stripped down stdio configs. Be careful with those though, as they haven't been tested in a long time. (temporary) GOTCHAs... The ctype functions are currently incorrect for 8-bit locales. They will be fixed shortly. The ctype functions are now table-based, resulting in larger staticly linked binaries. I'll be adding an option to use the old approach in the stub locale configuration.
2003-06-16Add memmem().Manuel Novoa III
2002-09-19Hide my personal #warning reminders. Add __wcschrnul, rename strchrnulManuel Novoa III
to __strchrnul, and add weak aliases for them.
2002-07-07Attempt to clean up the strerror_r situation.Manuel Novoa III
2002-07-05Update header for strlcat and strlcpy.Manuel Novoa III
2002-06-17Implement strerror_r. This is per SuSv3, not glibc which doesEric Andersen
something different. -Erik
2002-01-10Eliminate C++ style commentsEric Andersen
2002-01-09Implement mempcpyEric Andersen
2002-01-06Fix stpcpy function declarationEric Andersen
2001-12-19Update my email address. I am no longer andersen@lineo.comEric Andersen
2001-10-11Add strndup, written by Stefan Soucek <ssoucek@coactive.com>Eric Andersen
2001-09-27Rev all the header files to sync things with glibc 2.2.4Eric Andersen
2001-08-11I just wrote a stpncpy() since someone wanted itEric Andersen
2001-07-11Added __BEGIN_DECLS and __END_DECLS to the files that didn't haveDavid McCullough
it and that I could see needed it. Should be pretty low impact as these are only defined when using C++.
2001-07-04Added stpcpy and strcasestr along with some code to test them.David McCullough
2001-03-15Fix the header file for index, rindex and similarEric Andersen
2001-03-08Add in wordexp support (mostly stubbed out for now) since the busyboxEric Andersen
shell, lash, is about to start using wordexp. -Erik
2001-03-01Added __strtok_r function. Change strtok to a wrapper around __strtok_r andManuel Novoa III
add a weak alias of __strtok_r for strtok_r since optional. Also reduced code size.