1998-09-07 07:45:24 +08:00
|
|
|
#ifndef _STDIO_H
|
2000-09-14 09:43:19 +08:00
|
|
|
# if defined __need_FILE || defined __need___FILE
|
Update.
1999-08-21 Mark Kettenis <kettenis@gnu.org>
* stdio-common/vfscanf.c [! USE_IN_LIBIO]: Add necessary
definitions for MEMCPY, ISSPACE, ISDIGIT, ISXDIGIT, TOLOWER, L_,
CHAR_T, UCHAR_T and WIN_T to make the code compile again when
stdio is used instead of libio.
* stdio-common/vfprintf.c [! USE_IN_LIBIO]: Add necessary
definitions for CHAR_T, UCHAR_T, INT_T, L_, ISDIGIT, PAD and PUTC
to make the code compile again when stdio is used instead of
libio.
(vfprintf): Only check for correct orientation if ORIENT is
defined.
* stdio-common/Makefile (routines): Only add vfwprintf and
vfwscanf if we're using libio.
1999-08-21 Mark Kettenis <kettenis@gnu.org>
* include/stdio.h [! USE_IN_LIBIO && __need_FILE]: Avoid defining
any additional prototype just as we do for libio.
1999-08-21 Mark Kettenis <kettenis@gnu.org>
* include/bits/xopen_lim.h: Do not define STREAM_MAX and
TZNAME_MAX. These limits are not X/Open specific.
* stdio-common/stdio_lim.h.in: Allow inclusion when __need_IOV_MAX
is defined.
1999-08-21 Mark Kettenis <kettenis@gnu.org>
* Rules: When generated stdio_lim.h, avoid defining IOV_MAX if
UIO_MAXIOV is left undefined in sys/uio.h.
* stdio-common/stdio_lim.h.in: Adapt for change above.
1999-08-21 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/unix/sysv/linux/mips/bits/sigaction.h (SA_RESETHAND): Add it.
* sysdeps/mips/bits/dlfcn.h: Remove SGI specific calls, add RTLD_LOCAL.
Patches by Ralf Baechle <ralf@uni-koblenz.de>
1999-08-23 00:26:00 +08:00
|
|
|
# ifdef USE_IN_LIBIO
|
|
|
|
# include <libio/stdio.h>
|
|
|
|
# else
|
|
|
|
# include <stdio/stdio.h>
|
|
|
|
# endif
|
|
|
|
# else
|
|
|
|
# ifdef USE_IN_LIBIO
|
|
|
|
# include <libio/stdio.h>
|
1998-08-10 01:39:48 +08:00
|
|
|
|
|
|
|
/* Now define the internal interfaces. */
|
1999-11-24 01:31:31 +08:00
|
|
|
extern int __fcloseall (void);
|
|
|
|
extern int __snprintf (char *__restrict __s, size_t __maxlen,
|
|
|
|
__const char *__restrict __format, ...)
|
1998-08-10 01:39:48 +08:00
|
|
|
__attribute__ ((__format__ (__printf__, 3, 4)));
|
1999-11-24 01:31:31 +08:00
|
|
|
extern int __vfscanf (FILE *__restrict __s,
|
|
|
|
__const char *__restrict __format,
|
|
|
|
_G_va_list __arg)
|
1998-08-10 01:39:48 +08:00
|
|
|
__attribute__ ((__format__ (__scanf__, 2, 0)));
|
1999-11-24 01:31:31 +08:00
|
|
|
extern int __vscanf (__const char *__restrict __format,
|
|
|
|
_G_va_list __arg)
|
1998-08-10 01:39:48 +08:00
|
|
|
__attribute__ ((__format__ (__scanf__, 1, 0)));
|
1999-11-24 01:31:31 +08:00
|
|
|
extern _IO_ssize_t __getline (char **__lineptr, size_t *__n,
|
|
|
|
FILE *__stream);
|
|
|
|
extern int __vsscanf (__const char *__restrict __s,
|
|
|
|
__const char *__restrict __format,
|
|
|
|
_G_va_list __arg)
|
1998-09-01 00:30:27 +08:00
|
|
|
__attribute__ ((__format__ (__scanf__, 2, 0)));
|
1998-08-10 01:39:48 +08:00
|
|
|
|
Update.
1999-08-21 Mark Kettenis <kettenis@gnu.org>
* stdio-common/vfscanf.c [! USE_IN_LIBIO]: Add necessary
definitions for MEMCPY, ISSPACE, ISDIGIT, ISXDIGIT, TOLOWER, L_,
CHAR_T, UCHAR_T and WIN_T to make the code compile again when
stdio is used instead of libio.
* stdio-common/vfprintf.c [! USE_IN_LIBIO]: Add necessary
definitions for CHAR_T, UCHAR_T, INT_T, L_, ISDIGIT, PAD and PUTC
to make the code compile again when stdio is used instead of
libio.
(vfprintf): Only check for correct orientation if ORIENT is
defined.
* stdio-common/Makefile (routines): Only add vfwprintf and
vfwscanf if we're using libio.
1999-08-21 Mark Kettenis <kettenis@gnu.org>
* include/stdio.h [! USE_IN_LIBIO && __need_FILE]: Avoid defining
any additional prototype just as we do for libio.
1999-08-21 Mark Kettenis <kettenis@gnu.org>
* include/bits/xopen_lim.h: Do not define STREAM_MAX and
TZNAME_MAX. These limits are not X/Open specific.
* stdio-common/stdio_lim.h.in: Allow inclusion when __need_IOV_MAX
is defined.
1999-08-21 Mark Kettenis <kettenis@gnu.org>
* Rules: When generated stdio_lim.h, avoid defining IOV_MAX if
UIO_MAXIOV is left undefined in sys/uio.h.
* stdio-common/stdio_lim.h.in: Adapt for change above.
1999-08-21 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/unix/sysv/linux/mips/bits/sigaction.h (SA_RESETHAND): Add it.
* sysdeps/mips/bits/dlfcn.h: Remove SGI specific calls, add RTLD_LOCAL.
Patches by Ralf Baechle <ralf@uni-koblenz.de>
1999-08-23 00:26:00 +08:00
|
|
|
# else
|
|
|
|
# include <stdio/stdio.h>
|
|
|
|
# endif
|
1998-10-26 19:44:32 +08:00
|
|
|
|
Update.
1999-08-21 Mark Kettenis <kettenis@gnu.org>
* stdio-common/vfscanf.c [! USE_IN_LIBIO]: Add necessary
definitions for MEMCPY, ISSPACE, ISDIGIT, ISXDIGIT, TOLOWER, L_,
CHAR_T, UCHAR_T and WIN_T to make the code compile again when
stdio is used instead of libio.
* stdio-common/vfprintf.c [! USE_IN_LIBIO]: Add necessary
definitions for CHAR_T, UCHAR_T, INT_T, L_, ISDIGIT, PAD and PUTC
to make the code compile again when stdio is used instead of
libio.
(vfprintf): Only check for correct orientation if ORIENT is
defined.
* stdio-common/Makefile (routines): Only add vfwprintf and
vfwscanf if we're using libio.
1999-08-21 Mark Kettenis <kettenis@gnu.org>
* include/stdio.h [! USE_IN_LIBIO && __need_FILE]: Avoid defining
any additional prototype just as we do for libio.
1999-08-21 Mark Kettenis <kettenis@gnu.org>
* include/bits/xopen_lim.h: Do not define STREAM_MAX and
TZNAME_MAX. These limits are not X/Open specific.
* stdio-common/stdio_lim.h.in: Allow inclusion when __need_IOV_MAX
is defined.
1999-08-21 Mark Kettenis <kettenis@gnu.org>
* Rules: When generated stdio_lim.h, avoid defining IOV_MAX if
UIO_MAXIOV is left undefined in sys/uio.h.
* stdio-common/stdio_lim.h.in: Adapt for change above.
1999-08-21 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/unix/sysv/linux/mips/bits/sigaction.h (SA_RESETHAND): Add it.
* sysdeps/mips/bits/dlfcn.h: Remove SGI specific calls, add RTLD_LOCAL.
Patches by Ralf Baechle <ralf@uni-koblenz.de>
1999-08-23 00:26:00 +08:00
|
|
|
# define __need_size_t
|
|
|
|
# include <stddef.h>
|
1998-10-26 19:44:32 +08:00
|
|
|
/* Generate a unique file name (and possibly open it). */
|
1999-11-24 01:31:31 +08:00
|
|
|
extern int __path_search (char *__tmpl, size_t __tmpl_len,
|
|
|
|
__const char *__dir, __const char *__pfx,
|
|
|
|
int __try_tempdir);
|
1998-10-26 19:44:32 +08:00
|
|
|
|
1999-11-24 01:31:31 +08:00
|
|
|
extern int __gen_tempname (char *__tmpl, int __kind);
|
1999-07-07 00:26:03 +08:00
|
|
|
/* The __kind argument to __gen_tempname may be one of: */
|
Update.
1999-08-21 Mark Kettenis <kettenis@gnu.org>
* stdio-common/vfscanf.c [! USE_IN_LIBIO]: Add necessary
definitions for MEMCPY, ISSPACE, ISDIGIT, ISXDIGIT, TOLOWER, L_,
CHAR_T, UCHAR_T and WIN_T to make the code compile again when
stdio is used instead of libio.
* stdio-common/vfprintf.c [! USE_IN_LIBIO]: Add necessary
definitions for CHAR_T, UCHAR_T, INT_T, L_, ISDIGIT, PAD and PUTC
to make the code compile again when stdio is used instead of
libio.
(vfprintf): Only check for correct orientation if ORIENT is
defined.
* stdio-common/Makefile (routines): Only add vfwprintf and
vfwscanf if we're using libio.
1999-08-21 Mark Kettenis <kettenis@gnu.org>
* include/stdio.h [! USE_IN_LIBIO && __need_FILE]: Avoid defining
any additional prototype just as we do for libio.
1999-08-21 Mark Kettenis <kettenis@gnu.org>
* include/bits/xopen_lim.h: Do not define STREAM_MAX and
TZNAME_MAX. These limits are not X/Open specific.
* stdio-common/stdio_lim.h.in: Allow inclusion when __need_IOV_MAX
is defined.
1999-08-21 Mark Kettenis <kettenis@gnu.org>
* Rules: When generated stdio_lim.h, avoid defining IOV_MAX if
UIO_MAXIOV is left undefined in sys/uio.h.
* stdio-common/stdio_lim.h.in: Adapt for change above.
1999-08-21 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/unix/sysv/linux/mips/bits/sigaction.h (SA_RESETHAND): Add it.
* sysdeps/mips/bits/dlfcn.h: Remove SGI specific calls, add RTLD_LOCAL.
Patches by Ralf Baechle <ralf@uni-koblenz.de>
1999-08-23 00:26:00 +08:00
|
|
|
# define __GT_FILE 0 /* create a file */
|
|
|
|
# define __GT_BIGFILE 1 /* create a file, using open64 */
|
|
|
|
# define __GT_DIR 2 /* create a directory */
|
|
|
|
# define __GT_NOCREATE 3 /* just find a name not currently in use */
|
1998-10-26 19:44:32 +08:00
|
|
|
|
|
|
|
/* Print out MESSAGE on the error output and abort. */
|
1999-11-24 01:31:31 +08:00
|
|
|
extern void __libc_fatal (__const char *__message)
|
1998-10-26 19:44:32 +08:00
|
|
|
__attribute__ ((__noreturn__));
|
|
|
|
|
2000-08-22 00:02:48 +08:00
|
|
|
/* Acquire ownership of STREAM. */
|
|
|
|
extern void __flockfile (FILE *__stream);
|
|
|
|
|
|
|
|
/* Relinquish the ownership granted for STREAM. */
|
|
|
|
extern void __funlockfile (FILE *__stream);
|
2000-09-14 09:43:19 +08:00
|
|
|
|
2000-12-22 17:00:17 +08:00
|
|
|
/* Try to acquire ownership of STREAM but do not block if it is not
|
|
|
|
possible. */
|
|
|
|
extern int __ftrylockfile (FILE *__stream);
|
|
|
|
|
Update.
1999-08-21 Mark Kettenis <kettenis@gnu.org>
* stdio-common/vfscanf.c [! USE_IN_LIBIO]: Add necessary
definitions for MEMCPY, ISSPACE, ISDIGIT, ISXDIGIT, TOLOWER, L_,
CHAR_T, UCHAR_T and WIN_T to make the code compile again when
stdio is used instead of libio.
* stdio-common/vfprintf.c [! USE_IN_LIBIO]: Add necessary
definitions for CHAR_T, UCHAR_T, INT_T, L_, ISDIGIT, PAD and PUTC
to make the code compile again when stdio is used instead of
libio.
(vfprintf): Only check for correct orientation if ORIENT is
defined.
* stdio-common/Makefile (routines): Only add vfwprintf and
vfwscanf if we're using libio.
1999-08-21 Mark Kettenis <kettenis@gnu.org>
* include/stdio.h [! USE_IN_LIBIO && __need_FILE]: Avoid defining
any additional prototype just as we do for libio.
1999-08-21 Mark Kettenis <kettenis@gnu.org>
* include/bits/xopen_lim.h: Do not define STREAM_MAX and
TZNAME_MAX. These limits are not X/Open specific.
* stdio-common/stdio_lim.h.in: Allow inclusion when __need_IOV_MAX
is defined.
1999-08-21 Mark Kettenis <kettenis@gnu.org>
* Rules: When generated stdio_lim.h, avoid defining IOV_MAX if
UIO_MAXIOV is left undefined in sys/uio.h.
* stdio-common/stdio_lim.h.in: Adapt for change above.
1999-08-21 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/unix/sysv/linux/mips/bits/sigaction.h (SA_RESETHAND): Add it.
* sysdeps/mips/bits/dlfcn.h: Remove SGI specific calls, add RTLD_LOCAL.
Patches by Ralf Baechle <ralf@uni-koblenz.de>
1999-08-23 00:26:00 +08:00
|
|
|
# endif
|
1998-12-14 23:23:56 +08:00
|
|
|
|
1998-09-07 07:45:24 +08:00
|
|
|
#endif
|