Age | Commit message (Collapse) | Author |
|
a problem where the linker was trying to use the wrong symbol name for the
init function.
Define SYMBOL_PREFIX as _ in Rules.mak for h8300, bfin, i960,
microblaze, and v850. Add -D__UCLIBC_UNDERSCORES__ in CFLAGS for targets
which define SYMBOL_PREFIX as _. Remove defines and undefs from
uClibc_arch_features.h of each target.
Add $(SYMBOL_PREFIX) to __uClibc_init when passed by ld option -init.
|
|
doing double negatives
|
|
When I imported INLINE_SYSCALL, etc. from glibc, I just copied whole
macros for each ABI. Actually, except for argument type (long
vs. long long), internal_syscall[0-4] are identical for all ABI, and
internal_syscall[5-6] for N32/N64 are identical for N32/N64.
And I just disabled FORCE_FRAME_POINTER since it had caused build
failure, but including <alloca.h> can solve it.
Here is a patch to handle these issues, plus asm/__asm__ and
volatile/__volatile__ conversion.
Thanks for Peter S. Mazinger who did basic work of this cleanup.
|
|
Current ucontext_t does not match with kernel's definition. Also, on
N32 ABI, we can not use kernel's struct sigcontext since kernel's
sizeof(long) and user's sizeof(long) is differ.
For both data structure, just importing header files from recent glibc
fixes the mismatch. So here is a patch importing sys/ucontext.h and
bits/sigcontext.t from glibc-2.5.
|
|
This patch imports INLINE_SYSCALL, etc. from glibc-2.5 ports and
implements _syscall[0-7] by using them, like arm and powerpc.
I think this patch does not change functionality, but gives better
__SYSCALL_CLOBBERS for N32/N64.
|
|
st_[amc]time_nsec to each kernel_stat, and define STAT_HAVE_NSEC to convert them
|
|
|
|
applications stop using _syscall#() and use syscall() instead. Cleanup
internal handling of syscall includes to use the correct header file.
|
|
|
|
minor include file issues
|
|
Adjust for mips64 kernel.
|
|
The mips64 N32/N64 ABI have a bit different register usage convention.
Also the register size for these ABI is 8 byte. Use ld/sd for them.
|
|
The mips64 N32/N64 ABI can pass much arguments via registers.
|
|
This is a bit twisted dirent.h can be used for both getdirent and
getdirent64 case on mips/mips64.
|
|
The kernel include/asm-mips/posix_types.h defines
__kernel_ino_t as unsigned long.
|
|
The predefined _MIPS_SZPTR (32 for O32 or N32, 64 for N64) can be used
for WORDSIZE. This is came from glibc code.
|
|
There is a mismatch of struct msghdr between the kernel and libc.
In a 64-bit environment, the size of msg_namelen is 4 for all, but
the size of msg_iovlen and msg_controllen is 8 bytes for the kernel
and for glibc, but 4 bytes for uClibc. Fix size for the 64bit case.
|
|
|
|
|
|
|
|
|
|
|
|
based profiling I nuked ages ago since tools like oprofile are non invasive
and work so much better.
|
|
of POSIX_MADV_*
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
specific header file to make porting/updates a lot easier
|
|
|
|
needed to shrink the pads as well to maintain ABI compat
|
|
|
|
|
|
make sure we are only included by setjmp.h and pthread.h, and fix casting of address/jumpbugf in _JMPBUF_UNWINDS
|
|
|
|
|
|
perl tests fail on mipsel.
|
|
|
|
Unfortunatly, the semid_ds structs were not changed as needed. So
import the necessary (tweaked) files from glibc. Only tested on x86
today, but I'll be testing mips tomorrow.
|
|
'include/atomic.h' to add in new atomic operations for use by NPTL. There are multiple files for PowerPC and Sparc for 'atomic.h'. I will let those architecture maintainers choose the correct file. The files come from glibc in 'sysdeps/ARCH/bits'.
|
|
see http://uclibc.org/lists/uclibc/2005-May/011667.html for details.
Not tested by me but I am sure Peter will :)
The toolchain needs to be rebuilt.
|
|
syscalls. This won't work on 2.2 kernels(I think).
|
|
|
|
annoying warnings.
|
|
without lvalue in asm". Give the asm an lvalue so it can be happy.
|
|
|
|
In a recent post to linux-mips ML (and libc-alpha ML), a problem with
inline syscalls was reported.
http://www.linux-mips.org/archives/linux-mips/2004-10/msg00142.html
It seems uClibc should be fixed also for newer gcc. Here is a patch.
|