Age | Commit message (Collapse) | Author |
|
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.
|
|
want glibc style malloc(0) behavior
|
|
|
|
|
|
-Erik
|
|
To use the pregenerated locales, untar in the extra/locale directory.
Do a 'make config' or 'make menuconfig' in the uClibc root dir, then
a 'make headers' followed by 'make -C extra/locale pregen'. Then
continue with 'make' as usual.
|
|
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.
|
|
|
|
|
|
|
|
|
|
|
|
implement 'UCLIBC_CC', which does this:
$ UCLIBC_CC=gcc-2.95 /usr/i386-linux-uclibc/bin/i386-uclibc-gcc --version
2.95.4
$ UCLIBC_CC=gcc-3.3 /usr/i386-linux-uclibc/bin/i386-uclibc-gcc --version
gcc-3.3 (GCC) 3.3 (Debian)
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
|
|
So put it where it is supposed to be.
-Erik
|
|
instead for mips, which should be a bit faster and will be safer too.
|
|
The gnu ld and binutils for mips has a bug with relocation.
It is possible for a relocation table to be created that is not able to be loaded correctly.
We found this with the intersil wireless driver port.
To enable a correctly created mips relocation table (either a .o, or ld -r) it is necessary
to turn off one of the instruction re-scheduling passes.
Specifically, on mips-gcc -fno-schedule-insns2 is needed.
This is an FYI. The bug has been reported to the appropriate mailing lists.
This patch is an effort to avoid this problem on mips.
-Erik
|
|
script work with newer binutils versions.
|
|
|
|
they move/disappear from the expected location.
-Erik
|
|
|
|
|
|
|
|
|
|
the gcc wrapper when not building with shared library support.
|
|
Hi Erik,
I patched the initfini.awk script, so we can build crt[in].S for the SuperH
targets with gmon-support.
The patch moves all labels into the wright sections, and add some assembler
statements to jump over them. (only activ on SH targets)
The patch also avoid any references of _GLOBAL_OFFSET_TABLE_ or *gmon_start*
in the crtn.S file. This should work on every target.
Bye Stefan
|
|
for different things.
|
|
|
|
combination with and w/o both the nostdinc and nostdlib options.
|
|
option, to avoid the possibility of adding non PIC code into the shared PIC
uClibc library, thereby making the .text segment unshareable.
|
|
|
|
during 'make menuconfig'
|
|
x86 compiler optimization to not force building i386 opcodes.
|
|
|
|
|
|
files instead of generating approx 40Mb of glibc locales to get the 300+
locales currently supported.
|
|
Also added outdigit support and (legacy) YESSTR/NOSTR support.
|
|
|
|
patch from Stefan Allius (though the extra/config/Makefile
rework is mine),
-Erik
|
|
|
|
library, we need to disable adding start files (i.e. crt0) since
it isn't supposed to be creating an executable, just a shared lib.
-Erik
|
|
|
|
Added option for selecting cris architecure type. For now, only CRIS is
available.
Added a default configuration for cris.
|
|
the linux kernel uses.
-Erik
|
|
-Erik
|
|
then considerably hacked up by me. This eliminates the separate lxdialog and
instead directly uses the lxdialog internals. This allows 'make menuconfig'
to be much faster.
-Erik
|
|
-Erik
|
|
configurable, so people who do not need or want ctor/dtor support
can disable it and make their binaries a little bit smaller.
-Erik
|
|
|
|
Hopefully locale support will build when cross compiling now. Collation is
still not supported, but that's what I'm currently working on. In the
next couple of days, I'll probably put up a couple of files for download
that will save people the trouble of generating all the glibc locales.
Added *wprintf functions, although they currently don't support floating
point. That will be fixed when I rewrite _dtostr... or possibly before.
Added the wcsto{inttype} functions.
Added iconv() and a mini iconv utility. The require locale support and
only provide for conversions involving the various unicode encodings
{ UCS-4*, UCS-2*, UTF-32*, UTF-16*, UTF-8 }, the 8-bit codesets built
with the locale data, and the internal WCHAR_T.
|