Age | Commit message (Collapse) | Author |
|
Kill old crt0/__uClibc_main.
This breaks ABI. All apps and toolchain needs to be recompiled.
All archs except x86 are now broken and need to be fixed as x86.
PPC will be fixed shortly by me, the rest is left to the arch maintainers.
|
|
#define _DL_DO_FINI_IN_LIBC to enable(the arch specific part needs to be in place first).
|
|
rename UCLIBC_PROPOLICE to UCLIBC_HAS_SSP
|
|
binaries where the standard file descriptors are not opened.
-Erik
|
|
I will always test before I commit.
I will always test before I commit.
-Erik
|
|
dtors via atexit(), atexit may need to call realloc with __pagesize
still set to 0. ugh.
-Erik
|
|
is not quite there...
|
|
_dl_pagesize variable in ldso, so avoid aliasing.
-Erik
|
|
-Erik
|
|
|
|
|
|
not the hard coded value of 4096.
|
|
running on uClinux, which at runtime uses the FLAT file format.
|
|
|
|
by extracting the value from the ELF header.
|
|
|
|
Hello Erik!
I have made some cosmetical changes to the files, removed the added
SCRT=-fPIC option from building the crt0.S file (but it is a requirement
to build them with -fPIC), and changed some comments. I have left the
ldso.c patch with PIE_SUPPORT ifdefs, but consider applying it w/o them
(see some earlier comment from PaX Team on this issue, as it is considered
a bug). To have it work correctly, you'll also need removing
COMPLETELY_PIC.
One thing is missing: PIE_SUPPORT should be usable only for i386 (for
now).
Also added the support for propolice protection (that works for me and
catches memcpy/strcpy attacks (but needs a special gcc version).
Thanks, Peter
|
|
This avoids pulling in all the malloc/free code for a simple true/false app.
|
|
|
|
staticly linked apps it entirely prevents destructors from running
unless atexit is called for some other reason. So if they enabled
ctor/dtor support we need to have a call to the real atexit for
dtors to work properly. If people don't want the extra 4k or so
of junk in their static apps, they should leave ctor/dtor support
disabled.
-Erik
|
|
how uClibc handles _init and _fini, allowing shared lib constructors and
destructors to initialize things in the correct sequence. Stefan ported the SH
architecture. I then ported x86, arm, and mips. x86 and arm are working fine,
but I don't think I quite got things correct for mips.
|
|
-Erik
|
|
|
|
-Erik
|
|
-Erik
|
|
|
|
LC_TIME, LC_MONETARY, and LC_MESSAGES for the SUSv3 items. Also,
nl_langinfo() when real locale support is enabled.
New implementation of ctype.h.
New implementation of wctype.h.
New implementation of most of the string functions (smaller).
New implementation of the wcs/wmem functions. These are untested, but
they're also just preprocessor-modified versions ot the corresponding
str/mem functions.
Tweaked qsort and new bsearch.
Stuff still pending:
stdlib.h and wchar.h mb<->wc functions. I actually have working
versions of the stdlib ones, but the reentrant versions from
wchar.h require some reworking.
Basic replacement and translit support for wc->mb conversions.
(groundwork laid).
Simple-minded collate support such as was provided by the previous
locale implementation. (mostly done -- 8-bit codesets only)
Shared mmaping of the locale data and strerror message text.
|
|
__uClibc_main for the _stdio_init and _stdio_term functions. Since
weak_aliases are defined as hard aliases for non ELF compilers, these 2 symbols
ended up to be multiply defined, as those two are defined in stdio.c.
|
|
support for pthreads and update for the latest and greatest.
|
|
by arcturusnetworks, since Miles Bader reports it is unnecessary.
-Erik
|
|
-Erik
|
|
a native gcc toolchain). The gcc wrapper still needs some touchups,
but we seem to be _there_. Also some touchups to try and shrink
uclinux binary sized by stubbing out unneeded stuff.
-Erik
|
|
|
|
|
|
errno in, regardless of whether it is being used...
-Erik
|
|
glibc 2.1.3 and ported to work with uClibc by Stefan Soucek and Erik Andersen
(me). Stefan has hacked things up such that linuxthreads runs on MMU-less
systems (tested only on arm-nommu). Erik cleaned things up and made it work
properly as a shared library.
-Erik
|
|
unnecessary variable
|
|
|
|
contributed by Yoshinori Sato <qzb04471@nifty.ne.jp>
|
|
He sent this patch to me a month ago, but I forgot to apply it...
|
|
they use as stubs, otherwise, some compilers (ie., m68k-elf) tie them to
the local symbols and the weak aliases do not work.
|
|
define, and set things up so nasty old coff toolchains can now compile
things and should actually work again.
-Erik
|
|
This required we use _LIBC instead of __LIBC__ to be consistent with glibc.
This had some sideffects in sys/syscalls.h. While fixing things, I made
everything use __set_errno() for (eventual) thread support.
-Erik
|
|
I followed environ example which uses asm and it seemed to fix the problem
nicely.
It should be ok on i386. Could some check it please :-)
|
|
|
|
respective crt0.S. crt0.S should now only be responsible for setting things
up to call __uClibc_main(argc, argv, envp), which will do any other necessary
setup (setting global __environ, stdio init, etc), call main, and exit. This
should ease both maintainance and porting.
|