1
0
mirror of https://git.savannah.gnu.org/git/gnulib.git synced 2025-08-08 17:22:05 +03:00

binary-io: fix O_TEXT on Haiku

* modules/binary-io (Depends-on): Add fcntl-h.
* lib/binary-io.h (O_TEXT): Rely on replacement <fcntl.h> rather
than blindly undefining O_TEXT.
Reported by Scott McCreary.

Signed-off-by: Eric Blake <eblake@redhat.com>
This commit is contained in:
Eric Blake
2011-01-19 06:17:20 -07:00
parent 3bee7f6209
commit 52db424415
3 changed files with 10 additions and 14 deletions

View File

@@ -1,3 +1,11 @@
2011-01-19 Eric Blake <eblake@redhat.com>
binary-io: fix O_TEXT on Haiku
* modules/binary-io (Depends-on): Add fcntl-h.
* lib/binary-io.h (O_TEXT): Rely on replacement <fcntl.h> rather
than blindly undefining O_TEXT.
Reported by Scott McCreary.
2011-01-18 Paul Eggert <eggert@cs.ucla.edu> 2011-01-18 Paul Eggert <eggert@cs.ucla.edu>
include_next: do not check for standard headers like stddef.h include_next: do not check for standard headers like stddef.h

View File

@@ -18,24 +18,13 @@
#define _BINARY_H #define _BINARY_H
/* For systems that distinguish between text and binary I/O. /* For systems that distinguish between text and binary I/O.
O_BINARY is usually declared in <fcntl.h>. */ O_BINARY is guaranteed by the gnulib <fcntl.h>. */
#include <fcntl.h> #include <fcntl.h>
/* The MSVC7 <stdio.h> doesn't like to be included after '#define fileno ...', /* The MSVC7 <stdio.h> doesn't like to be included after '#define fileno ...',
so we include it here first. */ so we include it here first. */
#include <stdio.h> #include <stdio.h>
#if !defined O_BINARY && defined _O_BINARY
/* For MSC-compatible compilers. */
# define O_BINARY _O_BINARY
# define O_TEXT _O_TEXT
#endif
#if defined __BEOS__ || defined __HAIKU__
/* BeOS 5 and Haiku have O_BINARY and O_TEXT, but they have no effect. */
# undef O_BINARY
# undef O_TEXT
#endif
/* SET_BINARY (fd); /* SET_BINARY (fd);
changes the file descriptor fd to perform binary I/O. */ changes the file descriptor fd to perform binary I/O. */
#if O_BINARY #if O_BINARY
@@ -57,8 +46,6 @@
# endif # endif
#else #else
/* On reasonable systems, binary I/O is the default. */ /* On reasonable systems, binary I/O is the default. */
# undef O_BINARY
# define O_BINARY 0
# define SET_BINARY(fd) /* do nothing */ ((void) 0) # define SET_BINARY(fd) /* do nothing */ ((void) 0)
#endif #endif

View File

@@ -5,6 +5,7 @@ Files:
lib/binary-io.h lib/binary-io.h
Depends-on: Depends-on:
fcntl-h
configure.ac: configure.ac: