summaryrefslogtreecommitdiff
path: root/libc
AgeCommit message (Collapse)Author
2012-06-15utent.c: go back to use static __X() functions without size increasePeter S. Mazinger
__X() {...} and strong_alias(__X,X) keeps size the same as X() {...} Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15use fputwc in putwchar()Peter S. Mazinger
use fputwc instead of fputc add hidden fputwc to avoid jump relocation Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15fputc.c, stdio.h: no need for hidden putc, putc_unlocked and fputc_unlockedPeter 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-15cleanup fork()Peter S. Mazinger
Keep only fork (and it's hidden variant) and __libc_fork. Common __libc_fork prototype in unistd.h. Get rid of __fork, by changing HIDDEN_JUMPTARGET(__fork) to use fork I can't see the reason to have fork() in libpthread, but kept it for now making __fork static in these files. Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15semaphore.h, uClibc_local_lim.h: make sure SEM_VALUE_MAX is always definedPeter S. Mazinger
LT old and new provided SEM_VALUE_MAX in semaphore.h, NPTL in local_lim.h Make sure to get the same definitions, independently of the fact, that semaphore.h is included or not. Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15huge_val.h: add for vaxPeter 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-15huge_vall.h: add for i386,ia64,m68k,sparcPeter S. Mazinger
relevant only for gcc < 3.3 or non-gcc compiler Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15posix_opt.h: update to POSIX 2008Peter S. Mazinger
uClibc_posix_opt.h: adapt accordingly Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15posix_opt.h: update to glibc's NPTL versionPeter S. Mazinger
add uClibc_posix_opt.h to handle uClibc specific options/features Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15local_lim.h: add NPTL version for alpha,ia64,powerpc,sparc, update commonPeter S. Mazinger
avoid the possibility to use the wrong bits/local_lim.h uClibc_local_lim.h fix it be correct for LT Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15add jmpbuf-unwind.h and jmpbuf-offsets.h to avr32,c6x and xtensaPeter S. Mazinger
cleanup bits/setjmp.h and avr32's setjmp.S Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15change __HAVE_FPU__ to __UCLIBC_HAS_FPU__Peter S. Mazinger
add features.h where necessary Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15cleanup bits/setjmp.h of stuff moved to jmpbuf-offsets.h and jmpbuf-unwind.hPeter S. Mazinger
Make sure we use the new jmpbuf-*.h headers While there, adapt the offset on microblaze and the _JMPBUF_UNWINDS macro on bfin, it seems, these were changed in the meantime. Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15make use of jmpbuf-offsets.h and jmpbuf-unwind.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-15jmpbuf-unwind.h: add NTPL related sectionPeter 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-15add jmpbuf-offsets.h and jmpbuf-unwind.h for all archs (LT related)Peter 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-15move *longjmp related prototypes to setjmp.hPeter S. Mazinger
Provide common prototypes for __longjmp, __libc_longjmp, __libc_siglongjmp _longjmp_unwind, __libc_unwind_longjmp in setjmp.h in preparation for use in LT new Add __longjmp to h8300 and i960 Make common longjmp.c good for NPTL Guard _longjmp_unwind use in sh's longjmp.c for NPTL (I think sh could use the common one) Remove unneeded attribute_noreturn, prototype provides it already Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15libintl.h, clnt_perror.c: add fallback gettext(x) and use it for _(x)Peter S. Mazinger
clnt_perror.c: change _(x) to N_(x) to allow compile with the change in libintl.h Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15getopt[-susv3].c: use libintl's _(x)Peter 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-15regex_old.c: remove unneeded guardPeter S. Mazinger
_LIBC is undefined here, no need to specially guard with __UCLIBC__ Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15obstack.c: use libintl.hPeter S. Mazinger
remove gettext workarounds and use libintl.h's _(x) use strong_alias instead of weak_alias change how strong_alias and libc_hidden_def are disabled Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15arm: consistency check OABI v. EABIPeter S. Mazinger
added check in toolchain and config Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15alpha/__syscall_rt_sigaction.S: make the function hidden on non-NPTLPeter 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 hidden sigwaitinfoPeter S. Mazinger
use __sigwaitinfo in sigwait.c, since that is already hidden Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15no need for hidden sigtimedwaitPeter S. Mazinger
remove unneeded attribute_hidden too, as the prototype provides it Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15parser_config.[ch]: remove duplicated hidden functionsPeter 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-15signal.h: move prototypes for __syscall_[rt_]sigaction to common placePeter S. Mazinger
solve inconsistency between archs NPTL should not use __syscall_rt_sigaction at all, for now it needs to be visible Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15libintl.h: add _(x) and N_(x) and use it everywherePeter S. Mazinger
remove _LIBC part from rpc headers include libintl.h to rpc_private.h and use that instead of rpc.h include libintl.h anywhere else needed replacing _(x) and N_(x) Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15libc-internal.h: use a consistent prototype for __stack_chk_failPeter 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-15signal.h: provide prototype for __libc_sigaction and remove all othersPeter 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-15use one common prototype for _create_xidPeter 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-15rpc_private.h: change guardPeter S. Mazinger
need another guard, else rpc/rpc.h might not be included Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15remove __FORCE_GLIBCPeter 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-15getopt.c, getopt.h: avoid the need for __FORCE_GLIBCPeter 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-15do not include libc-internal.hPeter S. Mazinger
it is already included by features.h Signed-off-by: Peter S. Mazinger <ps.m@gmx.net> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-15do not include xlocale.h, it is included by locale.h when neededPeter 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-15inet_addr.c, inet_makeaddr.c: used the correct section from addr.cPeter 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-15no need for hidden inet_ntoa_rPeter S. Mazinger
it is reused within the same file, solve it through a static function 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>
2012-06-15wordexp.c, sysconf.c: include ctype.h for isspacePeter 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-14libc: sh: fixed typo in ucontext headerFilippo Arcidiacono
Fixed typo in ucontext header, NFPREG wrongly defined twice instead of NGREG for general registers and NFPREG for floating point register. Signed-off-by: Filippo Arcidiacono <filippo.arcidiacono@st.com> Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
2012-06-13buildsys: clean up libubacktrace linker script handlingKevin Cernekee
Currently, the installed libubacktrace linker script entry always uses HARDWIRED_ABSPATH semantics, even if HARDWIRED_ABSPATH is disabled: $ grep GROUP $PREFIX/mipsel-linux-uclibc/sys-root/usr/lib/libc.so GROUP ( libc.so.0 uclibc_nonshared.a AS_NEEDED ( ld-uClibc.so.0 ) ) GROUP ( AS_NEEDED ( /lib/libubacktrace.so.0 ) ) This causes problems when building a non-sysroot toolchain. Move the AS_NEEDED insertion into libc/Makefile.in, and add a case to the HARDWIRED_ABSPATH substitution command so libubacktrace is handled the same way as the other libraries listed in the script. Signed-off-by: Kevin Cernekee <cernekee@gmail.com> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-13Update C6X supportMark Salter
This patch updates the C6X support to work with latest uClibc code and uses reworked DSBT support to allow using kernel FDPIC loader. Signed-off-by: Mark Salter <msalter@redhat.com> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-10eventfd: Implement eventfd2 and fix eventfdKhem Raj
eventfd: evntfd assumes to take two arguments instead it should be one evntfd expects two therefore implement both syscalls with correct parameters Thanks Eugene Rudoy for reporting it and also providing the patch Signed-off-by: Khem Raj <raj.khem@gmail.com>
2012-06-06MIPS: Use $a0 instead of $v0 for __syscall_error() argumentKevin Cernekee
$a0 is saved across _dl_runtime_resolve(); $v0 is not. Unfortunately, __syscall_error() uses $v0 for its argument, not $a0 as is the MIPS ABI standard. This means that if lazy binding was used for __syscall_error(), the errno value in $v0 could get corrupted. The problem can be easily seen in testcases where syscalls in librt fail; when librt tries to call __syscall_error() in libc, the argument gets lost and errno gets set to a bogus value: # ./tst-mqueue1 ; echo $? mq_receive on O_WRONLY mqd_t did not fail with EBADF: Unknown error 2004684208 1 # ./tst-mqueue2 ; echo $? mq_timedreceive with too small msg_len did not fail with EMSGSIZE: Unknown error 1997360560 1 # ./tst-mqueue4 ; echo $? mq_timedsend did not fail with ETIMEDOUT: Unknown error 2008747440 1 When _dl_runtime_resolve() was taken out of the equation, the same test cases passed: # LD_BIND_NOW=y ./tst-mqueue1 ; echo $? 0 # LD_BIND_NOW=y ./tst-mqueue2 ; echo $? 0 # LD_BIND_NOW=y ./tst-mqueue4 ; echo $? 0 Changing __syscall_error() to look at $a0 instead of $v0 fixed the problem. (Note that there is also a "__syscall_error.c" file which presumably uses the standard C calling conventions, but I do not think it is used on MIPS.) Signed-off-by: Kevin Cernekee <cernekee@gmail.com> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-06-06MIPS: Convert __syscall_error() callers to use $a0 for argumentKevin Cernekee
Some callers passed the first argument in $v0, while others used $a0. Change the callers to use $a0 consistently. Signed-off-by: Kevin Cernekee <cernekee@gmail.com> Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2012-05-30pread/pwrite: drop fallback funcsMike Frysinger
Linux has provided these functions since the 2.1.x era, so no need to keep these around. We'd rather find out when things are missing (and fix that) than fall back to the unsafe hacks. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-05-30pread/pwrite: handle renamed syscalls in common/ppc/xtensa codeMike Frysinger
Some arches got this fix, but many did not. So copy the ifdef logic to the ones that missed it to fix behavior in linux-2.6+. URL: https://bugs.busybox.net/show_bug.cgi?id=5258 Reported-by: David Laight <david.laight@aculab.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-05-21mmap()->sys_mmap2: do unsigned shift of offsetJames Hogan
Fix the implementation of mmap based on the mmap2 system call, to construct pgoffset from offset with an unsigned shift rather than a signed (off_t) shift. The mmap2 test in the testsuite catches this case by mmap'ing with a large offset (with the sign bit set). The signed shift repeats the sign bit making the page shift way out of range. This is already fixed similarly in mmap64(). Signed-off-by: James Hogan <james.hogan@imgtec.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2012-05-21stdio: implement assignment-allocation "m" characterMike Frysinger
The latest POSIX spec introduces a "m" character to allocate buffers for the user when using scanf type functions. This is like the old glibc "a" flag, but now standardized. With packages starting to use these, we need to implement it. for example: char *s; sscanf("foo", "%ms", &s); printf("%s\n", s); free(s); This will automatically allocate storage for "s", read in "foo" to it, and then display it. I'm not terribly familiar with the stdio layer, so this could be wrong. But it seems to work for me. Signed-off-by: Mike Frysinger <vapier@gentoo.org>