Age | Commit message (Collapse) | Author |
|
|
|
|
|
with my config (no locale, the rest enabled). Not tested if libc is complete and usable. All the files listed in *_NO_MULTI need love, best would be to replace all multisources w/ single sources.
|
|
|
|
|
|
libc-a-y for objects that go into static libs, changing their suffix to .os, of they should be PIC
|
|
|
|
archs lack proper crt1. The Makefiles in extra/scripts are intended to be linked into each dir, where it is necessary to build locally.
|
|
objects at once; use :=//$</$^; use CRT_SRC/CRT_OBJ/SCRT_OBJ/CSRC/COBJ/SSRC/SOBJ/MSRC/MOBJ where no more is needed, if only CSRC is present use OBJS directly instead of COBJ; CTOR_TARGETS are created directly in lib; remove unused/unneeded parts. Hope I haven't broken too much.
|
|
but they do no harm for the linuxthreads case. Yes, I tested this.
|
|
|
|
|
|
Hack in some temporary fixes until I have time to clean it up a bit more.
Also rework _fpmaxtostr to reduce the size a bit and (hopefully) allow
it to build for m68k (vapier tested an earlier version a while back).
|
|
compatibility. Also change _glibc_strerror_r to __glibc_strerror_r for
consistency.
|
|
|
|
it myself at least a year and a half ago.
|
|
d1mag writes:
Compilation of _fpmaxtostr.c generate an internal error by m68k-elf-gcc, and
this patch has been used in uClinux-dist to fix it.
|
|
define was no longer visible to vasprintf. I didn't catch this since I no
longer use such old tools. Unfortunately, some well-meaning but misguided
individual decided to just cut-and-paste the macro. :-(
Try to clean up the situation by putting it into a header that can be overriden
by any archs that need to. If this breaks for anyone (as I said, I no longer
use such old tools and so haven't tested), let me know and I'll fix it.
|
|
|
|
|
|
|
|
|
|
|
|
Codepaths streamlined. Improved performance for nonthreaded apps
when linked with a thread-enabled libc.
Minor iconv bug and some locale/thread related startup issues fixed.
These showed up in getting a gcj-compiled java helloworld app running.
Removed some old extension functions... _stdio_fdout and _stdio_fsfopen.
|
|
Fix (hopefully) a potential problem with failed freopen() calls. The
fix isn't tested since I've been working on the replacement stdio
core code which will go in after the next release.
|
|
|
|
Added a list of popen()'d to store pids and use waitpid() in pclose().
Loop on waitpid() failure due to EINTR as required.
Close parent's popen()'d FILEs in the {v}fork()'d child.
Fix failure exit code for failed execve().
|
|
were including libc-lock.h which had a bunch of weak pragmas. Also,
uClibc supplied a number of no-op weak thread functions even though
many weren't needed. This combined result was that sometimes the
functional versions of thread functions in pthread would not override
the weaks in libc.
While fixing this, I also prepended double-underscore to all necessary
weak thread funcs in uClibc, and removed all unused weaks.
I did a test build, but haven't tested this since these changes are
a backport from my working tree. I did test the changes there and
no longer need to explicitly add -lpthread in the perl build for
perl to pass its thread self tests.
|
|
|
|
Indirectly detected by gmp-4.1.2 self-tests and reported by
"Peter S. Mazinger" <ps.m@gmx.net>.
|
|
rm.patch:
* Define $(RM) as rm -f in Rules.mak and test/Rules.mak
(this is the same definition as gmake uses by default).
* Change all occurrences of rm and rm -f into $(RM).
|
|
wchar support is enabled.
|
|
encountering EOF changed with Defect Report #141. In the current
standard, the stream's EOF indicator is "sticky". Once it is set,
all further input from the stream should fail until the application
explicitly clears the EOF indicator (clearerr(), file positioning),
even if more data becomes available.
Fixed a bug in fgets. Wasn't checking for read errors.
Minor thread locking optimizations to avoid some unnecessary locking.
Remove the explicit calls to __builtin_* funcs, as we really need to
implement a more general solution.
|
|
I got my mind fixed in one mode and didn't comply with the standards.
Things should be fixed now, but comparision testing is difficult when
glibc's scanf is broken and they stubbornly refuse to even acknowledge
that it is... even when confronted by specific examples from the C99
standards and from an official C standard defect report.
|
|
for environments where long and long long are the same size.
|
|
Printf still needs some performance work done though.
Also some bufferless stdio cleanups.
|
|
configured with non-buffered stdio and non-wchar mode.
Fix a couple of bugs that showed up in minimalist configurations.
Update old_vfprintf to handle size qualifiers on the integer and %n
conversions. It now passed the glibc printf tests with the exception
of a floating point rounding difference.
|
|
|
|
|
|
|
|
even when just starting a new mb char.
wscanf would incorrectly unget in certain situations.
|
|
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.
|
|
not setting the FILE bufread member to flag the end of the buffer.
Also, do not set bufgetc member if getc macro support is disabled.
|
|
|
|
|
|
to match that of current glibc; i.e. don't do anything and return success.
Apparently, php calls fflush() on a file opened as readonly before trying
to read. Eventually I'll add some config options to flag this and several
other instances of nonportable code.
|
|
back. Unfortunately, none of my test cases caught it.
|
|
%c, %s, and %[ specifiers. Note that scanf is undergoing rewrite so I
didn't bother optimizing this. I did run all my regression tests though.
Set EOF correctly for fmemopen on readonly streams. I really need to
check what glibc behavior is for the various open modes though.
|
|
is built without buffer support.
|
|
seeks to the end of the stream when append mode is set and we are
transitioning to write mode, so that subsequent ftell() return
values are correct.
Also fix _stdio_fopen to support fdopen() with append specified when
the underlying file didn't have O_APPEND set. It now sets the
O_APPEND flag as recommended by SUSv3 and is done by glibc.
|