mirror of
https://sourceware.org/git/glibc.git
synced 2025-08-10 05:03:06 +03:00
Post-cleanup 1: move libio.h back out of bits/.
We can't go very far with libio cleanups as long as we still have _IO_MTSAFE_IO, and I am not tackling that in this patch series, but we can at least make the maze of stdio-related headers a little less complicated. In this patch, libio.h moves back out of bits/ into the top level of the libio subdirectory, and is merged with libio/bits/libio-ldbl.h (which also used to be installed) and include/libio.h. Since almost no files include libio.h directly, this is quite straightforward. libio.h is now always used with _LIBC defined, so all of the _LIBC || _GLIBCPP_USE_WCHAR_T conditionals are unnecessary. Similarly, the ifdef nest surrounding the definition of _IO_fwide_maybe_incompatible can collapse down to a single SHLIB_COMPAT check. I also took the opportunity to add some checks for configuration botches to libio.h. Installed stripped libraries are unchanged by this patch. * libio/bits/libio.h: Move back to libio/libio.h and adjust multiple-include guard to match. Merge contents of libio/bits/libio-ldbl.h and include/libio.h into this file. Remove preprocessor conditionals that are always true and/or redundant to other preprocessor conditionals in the same nest. Include shlib-compat.h unconditionally. Error out if _LIBC is not defined, or if _ISOMAC is defined, or if _IO_MTSAFE_IO is defined but _IO_lock_t_defined is not defined after including stdio.h. Use __BEGIN_DECLS/__END_DECLS. * libio/bits/libio-ldbl.h, include/bits/libio.h: Delete file. * include/stdio.h, libio/iolibio.h, libio/libioP.h: Include libio.h as <libio/libio.h> rather than as <bits/libio.h>.
This commit is contained in:
@@ -1,45 +0,0 @@
|
||||
#if !defined _ISOMAC && defined _IO_MTSAFE_IO
|
||||
# include <stdio-lock.h>
|
||||
#endif
|
||||
#include <libio/bits/libio.h>
|
||||
|
||||
#ifndef _ISOMAC
|
||||
#ifndef _LIBC_LIBIO_H
|
||||
#define _LIBC_LIBIO_H
|
||||
|
||||
libc_hidden_proto (__overflow)
|
||||
libc_hidden_proto (__underflow)
|
||||
libc_hidden_proto (__uflow)
|
||||
libc_hidden_proto (__woverflow)
|
||||
libc_hidden_proto (__wunderflow)
|
||||
libc_hidden_proto (__wuflow)
|
||||
libc_hidden_proto (_IO_free_backup_area)
|
||||
libc_hidden_proto (_IO_free_wbackup_area)
|
||||
libc_hidden_proto (_IO_padn)
|
||||
libc_hidden_proto (_IO_putc)
|
||||
libc_hidden_proto (_IO_sgetn)
|
||||
libc_hidden_proto (_IO_vfprintf)
|
||||
libc_hidden_proto (_IO_vfscanf)
|
||||
|
||||
#ifdef _IO_MTSAFE_IO
|
||||
# undef _IO_peekc
|
||||
# undef _IO_flockfile
|
||||
# undef _IO_funlockfile
|
||||
# undef _IO_ftrylockfile
|
||||
|
||||
# define _IO_peekc(_fp) _IO_peekc_locked (_fp)
|
||||
# if _IO_lock_inexpensive
|
||||
# define _IO_flockfile(_fp) \
|
||||
if (((_fp)->_flags & _IO_USER_LOCK) == 0) _IO_lock_lock (*(_fp)->_lock)
|
||||
# define _IO_funlockfile(_fp) \
|
||||
if (((_fp)->_flags & _IO_USER_LOCK) == 0) _IO_lock_unlock (*(_fp)->_lock)
|
||||
# else
|
||||
# define _IO_flockfile(_fp) \
|
||||
if (((_fp)->_flags & _IO_USER_LOCK) == 0) _IO_flockfile (_fp)
|
||||
# define _IO_funlockfile(_fp) \
|
||||
if (((_fp)->_flags & _IO_USER_LOCK) == 0) _IO_funlockfile (_fp)
|
||||
# endif
|
||||
#endif /* _IO_MTSAFE_IO */
|
||||
|
||||
#endif
|
||||
#endif
|
Reference in New Issue
Block a user