Age | Commit message (Collapse) | Author |
|
The Arm crt0.S contains non-PIC code for locating _init and _fini sections.
This caused problems on my uclinux system when static constructors were
enabled.
The attached patch implements a PIC version of this code.
Paul
|
|
i sent this earlier but perhaps people missed it the first time around :)
http://www.uclibc.org/lists/uclibc/2004-August/009544.html
basically if you try to #include <sys/ucontext.h> on arm it'll fail because
ucontext.h utilizes typedefs found in bits/sigcontext.h ... i386 already has
this fix in uClibc
find attached a trivial patch to fix this
-mike
|
|
size and performance penalty to profiling applications this way, as well as
Heisenberg effects, where the act of measuring changes what is measured.
There are better tools for doing profiling, such as OProfile, that do not
require gcc to instrument the application code.
-Erik
|
|
|
|
Some utilities, such as valgrind, have a legitimate reason to know the address
of the current brk. Since we know such utils will peek under our skirt, we
might as well give them what they expect and not use a gratuitously different
symbol name.
-Erik
|
|
|
|
have it. It is used by the boehm gc, amoung other things.
|
|
|
|
|
|
Because variables are linked to fixed registers, there is a problem in :
(*__errno_location())=(-_r0);
As __errno_location() uses r0 to return the address of the errno location,
the negated address will be assigned instead of the error code.
Attached patch will resolve this.
|
|
|
|
'__kernel_old_dev_t'. And of course there is no good way to know
which is in use except checking linux/version.h. Grumble.
This is rather lame, but for now, define __kernel_old_dev_t to be
the same as __kernel_dev_t. This will want to be revisited soon.
-Erik
|
|
Hi Eric,
The attached diff file includes BUS_ISA fix for kernel since 2.4.23/
Kind regards,
Oleks
|
|
|
|
|
|
being cleaned up.
|
|
used to generate the crti.S and crtn.S files. Since we don't use that
anymore, keeping the workaround makes no sense.
Furthermore, in most cases, SAFECFLAGS was not picking up all the
needed flags, causing crti.o and crtn.o to not be built PIC.
Which is very bad. Removing SAFECFLAGS and using CFLAGS fixes
that as well.
|
|
broke a couple of days ago. :-(
|
|
|
|
|
|
ln.patch:
* Define $(LN) as ln in Rules.mak.
* Change all occurrences of ln into $(LN).
* Change all constructs like (cd path && ln -sf foo/file file)
into $(LN) -sf foo/file path/file. The latter construct is
already used in a number of places so it should not be
an additional compatibility problem.
|
|
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).
|
|
Current uClibc contains only one fpu_control.h and it is i386 version.
This is a patch to use platform specific fpu_control.h. All new files
come from glibc 2.3.2. This patch is against 0.9.21 but also can be
applied to CVS as is.
|
|
|
|
|
|
on i386, at least, so seems like a good thing.
|
|
|
|
|
|
-Erik
|
|
which was copied from glibc, is wrong. So fix it.
-Erik
|
|
|
|
|
|
|
|
patch from Vadim Lebedev <vadim@7chips.com>.
|
|
and so it actually works as intended allowing binaries on ARM to be
debugged.
-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().
|
|
a bit more nicely, and make _init and _fini be weak
for people with broken compilers
-Erik
|
|
implementation such that gdb can actually debug signal handlers. Gdb behaves
much better now, for example, on multi-threaded apps.
-Erik
|
|
behavior so it works as expected
|
|
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
|
|
configurable, so people who do not need or want ctor/dtor support
can disable it and make their binaries a little bit smaller.
-Erik
|
|
This patch from David Meggy fixes it...
|
|
|
|
ioperm() and iopl()
|
|
|
|
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
|
|
|