Age | Commit message (Collapse) | Author |
|
match the kernel type exactly.
|
|
Here's a patch that implements the beginnings of a rudimentary sh64 port. So
far, this only works static, as I haven't done any of the ldso work yet. I've
also not touched the libpthread stuff yet either, so that's also disabled for
now.
This port was based off of some work that Sean McGoogan at SuperH did for his
initial port, but the this patch doesn't carry over too much from there
(basically the libc/sysdeps/linux/sh64/Makefile (or rather, parts of it),
the setjmp/longjmp stuff (which I had to rewrite portions of it to work with
the new toolchains), etc.).
However, for static, everything appears to work correcly, at least in a hello
world type application.
|
|
|
|
syscalls, which had managed to stay unimplemented thus far.
-Erik
|
|
linkage" problems with C++
|
|
-Erik
|
|
|
|
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.
|
|
one which now uses the kernel structs
-Erik
|
|
either -fPIC or -fpic
|
|
|
|
|
|
for them...
-Erik
|
|
on a per arch basis using platform specific code
|
|
|
|
After removal of stropts.h none of the files references bits/stropts.h, so
it can be removed.
Peter
|
|
|
|
On the H8 varargs are rather unusual and if you declare a function with
varargs, it had better use them or it won't work.
|
|
|
|
|
|
fix a couple of gcc 3.3 compiler warnings in gmon.c
|
|
implementation of vfork is present.
|
|
|
|
|
|
|
|
from glibc 2.3. This should make threads much more efficient.
-Erik
|
|
|
|
badly. I have removed -g for all platforms as I suspect no one wants it for
the initfini creation process.
|
|
|
|
problems, causing user space to get scrambled hosed up results.
-Erik
|
|
so when _FILE_OFFSET_BITS=64 (such that we transparently change 32bit into 64
bit interfaces), we will not lose an unsigned char from d_name which silently
becomes the d_type field instead. oops.
-Erik
|
|
|
|
|
|
-Erik
|
|
and did cause segfaults) by adjusting the working scandir.c to
the the 64 thing. Fix up potential for mismatches between the
libc and kernel dirent structures, which could also cause ugly
problems.
-Erik
|
|
large file support is disabled
|
|
|
|
Well, not inlining saves 300 bytes, so do that instead.
-Erik
|
|
type of 'struct stat' and 'struct stat64' so they use consistant types.
This change is the result of a bug I found while trying to use GNU tar. The
problem was caused by our using kernel types within struct stat and trying to
directly compare these values with standard types. Trying an 'if (a < b)' when
'a' is an 'unsigned long' and 'b' is an 'int' leads to very different results
then when comparing entities of the same type (i.e. time_t values)....
Grumble. Nasty stuff, but I'm glad I got this out of the way now.
As a result of this fix, uClibc 0.9.17 will not be binary compatible with
earlier releases. I have always warned people this can and will happen.
-Erik
|
|
generate a crt0 and crt1 file. Most arches still need
to be updated to call __uClibc_start_main() rather than
__uClibc_main().
|
|
|
|
|
|
implementation such that gdb can actually debug signal handlers. Gdb behaves
much better now, for example, on multi-threaded apps.
-Erik
|
|
|
|
a common header file and a default implementation.
|
|
Also added outdigit support and (legacy) YESSTR/NOSTR support.
|
|
build a crt0.o and a crt1.o. crt1.o will support ctors and dtors if
such support is enabled. One more gratuitous toolchain support issue
is thereby removed...
-Erik
|
|
|
|
|
|
|