patches/glibc/2.2.5/glibc-2.2.5-i386-pwrite64.patch
author |
"Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> |
|
Tue May 08 17:48:32 2007 +0000 (2007-05-08) |
changeset 78 |
c3868084d81a |
permissions |
-rw-r--r-- |
Huge fixes to glibc build, so that we can build at least (and at last):
- use ports addon even when installing headers,
- use optimisation (-O) when installing headers, to avoid unnecessary warnings (thanks Robert P. J. DAY for pointing this out!),
- lowest kernel version to use is only X.Y.Z, not X.Y.Z.T,
- a bit of preparations for NPTL (RSN I hope),
- fix fixing the linker scripts (changing the backup file is kind of useless and stupid);
Shut uClibc finish step: there really is nothing to do;
Add a patch for glibc-2.3.6 weak aliases handling on some archs (ARM and ALPHA at least);
Did not catch the make errors: fixed the pattern matching in scripts/functions;
Introduce a new log level, ALL:
- send components' build messages there,
- DEBUG log level is destined only for crosstool-NG debug messages,
- migrate sub-actions to use appropriate log levels;
Update the armeb-unknown-linux-gnu sample:
- it builds!
- uses gcc-4.0.4 and glibc-2.3.6,
- updated to latest config options set.
yann@1
|
1 |
diff -urN glibc-2.2.5-orig/sysdeps/unix/sysv/linux/i386/sysdep.h glibc-2.2.5/sysdeps/unix/sysv/linux/i386/sysdep.h
|
yann@1
|
2 |
--- glibc-2.2.5-orig/sysdeps/unix/sysv/linux/i386/sysdep.h 2001-07-06 06:56:16.000000000 +0200
|
yann@1
|
3 |
+++ glibc-2.2.5/sysdeps/unix/sysv/linux/i386/sysdep.h 2004-09-03 12:35:44.000000000 +0200
|
yann@1
|
4 |
@@ -36,6 +36,16 @@
|
yann@1
|
5 |
#undef L
|
yann@1
|
6 |
#define L(name) .L##name
|
yann@1
|
7 |
|
yann@1
|
8 |
+/* This is a kludge to make syscalls.list find these under the names
|
yann@1
|
9 |
+ * pread and pwrite, since some kernel headers define those names
|
yann@1
|
10 |
+ * and some define the *64 names for the same system calls. */
|
yann@1
|
11 |
+#if !defined __NR_pread && defined __NR_pread64
|
yann@1
|
12 |
+# define __NR_pread __NR_pread64
|
yann@1
|
13 |
+#endif
|
yann@1
|
14 |
+#if !defined __NR_pwrite && defined __NR_pwrite64
|
yann@1
|
15 |
+# define __NR_pwrite __NR_pwrite64
|
yann@1
|
16 |
+#endif
|
yann@1
|
17 |
+
|
yann@1
|
18 |
#ifdef __ASSEMBLER__
|
yann@1
|
19 |
|
yann@1
|
20 |
/* Linux uses a negative return value to indicate syscall errors,
|