glibc/include
Zack Weinberg 6c6c962a20 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>.
2018-02-07 10:09:47 -05:00
..
arpa nss_dns: Replace local declarations with declarations from a header file 2017-04-04 20:56:23 +02:00
bits Post-cleanup 1: move libio.h back out of bits/. 2018-02-07 10:09:47 -05:00
gnu Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
net
netinet Installed header hygiene (BZ#20366): Test of installed headers. 2016-09-23 08:43:56 -04:00
programs Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
protocols
rpc Mark internal rpc functions with attribute_hidden [BZ #18822] 2017-10-01 15:55:15 -07:00
rpcsvc libnsl: Turn remaining symbols into compat symbols [BZ #22701] 2018-01-29 17:42:30 +01:00
sys Fix -Os gnu_dev_* linknamespace, localplt issues (bug 15105, bug 19463). 2018-02-07 14:57:31 +00:00
aio.h
aliases.h Mark internal getXXXbyYYY functions with attribute_hidden [BZ #18822] 2017-10-01 15:21:00 -07:00
alloc_buffer.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
alloca.h Installed header hygiene (BZ#20366): Test of installed headers. 2016-09-23 08:43:56 -04:00
argp-fmtstream.h Mark internal argp functions with attribute_hidden [BZ #18822] 2017-10-01 15:10:27 -07:00
argp.h Mark internal argp functions with attribute_hidden [BZ #18822] 2017-10-01 15:10:27 -07:00
argz.h Mark internal argz functions with attribute_hidden [BZ #18822] 2017-08-18 09:31:33 -07:00
array_length.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
assert.h Introduce NO_RTLD_HIDDEN, make hurd use it instead of NO_HIDDEN 2017-10-03 01:33:38 +02:00
atomic.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
byteswap.h
caller.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
complex.h float128: Add private _Float128 declarations for libm. 2017-05-15 10:23:28 -03:00
cpio.h
crypt.h Add include/crypt.h. 2016-10-28 22:40:16 -04:00
ctype.h
des.h
dirent.h Introduce NO_RTLD_HIDDEN, make hurd use it instead of NO_HIDDEN 2017-10-03 01:33:38 +02:00
dlfcn.h elf: Support dlvsym within libc.so 2018-01-04 18:46:24 +01:00
dso_handle.h Mark __dso_handle as hidden [BZ #18822] 2017-09-26 16:53:44 -07:00
elf.h Properly compute offsets of note descriptor and next note [BZ #22370] 2017-11-28 09:57:00 -08:00
endian.h
envz.h Installed header hygiene (BZ#20366): Test of installed headers. 2016-09-23 08:43:56 -04:00
err.h Installed header hygiene (BZ#20366): Test of installed headers. 2016-09-23 08:43:56 -04:00
errno.h Remove __need macros from errno.h (__need_Emath, __need_error_t). 2017-06-14 08:14:34 -04:00
error.h
execinfo.h Installed header hygiene (BZ#20366): Test of installed headers. 2016-09-23 08:43:56 -04:00
fcntl.h Consolidate remaning non cancellable definitions 2017-08-23 10:47:03 -03:00
features.h Update for 2.27 release 2018-02-01 16:17:18 +00:00
fenv.h Move fenv.h override inline functions to generic math_private.h. 2018-02-01 20:54:44 +00:00
float.h Handle more _FloatN, _FloatNx types in include/float.h. 2017-11-07 23:49:04 +00:00
fmtmsg.h
fnmatch.h
fpu_control.h Hide internal __setfpucw function [BZ #18822] 2017-10-01 17:52:15 -07:00
ftw.h
gconv.h
getopt_int.h
getopt.h getopt: remove USE_NONOPTION_FLAGS 2017-04-07 07:45:53 -04:00
glob.h Hide internal __glob64 function [BZ #18822] 2017-10-01 18:02:10 -07:00
gmp.h Mark internal gmp functions with attribute_hidden [BZ #18822] 2017-10-01 15:15:30 -07:00
gnu-versions.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
grp-merge.h
grp.h Mark internal grp/pwd/shadow functions with attribute_hidden [BZ #18822] 2017-10-01 15:13:13 -07:00
gshadow.h Mark internal gshadow functions with attribute_hidden [BZ #18822] 2017-10-01 15:19:17 -07:00
iconv.h
idna.h Hide internal idna functions [BZ #18822] 2017-10-01 17:33:22 -07:00
ifaddrs.h hurd: Fix getifaddrs' and freeifaddrs' symbol exposition 2017-09-28 01:05:18 +02:00
ifreq.h Hide internal __ifreq function [BZ #18822] 2017-10-01 17:35:46 -07:00
ifunc-impl-list.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
inline-hashtab.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
langinfo.h
libc-diag.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
libc-internal.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
libc-pointer-arith.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
libc-symbols.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
libgen.h
libintl.h Installed header hygiene (BZ#20366): Test of installed headers. 2016-09-23 08:43:56 -04:00
limits.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
link.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
list_t.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
list.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
locale.h
malloc.h Hide internal __malloc_check_init function [BZ #18822] 2017-10-01 16:00:36 -07:00
math.h Remove _Mlong_double_ etc. macros. 2017-10-30 20:58:51 +00:00
mcheck.h Installed header hygiene (BZ#20366): Test of installed headers. 2016-09-23 08:43:56 -04:00
memory.h
mntent.h Hide internal __hasmntopt function [BZ #18822] 2017-10-01 17:37:42 -07:00
monetary.h Hide internal __vstrfmon_l function [BZ #18822] 2017-10-01 17:45:07 -07:00
mqueue.h
netdb.h Mark internal getXXXbyYYY functions with attribute_hidden [BZ #18822] 2017-10-01 15:21:00 -07:00
netgroup.h
nl_types.h
nss.h nss: Export nscd hash function as __nss_hash [BZ #22459] 2017-11-23 14:08:11 +01:00
nsswitch.h
obstack.h Installed header hygiene (BZ#20366): Test of installed headers. 2016-09-23 08:43:56 -04:00
plural-exp.h Hide internal __gettextparse function [BZ #18822] 2017-10-01 17:31:05 -07:00
poll.h
printf.h Hide internal printf functions [BZ #18822/21986] 2017-08-22 07:50:57 -07:00
pthread.h
pty.h Installed header hygiene (BZ#20366): Test of installed headers. 2016-09-23 08:43:56 -04:00
pwd.h Mark internal grp/pwd/shadow functions with attribute_hidden [BZ #18822] 2017-10-01 15:13:13 -07:00
regex.h Hide internal regex functions [BZ #18822] 2017-10-01 15:53:15 -07:00
resolv.h Obsolete p_secstodate. 2017-11-22 22:21:10 +00:00
rounding-mode.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
sched.h Hide internal __sched_setparam function [BZ #18822] 2017-10-01 17:43:25 -07:00
scratch_buffer.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
search.h Hide internal __tdestroy function [BZ #18822] 2017-10-01 16:06:58 -07:00
set-hooks.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
setjmp.h Add jmp_buf-macros.h 2017-11-09 05:10:03 -08:00
sgtty.h
shadow.h Mark internal grp/pwd/shadow functions with attribute_hidden [BZ #18822] 2017-10-01 15:13:13 -07:00
shlib-compat.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
signal.h Introduce NO_RTLD_HIDDEN, make hurd use it instead of NO_HIDDEN 2017-10-03 01:33:38 +02:00
spawn.h
stab.h
stackinfo.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
stap-probe.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
stdc-predef.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
stdio_ext.h Installed header hygiene (BZ#20366): Test of installed headers. 2016-09-23 08:43:56 -04:00
stdio.h Post-cleanup 1: move libio.h back out of bits/. 2018-02-07 10:09:47 -05:00
stdlib.h Introduce NO_RTLD_HIDDEN, make hurd use it instead of NO_HIDDEN 2017-10-03 01:33:38 +02:00
string.h Introduce NO_RTLD_HIDDEN, make hurd use it instead of NO_HIDDEN 2017-10-03 01:33:38 +02:00
strings.h
stropts.h
stubs-prologue.h
syscall.h
sysexits.h
syslog.h
tar.h
termios.h Hide internal __tcgetattr function [BZ #18822] 2017-10-01 17:48:24 -07:00
tgmath.h
time.h Mark internal time functions with attribute_hidden [BZ #18822] 2017-10-01 15:17:32 -07:00
ttyent.h Installed header hygiene (BZ#20366): Test of installed headers. 2016-09-23 08:43:56 -04:00
uchar.h
ucontext.h
ulimit.h
unistd.h hurd: Implement faccessat without AT_EACCESS flag 2018-01-10 02:03:28 +01:00
utime.h
utmp.h Mark internal utmp functions with attribute_hidden [BZ #18822] 2017-10-01 15:51:56 -07:00
values.h Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
wchar.h Remove attribute_hidden for wchar ifunc symbols. 2017-11-21 08:43:23 +01:00
wctype.h Remove __need macros from stdio.h and wchar.h. 2017-06-08 13:58:17 -04:00
wordexp.h