glibc/sysdeps
Zack Weinberg 48a8f83281 Deprecate external use of libio.h and _G_config.h.
libio.h was originally the header for a set of supported GNU
extensions, but they have not been maintained as such in many years,
they are now standing in the way of improvements to stdio, and we
don't think there are any remaining external users.  _G_config.h was
never intended for public use, but predates the bits convention.
Move both of these headers into the bits directory and provide stubs
at top level which issue deprecation warnings.

The contents of (bits/)libio.h and (bits/)_G_config.h are still
exposed to external software via stdio.h; changing that requires more
complex surgery than I have time to attempt right now.

	* libio/libio.h, libio/_G_config.h: New stub headers which issue a
	deprecation warning and then include <bits/libio.h>, <bits/_G_config.h>
	respectively.
	* libio/libio.h: Rename the original version of this file to
	libio/bits/libio.h.  Error out if not included by stdio.h or the
	stub libio.h.
	* include/libio.h: Move to include/bits.  Forward to libio/bits/libio.h.
	* sysdeps/generic/_G_config.h: Move to top-level bits/.  Error out
	if not included by bits/libio.h or the stub _G_config.h.
	* sysdeps/unix/sysv/linux/_G_config.h: Move to
	sysdeps/unix/sysv/linux/bits.  Error out if not included by
	bits/libio.h or the stub _G_config.h.
	* libio/stdio.h: Include bits/libio.h, not libio.h.
	* libio/Makefile: Install bits/libio.h and bits/_G_config.h as
	well as libio.h and _G_config.h.

	* csu/init.c, libio/fmemopen.c, libio/iolibio.h, libio/oldfmemopen.c
	* libio/strfile.h, stdio-common/vfscanf.c
	* sysdeps/pthread/flockfile.c, sysdeps/pthread/funlockfile.c
	Include stdio.h, not _G_config.h nor libio.h.
	* libio/iofgetpos.c: Also rename fgetpos64 out of the way.
	* libio/iofsetpos.c: Also rename fsetpos64 out of the way.

	* scripts/check-installed-headers.sh: Skip libio.h and _G_config.h.
2017-12-24 09:03:28 -08:00
..
aarch64 aarch64: update libm-test-ulps 2017-12-20 12:07:10 +00:00
alpha Update Alpha libm-test-ulps 2017-12-06 18:55:09 -02:00
arm Add sysdeps/ieee754/soft-fp. 2017-12-12 23:35:21 +00:00
generic Deprecate external use of libio.h and _G_config.h. 2017-12-24 09:03:28 -08:00
gnu The -Wstringop-truncation option new in GCC 8 detects common misuses 2017-11-15 17:39:59 -07:00
hppa Handle __gmon_start__ as undefined weak on hppa. 2017-12-02 14:43:28 -05:00
i386 Revert exp reimplementation (causes test failures). 2017-12-19 18:11:37 +00:00
ia64 Revert exp reimplementation (causes test failures). 2017-12-19 18:11:37 +00:00
ieee754 Avoid signed shift overflow in pow (bug 21309). 2017-12-19 18:41:01 +00:00
init_array Update copyright dates with scripts/update-copyrights. 2017-01-01 00:14:16 +00:00
m68k Revert exp reimplementation (causes test failures). 2017-12-19 18:11:37 +00:00
mach Don't set errno in Hurd rtld's __access_noerrno 2017-12-15 18:02:56 +01:00
microblaze Add sysdeps/ieee754/soft-fp. 2017-12-12 23:35:21 +00:00
mips mips32: fix clobbering s0 in setjmp() [BZ #22624] 2017-12-18 18:26:49 +00:00
nios2 Add sysdeps/ieee754/soft-fp. 2017-12-12 23:35:21 +00:00
nptl nptl: Implement pthread_self in libc.so [BZ #22635] 2017-12-20 11:42:04 +01:00
posix posix: Fix generic p{read,write}v buffer allocation (BZ#22457) 2017-11-24 12:16:15 -02:00
powerpc Provide a C++ version of iseqsig (bug 22377) 2017-12-19 23:26:59 -02:00
pthread Deprecate external use of libio.h and _G_config.h. 2017-12-24 09:03:28 -08:00
s390 s390: Update ulps 2017-12-16 14:11:56 +05:30
sh Add sysdeps/ieee754/soft-fp. 2017-12-12 23:35:21 +00:00
sparc Update SPARC divrem generation to match output. 2017-12-15 14:06:07 +00:00
tile Simplify tile assembly definitions 2017-12-20 16:55:26 -02:00
unix Deprecate external use of libio.h and _G_config.h. 2017-12-24 09:03:28 -08:00
wordsize-32 Build divdi3 only for architecture that required it 2017-04-06 15:14:34 -03:00
wordsize-64 posix: Consolidate Linux glob implementation 2017-09-08 16:34:02 +02:00
x86 Add _Float64x function aliases. 2017-11-27 14:16:47 +00:00
x86_64 Revert exp reimplementation (causes test failures). 2017-12-19 18:11:37 +00:00