yann@1
|
1 |
Fix for this error:
|
yann@1
|
2 |
|
yann@1
|
3 |
crosstool-0.28-rc19/build/alpha-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/libc_pic.os(.text+0xd9b2c): In function `posix_fallocate64':
|
yann@1
|
4 |
: undefined reference to `__GI___pwrite64'
|
yann@1
|
5 |
collect2: ld returned 1 exit status
|
yann@1
|
6 |
make[1]: *** [crosstool-0.28-rc19/build/alpha-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/build-glibc/libc.so] Error 1
|
yann@1
|
7 |
make[1]: Leaving directory `crosstool-0.28-rc19/build/alpha-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/glibc-2.3.2'
|
yann@1
|
8 |
make: *** [all] Error 2
|
yann@1
|
9 |
|
yann@1
|
10 |
extracted from GLIBC CVS by Dan Kegel
|
yann@1
|
11 |
wget 'http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/sysdeps/unix/sysv/linux/alpha/sysdep.h.diff?r1=1.14&r2=1.15&cvsroot=glibc'
|
yann@1
|
12 |
(to match context of...)
|
yann@1
|
13 |
wget 'http://sources.redhat.com/cgi-bin/cvsweb.cgi/libc/sysdeps/unix/sysv/linux/alpha/sysdep.h.diff?r1=1.16&r2=1.17&cvsroot=glibc'
|
yann@1
|
14 |
and rediffed.
|
yann@1
|
15 |
|
yann@1
|
16 |
cf.
|
yann@1
|
17 |
http://sources.redhat.com/ml/libc-alpha/2003-10/msg00038.html
|
yann@1
|
18 |
|
yann@1
|
19 |
Originally thought we needed this hunk, too:
|
yann@1
|
20 |
http://sources.redhat.com/ml/libc-alpha/2003-10/msg00037.html
|
yann@1
|
21 |
but it seems the sysdep.h change is sufficient, and works better
|
yann@1
|
22 |
when compiling against linux-2.4.
|
yann@1
|
23 |
|
yann@1
|
24 |
===================================================================
|
yann@1
|
25 |
--- glibc-2.3.2/sysdeps/unix/sysv/linux/alpha/sysdep.h.old 2004-05-24 22:21:44.000000000 -0700
|
yann@1
|
26 |
+++ glibc-2.3.2/sysdeps/unix/sysv/linux/alpha/sysdep.h 2004-05-24 22:22:48.000000000 -0700
|
yann@1
|
27 |
@@ -1,4 +1,4 @@
|
yann@1
|
28 |
-/* Copyright (C) 1992, 1993, 1995, 1996, 1997, 2002, 2003
|
yann@1
|
29 |
+/* Copyright (C) 1992, 1993, 1995, 1996, 1997, 2002, 2003, 2004
|
yann@1
|
30 |
Free Software Foundation, Inc.
|
yann@1
|
31 |
This file is part of the GNU C Library.
|
yann@1
|
32 |
Contributed by Ulrich Drepper, <drepper@gnu.ai.mit.edu>, August 1995.
|
yann@1
|
33 |
@@ -60,6 +60,21 @@
|
yann@1
|
34 |
#define __NR_osf_getsysinfo 256
|
yann@1
|
35 |
#define __NR_osf_setsysinfo 257
|
yann@1
|
36 |
|
yann@1
|
37 |
+/* Help old kernel headers where particular syscalls are not available. */
|
yann@1
|
38 |
+#ifndef __NR_semtimedop
|
yann@1
|
39 |
+# define __NR_semtimedop 423
|
yann@1
|
40 |
+#endif
|
yann@1
|
41 |
+
|
yann@1
|
42 |
+/* This is a kludge to make syscalls.list find these under the names
|
yann@1
|
43 |
+ pread and pwrite, since some kernel headers define those names
|
yann@1
|
44 |
+ and some define the *64 names for the same system calls. */
|
yann@1
|
45 |
+#if !defined __NR_pread && defined __NR_pread64
|
yann@1
|
46 |
+# define __NR_pread __NR_pread64
|
yann@1
|
47 |
+#endif
|
yann@1
|
48 |
+#if !defined __NR_pwrite && defined __NR_pwrite64
|
yann@1
|
49 |
+# define __NR_pwrite __NR_pwrite64
|
yann@1
|
50 |
+#endif
|
yann@1
|
51 |
+
|
yann@1
|
52 |
/*
|
yann@1
|
53 |
* In order to get the hidden arguments for rt_sigaction set up
|
yann@1
|
54 |
* properly, we need to call the assembly version. Detect this in the
|