Back out yesterday's big merge from the libposix branch, except for the
openat-die.c change that was reviewed and approved by Paul Eggert.
Put the ChangeLog entry at the top, to reflect the order of changes in the
master branch.
Modify gnulib-tool to strip them from generated Makefile.am-s where
they are not needed. Also, replace M4 macro prefixes when requested.
Finally, omit calls to error() for libposix.
The replacement headers deserve relaxed licenses, even if the
functions they declare cannot be accessed without a tighter license.
See the list archives for consensus on this action.
* modules/fcntl-h (License): Relax license.
* modules/getopt-posix (License): Likewise.
* modules/locale (License): Likewise.
* modules/math (License): Likewise.
* modules/pty (License): Likewise.
* modules/sched (License): Likewise.
* modules/search (License): Likewise.
* modules/spawn (License): Likewise.
* modules/stdarg (License): Likewise.
* modules/sysexits (License): Likewise.
Signed-off-by: Eric Blake <eblake@redhat.com>
The pty module was doing too much - replacing the header and checking
for functions. In the future, when we provide a working forkpty for
Solaris and HP-UX, and a stub for mingw, then the separation will be
even more useful.
* modules/pty (Makefile.am): Substitute new witnesses.
(Libraries): Move library detection...
* modules/forkpty: ...into new module.
* modules/openpty: Another new module.
* modules/pty-tests: Rename and split...
* modules/forkpty-tests: ...to this...
* modules/openpty-tests: ...and this.
* tests/test-pty.c: Rename and split...
* tests/test-forkpty.c: ...to this...
* tests/test-openpty.c: ...and this.
* m4/pty_h.m4 (gl_PTY_H_DEFAULTS): Add new witnesses.
(gl_PTY): Split library searching...
* m4/pty.m4 (gl_PTY_LIB): ...into new file.
(gl_FORKPTY, gl_OPENPTY): New macros.
* lib/pty.in.h (forkpty, openpty): Honor new witnesses.
* NEWS: Mention the split.
* MODULES.html.sh (Misc): Document the modules.
* doc/glibc-functions/forkpty.texi (forkpty): Likewise.
* doc/glibc-functions/openpty.texi (openpty): Likewise.
Signed-off-by: Eric Blake <eblake@redhat.com>
Build pty.h in the same way as all other replacement headers.
* lib/pty.in.h: New file.
* modules/pty (Files): Ship it.
(Makefile.am): Always build replacement.
* m4/pty.m4: Rename...
* m4/pty_h.m4: ...to this.
(gl_PTY): Modernize setting of witness macros; update check of
forkpty to take proper advantage of cache.
(gl_PTY_MODULE_INDICATOR, gl_PTY_H_DEFAULTS): New macros.
Signed-off-by: Eric Blake <eblake@redhat.com>