summaryrefslogtreecommitdiff
path: root/libc/sysdeps/linux/i386
AgeCommit message (Collapse)Author
2004-10-14Peter Mazinger writes:Joakim Tjernlund
The attached patch generalizes the use of PIE (all archs are brought in sync that use/mention it: x86/ppc/frv) and makes use of it building the target utils. Tested on x86, ppc should be tested, frv uses -fPIE at one location, but at another place -fpie, I don't know which is correct (could be both) and misses the target addition in Config.in. The test for ppc (requires the earlier sent crt-correction patch to work correctly): enable UCLIBC_PIE_SUPPORT, build uClibc and utils, check: file ./utils/ldd, it should show shared object (instead of executable)
2004-08-21Kill off all support for 'gcc -pg' / 'gprof' style profiling. There is both aEric Andersen
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
2004-08-13Fixup PAGE_SIZE problemsEric Andersen
-Erik
2004-07-30Cleanup some dead wood in the header filesEric Andersen
2004-07-30s/___brk_addr/__curbrk/gEric Andersen
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
2004-06-12Per comments from Bernhard Rosenkraenzer, adjust gcc 3.3.x generated asmEric Andersen
with s/i686.get_pc_thunk.bx/get_pc_thunk_bx/g to make gcc 3.4 happy.
2004-05-14__data_start needs to be added to all crt0.S files that don't currentlyEric Andersen
have it. It is used by the boehm gc, amoung other things.
2004-04-20Cope with gcc 3.4's more aggressive persuit of attribute unusedEric Andersen
2004-02-06Sigh. The 2.6.x kernel removed '__kernel_dev_t' and renamed it asEric Andersen
'__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
2004-01-17Add __data_start needed by boehm garbage collector, in turn needed by libgcj.Manuel Novoa III
2004-01-03And just like that, clone is now fixed.... Previously theEric Andersen
error handling code was mostly broken. -Erik
2004-01-03oopsEric Andersen
2004-01-03Minor changesEric Andersen
2004-01-02Peter S. Mazinger writes:Eric Andersen
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
2003-12-03Lethal noticed that the generated file gmon-start.S was notEric Andersen
being cleaned up.
2003-11-22Remove SAFECFLAGS. It was a workaround for failures in old awk scriptEric Andersen
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.
2003-11-08Darn. Fix compilation for soft-float, which I inadvertantlyEric Andersen
broke a couple of days ago. :-(
2003-11-05Begin the conversion to using per-arch crti.S and crtn.SEric Andersen
2003-10-25properly deal with soft-float when profiling as wellEric Andersen
2003-10-18Peter Kjellerstedt writes:Eric Andersen
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.
2003-10-18Peter Kjellerstedt writes:Eric Andersen
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).
2003-10-08Patch from Atsushi Nemoto (with some additions):Eric Andersen
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.
2003-09-21Fix "subst -g,," problem for SAFECFLAGS.Manuel Novoa III
2003-09-07Some updates from glibc. mjn3 reports this fixes profilingEric Andersen
on i386, at least, so seems like a good thing.
2003-09-07i386/mcount.S expects to call __mcount_internal with the 2 args passedManuel Novoa III
in registers. NOTE: i386/mcount.S really needs to be rewritten. It currently won't work for non-PIC builds.
2003-06-27Revenge of the TypoEric Andersen
2003-06-27add mmap64 for i386Eric Andersen
2003-06-03Kill the runtime fallback to fork and make it be compile timeEric Andersen
2003-06-03Fix brokenEric Andersen
2003-05-30Clone still had a few little PIC problems....Eric Andersen
2003-05-30In a number of places we erroneously used tests such as '#ifdef PIC' when weEric Andersen
should instead have been testing for '#ifdef __PIC__'. This resulted in NON-PIC code getting mixed into the shared library. Oops!!! -Erik
2003-03-04Fix compile when profiling is disabledEric Andersen
2003-03-03Initial effort at adding profiling support.Eric Andersen
2003-02-03Oops. I'd left an extra invocation of sigaction in there...Eric Andersen
2003-01-24Finish up fixing stat and setting various system types.Eric Andersen
2003-01-24Ok, people are probably going to hate me for this... This commit changes theEric Andersen
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
2003-01-23Update architecture specific support to consistantlyEric Andersen
generate a crt0 and crt1 file. Most arches still need to be updated to call __uClibc_start_main() rather than __uClibc_main().
2003-01-23Update a tiny bitEric Andersen
2003-01-23simpler method for getting a 'main' reference. Make _init and _finiEric Andersen
be weak so people won't need to fix their compilers
2003-01-22Update sigaction syscall names to act more like glibc. Fix the x86 sigactionEric Andersen
implementation such that gdb can actually debug signal handlers. Gdb behaves much better now, for example, on multi-threaded apps. -Erik
2002-12-12Based on discussions with Stefan Allius, change it so that we alwaysEric Andersen
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
2002-11-29I forgot to include features.hEric Andersen
2002-11-27Make support for global constructors and global destructors beEric Andersen
configurable, so people who do not need or want ctor/dtor support can disable it and make their binaries a little bit smaller. -Erik
2002-10-09Support O_STREAMINGEric Andersen
2002-10-01This commit contains a patch from Stefan Allius <allius@atecom.com> to changeEric Andersen
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.
2002-09-05Change <bits/syscall.h> to <bits/sysnum.h>.Miles Bader
2002-08-27Added __kernel_fsid_t to satisfy some apps that need it.David McCullough
Definitions taken from 2.4 kernel sources for each of the platforms.
2002-08-26Make bits/kernel_types.h include guard names match the includeEric Andersen
guard names used by the kernel's asm/posix_types.h to eliminate gratuitous conflicts and let our file win over the very-likely- to-be-broken kernel header file. -Erik
2002-08-24Tweak things so that struct stat and struct stat64 (seem to) work onManuel Novoa III
i386. This is for Erik to look at wrt the other archs.
2002-08-24Break dependancy of bits/types.h on the asm/posix_types.h kernelEric Andersen
header, which is not directly usable for many architectures. -Erik