patches/glibc/ports-2.10.1/130-i386-no-fallocate.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Jul 17 17:54:21 2011 +0200 (2011-07-17)
changeset 2888 dd71df95903a
permissions -rw-r--r--
cc/gcc: pass the companion libs prefix to cc_core

In case of canadian-cross, the companion libraries are not the same for
the core cc (they run on 'build') as they are for the final cc (they run
on 'host').

Prepare for this differentiation (coming later), while retaining the
current behavior (to use the same compblibs).

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
yann@1625
     1
Fix building on x86 when older linux headers lack __NR_fallocate define.
yann@1625
     2
yann@1625
     3
URL: http://bugs.gentoo.org/274269
yann@1625
     4
Reported-by: Mikael Magnusson <mikachu@gmail.com>
yann@1625
     5
yann@1625
     6
2009-11-09  Mike Frysinger  <vapier@gentoo.org>
yann@1625
     7
yann@1625
     8
	* sysdeps/unix/sysv/linux/i386/fallocate.c: Include errno.h.
yann@1625
     9
	(fallocate): Return ENOSYS if __NR_fallocate is not defined.
yann@1625
    10
	* sysdeps/unix/sysv/linux/i386/fallocate64.c: Likewise.
yann@1625
    11
yann@1625
    12
diff -durN glibc-2.10.1.orig/sysdeps/unix/sysv/linux/i386/fallocate.c glibc-2.10.1/sysdeps/unix/sysv/linux/i386/fallocate.c
yann@1625
    13
--- glibc-2.10.1.orig/sysdeps/unix/sysv/linux/i386/fallocate.c	2009-03-02 17:11:06.000000000 +0100
yann@1625
    14
+++ glibc-2.10.1/sysdeps/unix/sysv/linux/i386/fallocate.c	2009-11-13 00:49:47.000000000 +0100
yann@1625
    15
@@ -16,6 +16,7 @@
yann@1625
    16
    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
yann@1625
    17
    02111-1307 USA.  */
yann@1625
    18
 
yann@1625
    19
+#include <errno.h>
yann@1625
    20
 #include <fcntl.h>
yann@1625
    21
 #include <sysdep.h>
yann@1625
    22
 
yann@1625
    23
@@ -28,5 +29,10 @@
yann@1625
    24
 int
yann@1625
    25
 fallocate (int fd, int mode, __off_t offset, __off_t len)
yann@1625
    26
 {
yann@1625
    27
+#ifdef __NR_fallocate
yann@1625
    28
   return __call_fallocate (fd, mode, offset, len);
yann@1625
    29
+#else
yann@1625
    30
+  __set_errno (ENOSYS);
yann@1625
    31
+  return -1;
yann@1625
    32
+#endif
yann@1625
    33
 }
yann@1625
    34
diff -durN glibc-2.10.1.orig/sysdeps/unix/sysv/linux/i386/fallocate64.c glibc-2.10.1/sysdeps/unix/sysv/linux/i386/fallocate64.c
yann@1625
    35
--- glibc-2.10.1.orig/sysdeps/unix/sysv/linux/i386/fallocate64.c	2009-03-02 17:10:29.000000000 +0100
yann@1625
    36
+++ glibc-2.10.1/sysdeps/unix/sysv/linux/i386/fallocate64.c	2009-11-13 00:49:47.000000000 +0100
yann@1625
    37
@@ -16,6 +16,7 @@
yann@1625
    38
    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
yann@1625
    39
    02111-1307 USA.  */
yann@1625
    40
 
yann@1625
    41
+#include <errno.h>
yann@1625
    42
 #include <fcntl.h>
yann@1625
    43
 #include <sysdep.h>
yann@1625
    44
 
yann@1625
    45
@@ -28,5 +29,10 @@
yann@1625
    46
 int
yann@1625
    47
 __fallocate64_l64 (int fd, int mode, __off64_t offset, __off64_t len)
yann@1625
    48
 {
yann@1625
    49
+#ifdef __NR_fallocate
yann@1625
    50
   return __call_fallocate (fd, mode, offset, len);
yann@1625
    51
+#else
yann@1625
    52
+  __set_errno (ENOSYS);
yann@1625
    53
+  return -1;
yann@1625
    54
+#endif
yann@1625
    55
 }