summaryrefslogtreecommitdiff
path: root/libio
diff options
context:
space:
mode:
authorRoland McGrath <roland@hack.frob.com>2012-08-01 16:30:47 -0700
committerRoland McGrath <roland@hack.frob.com>2012-08-01 16:30:47 -0700
commit2747bf9adfd7bee7a44bb75c0279a88a1c89df30 (patch)
treed0b40f25918894f52256a43ed7444be689243ff7 /libio
parent3fb791b889fc80556274a856e642ca6186c18926 (diff)
Clean up fopen64 for O_LARGEFILE==0.
Diffstat (limited to 'libio')
-rw-r--r--libio/iofopen.c6
-rw-r--r--libio/iofopen64.c6
2 files changed, 12 insertions, 0 deletions
diff --git a/libio/iofopen.c b/libio/iofopen.c
index 8edd32ebd6..a7e69e4f5e 100644
--- a/libio/iofopen.c
+++ b/libio/iofopen.c
@@ -25,6 +25,7 @@
in files containing the exception. */
#include "libioP.h"
+#include <fcntl.h>
#include <stdlib.h>
#include <stddef.h>
#ifdef _LIBC
@@ -106,4 +107,9 @@ _IO_new_fopen (filename, mode)
strong_alias (_IO_new_fopen, __new_fopen)
versioned_symbol (libc, _IO_new_fopen, _IO_fopen, GLIBC_2_1);
versioned_symbol (libc, __new_fopen, fopen, GLIBC_2_1);
+
+# if !defined O_LARGEFILE || O_LARGEFILE == 0
+weak_alias (_IO_new_fopen, _IO_fopen64)
+weak_alias (_IO_new_fopen, fopen64)
+# endif
#endif
diff --git a/libio/iofopen64.c b/libio/iofopen64.c
index 1b1a4877d6..25c79c9b38 100644
--- a/libio/iofopen64.c
+++ b/libio/iofopen64.c
@@ -25,8 +25,12 @@
in files containing the exception. */
#include "libioP.h"
+#include <fcntl.h>
#include <stdlib.h>
+/* iofopen.c defines _IO_fopen64/fopen64 as aliases if O_LARGEFILE==0. */
+#if !defined _LIBC || (defined O_LARGEFILE && O_LARGEFILE != 0)
+
_IO_FILE *
_IO_fopen64 (filename, mode)
const char *filename;
@@ -43,3 +47,5 @@ _IO_fopen64 (filename, mode)
#ifdef weak_alias
weak_alias (_IO_fopen64, fopen64)
#endif
+
+#endif