+1999-08-06 Andreas Schwab <schwab@suse.de>
+
+ * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_DSYNC, O_RSYNC):
+ New definitions.
+ (O_DIRECTORY, O_NOFOLLOW): Define only if __USE_GNU.
+ (O_LARGEFILE): Define only if __USE_LARGEFILE64.
+ * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (O_DSYNC, O_RSYNC):
+ New definitions.
+ (O_LARGEFILE): Define only if __USE_LARGEFILE64.
+ * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h (O_LARGEFILE): Likewise.
+
1999-08-06 Jakub Jelinek <jj@ultra.linux.cz>
* sysdeps/ieee754/ldbl-128/e_expl.c: New file.
# define O_NOFOLLOW 0200000 /* Do not follow links. */
#endif
+#ifdef __USE_LARGEFILE64
/* Not necessary, files are always with 64bit off_t. */
-#define O_LARGEFILE 0
+# define O_LARGEFILE 0
+#endif
/* For now Linux has synchronisity options for data and read operations.
We define the symbols here but let them do the same as O_SYNC since
#define O_FSYNC O_SYNC
#define O_ASYNC 0x1000
-#ifdef __USE_GNU
+#ifdef __USE_LARGEFILE64
# define O_LARGEFILE 0x2000 /* Allow large file opens. */
+#endif
+
+#ifdef __USE_GNU
# define O_NOFOLLOW 0x4000 /* Do not follow links. */
# define O_DIRECT 0x8000 /* Direct disk access hint. */
# define O_DIRECTORY 0x10000 /* Must be a directory. */
#define O_NDELAY O_NONBLOCK
+/* For now Linux has no synchronisity options for data and read
+ operations. We define the symbols here but let them do the same as
+ O_SYNC since this is a superset. */
+#if defined __USE_POSIX199309 || defined __USE_UNIX98
+# define O_DSYNC O_SYNC /* Synchronize data. */
+# define O_RSYNC O_SYNC /* Synchronize read operations. */
+#endif
+
/* Values for the second argument to `fcntl'. */
#define F_DUPFD 0 /* Duplicate file descriptor. */
#define F_GETFD 1 /* Get file descriptor flags. */
#define O_NONBLOCK 0x4000
#define O_NDELAY (0x0004 | O_NONBLOCK)
#define O_NOCTTY 0x8000 /* not fcntl */
-#define O_DIRECTORY 0x10000 /* must be a directory */
-#define O_NOFOLLOW 0x20000 /* don't follow links */
+#ifdef __USE_GNU
+# define O_DIRECTORY 0x10000 /* must be a directory */
+# define O_NOFOLLOW 0x20000 /* don't follow links */
+#endif
+
+#ifdef __USE_LARGEFILE64
/* XXX missing */
-#define O_LARGEFILE 0
+# define O_LARGEFILE 0
+#endif
+
+/* For now Linux has no synchronisity options for data and read
+ operations. We define the symbols here but let them do the same as
+ O_SYNC since this is a superset. */
+#if defined __USE_POSIX199309 || defined __USE_UNIX98
+# define O_DSYNC O_SYNC /* Synchronize data. */
+# define O_RSYNC O_SYNC /* Synchronize read operations. */
+#endif
/* Values for the second argument to `fcntl'. */
#define F_DUPFD 0 /* Duplicate file descriptor. */