summaryrefslogtreecommitdiff
path: root/MODULES.html.sh
Commit message (Collapse)AuthorAgeFilesLines
* Update modules list.Bruno Haible2010-08-291-3/+5
|
* Rename module 'memxfrm' to 'amemxfrm'.Bruno Haible2010-08-151-1/+1
|
* Update modules list.Bruno Haible2010-08-011-3/+233
|
* forkpty, openpty: split functions into new modulesEric Blake2010-03-191-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* utime: remove obsolete moduleJim Meyering2010-03-051-1/+0
| | | | | | | | | | | | | This module, like autoconf's AC_FUNC_UTIME_NULL macro, has been unnecessary for years, and has been marked as obsolete for 10 months. * modules/utime: Remove file. * lib/utime.c: Remove file. * m4/utime.m4: Remove file. * m4/utimes-null.m4: Remove file. * doc/posix-functions/utime.texi (utime): Remove reference to the module. Move the sole "fixed by gnulib" item into the "problems not fixed by Gnulib" list. * MODULES.html.sh (func_all_modules): Remove reference to "utime".
* fts-lgpl: remove unused moduleRalf Wildenhues2010-03-021-1/+0
| | | | | | | | | * modules/fts-lgpl: Remove. * MODULES.html.sh (func_all_modules): Adjust. * check-module (find_included_lib_files): Adjust. * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove. Signed-off-by: Eric Blake <eblake@redhat.com>
* xstrtoll: new moduleJim Meyering2010-01-251-0/+1
| | | | | | | | | | | | * modules/xstrtoll: New file. * MODULES.html.sh (Numeric conversion functions): Add xstrtoll. * lib/xstrtol.h [HAVE_LONG_LONG_INT]: Declare xstrtoll and xstrtoull. * lib/xstrtoll.c, lib/xstrtoull.c: New files. ./configure fails if you use this module and lack "long long". * modules/xstrtoll-tests: New module. * tests/test-xstrtoll.c, tests/test-xstrtoull.c: New files. * tests/test-xstrtoll.sh: Like test-xstrtol.c, but use the new init.sh-based test framework.
* warn-on-use: new moduleEric Blake2010-01-111-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The goal of GNULIB_POSIXCHECK is to allow a developer on a reasonably portable system to detect instances where they may have succeeded because their system is up-to-date, but where compilation would fail or create a misbehaving application on some other system due to some portability problem, all without requiring that the developer have access to other machines. In other words, we want to poison all interfaces that have a gnulib replacement if the corresponding gnulib module is not in use. For macros, the solution is undefining the macro; unfortunately this causes compilation error without many details as to why, but it is better than nothing. For functions, the solution is to cause a warning if the function is used. Previously, the link-warning could poison functions, but only on glibc systems and with gcc. This module introduces _GL_WARN_ON_USE as a way of poisoning functions for a few more systems. Using the gcc __warning__ attribute (added in 4.3.0, early 2008) rather than using link-warning.h is favorable because: 1) Provides a warning immediately at compile-time. The user does not have to wait until he links a program. 2) Less use of C macros. Less risk of collision. 3) It's available on more platforms. Depends only on GCC. 4) The formatting of the message is nicer. There is a minor regression: the gcc attribute is currently not as powerful as a link warning at detecting uses via function pointers: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42384 However, that style of coding is less frequent. * modules/warn-on-use: New file. * build-aux/warn-on-use.h: Likewise. * m4/warn-on-use.m4: Likewise. * MODULES.html.sh (Support for building): Mention it. Signed-off-by: Eric Blake <ebb9@byu.net>
* update nearly all FSF copyright year lists to include 2010Jim Meyering2010-01-011-1/+1
| | | | | Use the same procedure as for 2009, outlined in http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/20081
* va-args: new moduleEric Blake2009-12-231-0/+1
| | | | | | | | * modules/va-args: New file. * m4/va-args.m4 (gl_VA_ARGS): Likewise. * MODULES.html.sh (Core language properties): Mention it. Signed-off-by: Eric Blake <ebb9@byu.net>
* pread: new moduleJim Meyering2009-11-251-0/+1
| | | | | | | | | | | * modules/pread: New file. * lib/pread.c (pread): New file. * m4/pread.m4: Likewise. * lib/unistd.in.h (pread): Define/declare. * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Define defaults. * modules/unistd (Makefile.am): Substitute witnesses. * doc/posix-functions/pread.texi (pread): Update. * MODULES.html.sh: Add pread.
* xfreopen: new module, from coreutilsJim Meyering2009-11-191-0/+1
| | | | | | | * modules/xfreopen: New module. * lib/xfreopen.c: New file. * lib/xfreopen.h: New file. * MODULES.html.sh (File stream based Input/Output"): Add it.
* usleep: new moduleEric Blake2009-11-171-1/+2
| | | | | | | | | | | | | | | | | | | | | mingw usleep(1000000) failed with EINVAL, as allowed by POSIX, but contrary to GNU usage. Rather than implement an accurate usleep based on select or nanosleep, both of which drag in dependencies on external libraries, this version intentionally takes the ceiling in seconds if usleep() is missing. * modules/usleep: New file. * m4/usleep.m4 (gl_FUNC_USLEEP): Likewise. * lib/usleep.c (usleep): Likewise. * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add defaults. * modules/unistd (Makefile.am): Substitute witnesses. * lib/unistd.in.h (usleep): Add declaration. * doc/pastposix-functions/usleep.texi (usleep): Document this. * MODULES.html.sh (Date and time): Likewise. * modules/usleep-tests (Depends-on): New test. * tests/test-usleep.c: New file. Signed-off-by: Eric Blake <ebb9@byu.net>
* mgetgroups: new module, taken from coreutilsEric Blake2009-11-131-0/+1
| | | | | | | | | | | | | | | Wrapper function that makes using getgroups/getugroups easier to use. As part of the move from coreutils, convert GETGROUPS_T to gid_t, and allow mgetgroups(NULL,getegid(),&list) as a way to ensure that the effective gid is in the list. * modules/mgetgroups: New file. * lib/mgetgroups.h: Likewise. * lib/mgetgroups.c (mgetgroups): Likewise. * m4/mgetgroups.m4 (gl_MGETGROUPS): Likewise. * MODULES.html.sh (Users and groups): Mention it. Signed-off-by: Eric Blake <ebb9@byu.net>
* mknod: new moduleEric Blake2009-11-111-0/+1
| | | | | | | | | | | | | | | | | | | | | | | Solaris 9 mknod("name/",mode,dev) mistakenly creates "name" for non-directory mode. FreeBSD 7.2 mknod("dangling/",mode,dev) mistakenly creates the target of the symlink if run as root. FreeBSD and OpenBSD mknod("fifo",S_IFIFO|mode,0) fails for non-root. Use of mknod caused link failures on mingw. * modules/mknod: New file. * m4/mknod.m4 (gl_FUNC_MKNOD): Likewise. * lib/mknod.c (mknod): Likewise. * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Set witness defaults. * modules/sys_stat (Makefile.am): Substitute them. * lib/sys_stat.in.h (mknod): Declare replacement. * MODULES.html.sh (Support for systems lacking POSIX:2008): Document it. * doc/posix-functions/mknod.texi (mknod): Likewise. * modules/mknod-tests: New test. * tests/test-mknod.c: Likewise. Signed-off-by: Eric Blake <ebb9@byu.net>
* mkfifo: new moduleEric Blake2009-11-111-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | Solaris 9 mkfifo("name/",mode) mistakenly creates "name". FreeBSD 7.2 mkfifo("dangling/",mode) mistakenly creates a fifo at the target of "dangling". Mingw lacks named pipes altogether, but this at least avoids link failures. * modules/mkfifo: New file. * m4/mkfifo.m4 (gl_FUNC_MKFIFO): Likewise. * lib/mkfifo.c (mkfifo): Likewise. * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Set witness defaults. * modules/sys_stat (Makefile.am): Substitute them. * lib/sys_stat.in.h (mkfifo): Declare replacement. * MODULES.html.sh (Support for systems lacking POSIX:2008): Document it. * doc/posix-functions/mkfifo.texi (mkfifo): Likewise. * modules/mkfifo-tests: New test. * tests/test-mkfifo.h (test_mkfifo): New file, borrowed in part from test-mkfifoat.c. * tests/test-mkfifo.c: New file. Signed-off-by: Eric Blake <ebb9@byu.net>
* do-release-commit-and-tag: New module.Jim Meyering2009-11-061-0/+1
| | | | | | | Automate the release-commit and tag process. * build-aux/do-release-commit-and-tag: New script, from coreutils. * modules/do-release-commit-and-tag: New file. * MODULES.html.sh (Support for maintaining and releasing): Add it.
* freopen-safer: new moduleEric Blake2009-11-051-0/+1
| | | | | | | | | | | | | | | | | | * modules/freopen-safer: New module. * m4/stdio-safer.m4 (gl_FREOPEN_SAFER): New macro. * lib/freopen-safer.c (freopen_safer): New file. * lib/stdio-safer.h (freopen_safer): New declaration. * lib/stdio--.h (freopen): New override. * MODULES.html.sh (File stream based Input/Output): Mention it. * doc/posix-functions/freopen.texi (freopen): Mention pitfalls and freopen-safer module. * doc/posix-functions/stderr.texi (stderr): Likewise. * doc/posix-functions/stdin.texi (stdin): Likewise. * doc/posix-functions/stdout.texi (stdout): Likewise. * modules/freopen-safer-tests: New test. * tests/test-reopen-safer.c: New file. Signed-off-by: Eric Blake <ebb9@byu.net>
* mkstemps, mkostemps: new modulesEric Blake2009-11-041-0/+3
| | | | | | | | | | | | | | | | | | * modules/mkostemps: New module. * modules/mkstemps: Likewise. * lib/mkostemps.c (mkostemps): New file. * lib/mkstemps.c (mkstemps): Likewise. * m4/mkostemps.m4 (gl_FUNC_MKOSTEMPS): Likewise. * m4/mkstemps.m4 (gl_FUNC_MKSTEMPS): Likewise. * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Add witnesses. * modules/stdlib (Makefile.am): Substitute them. * lib/stdlib.in.h (mkostemps, mkstemps): Declare them. * doc/glibc-functions/mkstemps.texi (mkstemps): New file. * doc/glibc-functions/mkostemps.texi (mkostemps): Likewise. * doc/gnulib.texi (Glibc stdlib.h): Include them. * MODULES.html.sh (File system functions): Mention them. Signed-off-by: Eric Blake <ebb9@byu.net>
* filenamecat: split into filenamecat-lgplEric Blake2009-10-291-0/+1
| | | | | | | | | | | | | | | | | | | | | | | The concept of filenamecat is simple enough to use in an LGPL manner, even though current clients are GPL for other reasons. At any rate, it is nice to separate mfile_name_concat into its own file so that the linker does not fail without xalloc_die. * modules/filenamecat-lgpl: New module. * modules/filenamecat (Files): Move library-safe files into filenamecat-lgpl. (Depends-on): Add filenamecat-lgpl. (configure.ac): Declare witness. * lib/filenamecat.h (file_name_concat): Only declare when using GPL module. * lib/filenamecat.c (longest_relative_suffix, mfile_name_concat): Move... * lib/filenamecat-lgpl.c: ...into new file. * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT_LGPL): New macro. (gl_FILE_NAME_CONCAT): Use it. * MODULES.html.sh (File system functions): Mention new module. Signed-off-by: Eric Blake <ebb9@byu.net>
* dirname: split into dirname-lgplEric Blake2009-10-291-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | dirname.h is proving quite useful from multiple LGPL modules, given the number of trailing slash bugs fixed in syscalls; only the calls to xalloc_die need to remain GPL. * modules/dirname-lgpl: New module. * modules/dirname (Files): Move library-safe files into dirname-lgpl. (Depends-on): Add dirname-lgpl. (configure.ac): Declare witness. * modules/double-slash-root (License): Relax license. * lib/dirname.h (base_name, dir_name): Only declare when using GPL module. * lib/dirname.c (dir_len, mdir_name): Move... * lib/dirname-lgpl.c: ...into new file. * lib/basename.c (last_component, base_len): Move... * lib/basename-lgpl.c: ...into new file. * m4/dirname.m4 (gl_DIRNAME_LGPL): New macro. (gl_DIRNAME): Use it. * MODULES.html.sh (Enhancements for POSIX:2008 functions): Mention new module. * modules/dirname-tests (Depends-on): Add progname. * tests/test-dirname.c (program_name): Delete. Signed-off-by: Eric Blake <ebb9@byu.net>
* fdutimensat: new moduleEric Blake2009-10-201-0/+1
| | | | | | | | | | | | | Needed for coreutils copy.c to be rewritten to use fts. * modules/fdutimensat: New file. * lib/fdutimensat.c (fdutimensat): Likewise. * lib/utimens.h (fdutimensat, lutimensat): Declare new functions. * MODULES.html.sh (File system functions): Mention module. * modules/fdutimensat-tests: New test. * tests/test-fdutimensat.c: Likewise. Signed-off-by: Eric Blake <ebb9@byu.net>
* utimensat: new moduleEric Blake2009-10-161-0/+1
| | | | | | | | | | | | | | | | | | | | Provide utimensat where it is missing, and rpl_utimensat to work around ENOSYS and EINVAL bugs in older Linux kernels. * modules/utimensat: New file. * lib/utimensat.c (utimensat): Likewise. * m4/utimensat.m4 (gl_FUNC_UTIMENSAT): Likewise. * lib/utimens.c (utimensat): Avoid recursion into rpl_utimensat, so we can work around Linux bugs. * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Add witnesses. * modules/sys_stat (Makefile.am): Substitute them. * lib/sys_stat.in.h (utimensat): Declare it. * MODULES.html.sh (systems lacking POSIX:2008): Mention module. * doc/posix-functions/utimensat.texi (utimensat): Likewise. * modules/utimensat-tests: New test. * tests/test-utimensat.c: Likewise. Signed-off-by: Eric Blake <ebb9@byu.net>
* futimens: new moduleEric Blake2009-10-101-0/+1
| | | | | | | | | | | | | | | | | | | | Provides futimens where it is missing, and rpl_futimens to work around bugs in older Linux kernels. * modules/futimens: New file. * lib/futimens.c (futimens): Likewise. * m4/futimens.m4 (gl_FUNC_FUTIMENS): Likewise. * lib/utimens.c (futimens): Avoid recursion into rpl_futimens, so we can work around Linux bugs. * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Add witnesses. * modules/sys_stat (Makefile.am): Substitute them. * lib/sys_stat.in.h (futimens): Declare it. * MODULES.html.sh (systems lacking POSIX:2008): Mention module. * doc/posix-functions/futimens.texi (futimens): Likewise. * modules/futimens-tests: New test. * tests/test-futimens.c: Likewise. Signed-off-by: Eric Blake <ebb9@byu.net>
* selinux-h: always use getfilecon wrappersJim Meyering2009-10-091-0/+1
| | | | | | | | | | | | | | | | | | | | | | * lib/getfilecon.c: New file. * lib/se-selinux.in.h: Use a better inclusion guard symbol name. [HAVE_SELINUX_SELINUX_H]: Include-next <selinux/selinux.h>. [!HAVE_SELINUX_SELINUX_H]: Use better parameter names. (fgetfilecon): Provide a stub. * m4/selinux-selinux-h.m4 (gl_HEADERS_SELINUX_SELINUX_H): Don't AC_SUBST SELINUX_SELINUX_H, since now we're generating that file unconditionally. When <selinux/selinux.h> is found, arrange to use wrappers. * modules/selinux-h (Files): Add getfilecon.c. (Makefile.am): Substitute include-next-related bits into the now-always-generated selinux/selinux.h file. * doc/glibc-functions/getfilecon.texi: New file. * doc/glibc-functions/lgetfilecon.texi: New file. * doc/glibc-functions/fgetfilecon.texi: New file. * doc/glibc-functions/getfilecon-desc.texi: New file. * doc/gnulib.texi (Glibc selinux/selinux.h): New section, by which to pull in the new files. * MODULES.html.sh (Misc): Add selinux-h.
* areadlinkat-with-size: new moduleEric Blake2009-10-071-0/+1
| | | | | | | | | | | * modules/areadlinkat-with-size: New module. * lib/areadlinkat-with-size.c (areadlinkat_with_size): New file. * lib/areadlink.h (areadlinkat): Declare it. * MODULES.html.sh (File system functions): Mention it. * modules/areadlinkat-with-size-tests: New test. * tests/test-areadlinkat-with-size.c: New file. Signed-off-by: Eric Blake <ebb9@byu.net>
* xreadlinkat: new moduleEric Blake2009-10-071-0/+1
| | | | | | | | | * modules/xreadlinkat: New module. * lib/xreadlinkat.c (xreadlinkat): New file. * lib/xreadlink.h (xreadlinkat): Declare it. * MODULES.html.sh (File system functions): Mention it. Signed-off-by: Eric Blake <ebb9@byu.net>
* areadlinkat: new moduleEric Blake2009-10-071-0/+1
| | | | | | | | | | | | | | | * lib/at-func.c (FUNC_FAIL): New define. (AT_FUNC_NAME, VALIDATE_FLAG): Use it rather than raw -1. * modules/areadlinkat: New module. * lib/linkat.c (areadlinkat): Move... * lib/areadlinkat.c (areadlinkat): ...to new file. * lib/areadlink.h (areadlinkat): Declare it. * modules/linkat (Depends-on): Add areadlinkat. * MODULES.html.sh (File system functions): Mention it. * modules/areadlinkat-tests: New test. * tests/test-areadlinkat.c: New file. Signed-off-by: Eric Blake <ebb9@byu.net>
* renameat: new moduleEric Blake2009-10-021-0/+1
| | | | | | | | | | | | | | | | | | Passes on Linux and cygwin 1.7 native renameat, and on systems lacking renameat, but fails on Solaris 9 and 10 for now. * modules/renameat: New file. * lib/renameat.c (renameat): Likewise. * m4/renameat.m4 (gl_FUNC_RENAMEAT): Likewise. * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add witnesses. * modules/stdio (Makefile.am): Substitute them. * lib/stdio.in.h (renameat): Declare it. * MODULES.html.sh (systems lacking POSIX:2008): Mention module. * doc/posix-functions/renameat.texi (renameat): Likewise. * modules/renameat-tests: New test. * tests/test-renameat.c: Likewise. Signed-off-by: Eric Blake <ebb9@byu.net>
* gnu-web-doc-update: New module.Jim Meyering2009-10-021-0/+1
| | | | | | | | | Use this script to automatically update the on-line web documentation for your GNU project at http://www.gnu.org/software/$pkg/manual/ * modules/gnu-web-doc-update: New file. * build-aux/gnu-web-doc-update: New script, from coreutils. * MODULES.html.sh (Support for maintaining and releasing projects): Add gnu-web-doc-update.
* linkat: new moduleEric Blake2009-09-231-1/+3
| | | | | | | | | | | | | | | | | | | | | | * modules/linkat: New file. * lib/at-func2.c (at_func2): Likewise. * lib/linkat.c (linkat): Likewise. * m4/linkat.m4 (gl_FUNC_LINKAT): Likewise. * lib/openat-priv.h (at_func2): Add declaration. * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witnesses. * modules/unistd (Makefile.am): Substitute them. * lib/unistd.in.h (linkat): Declare it. * MODULES.html.sh (systems lacking POSIX:2008): Mention module. * doc/posix-functions/linkat.texi (linkat): Likewise. * doc/posix-functions/link.texi (link): Tweak wording. * tests/test-link.c (main): Move guts... * tests/test-link.h (test_link): ...into new file. * modules/linkat-tests: New test. * tests/test-linkat.c: Likewise. * modules/link-tests (Files): Ship new file. (Depends-on): Add stdbool. Signed-off-by: Eric Blake <ebb9@byu.net>
* symlink: new module, for Solaris 9 bugEric Blake2009-09-231-0/+1
| | | | | | | | | | | | | | | | | symlink("a","link/") mistakenly succeeds. * modules/symlink: New file. * m4/symlink.m4 (gl_FUNC_SYMLINK): Likewise. * lib/symlink.c: Likewise. * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add defaults. * modules/unistd (Makefile.am): Substitute them. * lib/unistd.in.h (symlink): Declare replacement. * MODULES.html.sh (File system functions): Mention it. * doc/posix-functions/symlink.texi (symlink): Likewise. * modules/symlink-tests: New test. * tests/test-symlink.c: Likewise. Signed-off-by: Eric Blake <ebb9@byu.net>
* remove: new module, for mingw and Solaris 9 bugsEric Blake2009-09-191-0/+1
| | | | | | | | | | | | | | | | | | Mingw obeys C89, but not POSIX, by not handling directories. Solaris remove("file/") mistakenly succeeded. * modules/remove: New file. * lib/remove.c: Likewise. * m4/remove.m4 (gl_FUNC_REMOVE): Likewise. * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add witnesses. * modules/stdio (Makefile.am): Use them. * lib/stdio.in.h (remove): Declare replacement. * MODULES.html.sh (systems lacking POSIX:2008): Mention module. * doc/posix-functions/remove.texi (remove): Likewise. * modules/remove-tests: New test. * tests/test-remove.c: Likewise. Signed-off-by: Eric Blake <ebb9@byu.net>
* unlink: new module, for Solaris 9 bugEric Blake2009-09-191-0/+1
| | | | | | | | | | | | | | | | | | | unlink("file/") mistakenly succeeded. This patch favors, but does not enforce, GNU semantics that unlink("link-to-dir/") flat-out fails rather than attempting to unlink "dir". * modules/unlink: New file. * lib/unlink.c: Likewise. * m4/unlink.m4 (gl_FUNC_UNLINK): Likewise. * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witnesses. * modules/unistd (Makefile.am): Use them. * lib/unistd.in.h (stat): Declare replacement. * MODULES.html.sh (systems lacking POSIX:2008): Mention module. * doc/posix-functions/unlink.texi (unlink): Likewise. * modules/unlink-tests: New test. * tests/test-unlink.c: Likewise. Signed-off-by: Eric Blake <ebb9@byu.net>
* stat: new module, for mingw bugEric Blake2009-09-191-0/+1
| | | | | | | | | | | | | | | | | | | | | Depending on the current directory, either stat(".",buf) or stat("./",buf) would fail on mingw. * modules/stat: New file. * lib/stat.c: Likewise. * m4/stat.m4 (gl_FUNC_STAT): Likewise. * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Add witnesses. * modules/sys_stat (Makefile.am): Use them. * lib/sys_stat.in.h (stat): Declare replacement. * lib/openat.c (fstatat): Deal with lstat and stat being function macros. * modules/openat (Depends-on): Add inline. * MODULES.html.sh (systems lacking POSIX:2008): Mention module. * doc/posix-functions/stat.texi (stat): Likewise. * modules/stat-tests: New test. * tests/test-stat.c: Likewise. Signed-off-by: Eric Blake <ebb9@byu.net>
* mkfifoat: new moduleEric Blake2009-09-081-0/+1
| | | | | | | | | | | | | | | | * modules/mkfifoat: New file. * lib/mkfifoat.c: Likewise. * m4/mkfifoat.m4 (gl_FUNC_MKFIFOAT): Likewise. * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Add witnesses. * modules/sys_stat (Makefile.am): Use them. * lib/sys_stat.in.h (mkfifoat, mknodat): Declare them. * MODULES.html.sh (File system functions): Mention module. * doc/posix-functions/mkfifoat.texi (mkfifoat): Likewise. * doc/posix-functions/mknodat.texi (mknodat): Likewise. * modules/mkfifoat-tests: New test. * tests/test-mkfifoat.c: Likewise. Signed-off-by: Eric Blake <ebb9@byu.net>
* symlinkat: new moduleEric Blake2009-09-051-0/+1
| | | | | | | | | | | | | | | | | | * modules/symlinkat: New file. * lib/symlinkat.c: Likewise. * m4/symlinkat.m4 (gl_FUNC_SYMLINKAT): Likewise. * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witnesses. * modules/unistd (Makefile.am): Use them. * lib/unistd.in.h (symlinkat, readlinkat): Declare them. (faccessat) [GNULIB_POSIXCHECK]: Fix typo. * lib/at-func.c (FUNC_RESULT): New macro, defaulting to int. * MODULES.html.sh (File system functions): Mention module. * doc/posix-functions/symlinkat.texi (symlinkat): Likewise. * doc/posix-functions/readlinkat.texi (readlinkat): Likewise. * modules/symlinkat-tests: New test. * tests/test-symlinkat.c: Likewise. Signed-off-by: Eric Blake <ebb9@byu.net>
* faccessat: new moduleEric Blake2009-09-031-0/+1
| | | | | | | | | | | | | | | | * modules/faccessat: New file. * lib/faccessat.m4: Likewise. * m4/faccessat.m4 (gl_FUNC_FACCESSAT): Likewise. * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witness. * modules/unistd (Makefile.am): Use it. * lib/unistd.in.h (faccessat): Declare it. (F_OK, X_OK, W_OK, R_OK): Provide definitions. * lib/fcntl.in.h (AT_SYMLINK_FOLLOW, AT_EACCESS): Likewise. * MODULES.html.sh (File system functions): Mention it. * doc/posix-functions/faccessat.texi (faccessat): Likewise. * doc/posix-headers/fcntl.texi (fcntl.h): Likewise. Signed-off-by: Eric Blake <ebb9@byu.net>
* openat-safer: new moduleEric Blake2009-09-021-0/+1
| | | | | | | | | | | | | | | | * modules/openat-safer: New file. * lib/openat-safer.c: Likewise. * m4/fcntl-safer.m4 (gl_OPENAT_SAFER): New macro. * lib/fcntl-safer.h (openat_safer): Declare. * lib/fcntl--.h (openat): Override. * MODULES.html.sh (File descriptor based I/O): Mention it. * lib/openat.h: Add double-inclusion guards. * lib/openat.c (includes): Only include "fcntl-safer.h", not "fcntl--.h", so we can implement openat. * modules/openat-safer-tests: New test. * tests/test-openat-safer.c: New file. Signed-off-by: Eric Blake <ebb9@byu.net>
* dirent-safer: new moduleEric Blake2009-09-021-0/+1
| | | | | | | | | | | | | | * modules/dirent-safer: New file. * lib/dirent--.h: Likewise. * lib/dirent-safer.h: Likewise. * lib/opendir-safer.c: Likewise. * m4/dirent-safer.m4: Likewise. * MODULES.html.sh (Enhancements for POSIX:2008): Mention it. * modules/dirent-safer-tests: New test. * tests/test-dirent-safer.c: New file. * lib/fdopendir.c (includes): Ensure fdopendir is also safe. Signed-off-by: Eric Blake <ebb9@byu.net>
* fdopendir: split into its own moduleEric Blake2009-09-021-0/+1
| | | | | | | | | | | | | | | | | | | | | | | * lib/openat.c (fdopendir): Move... * lib/fdopendir.c: ...into new file. * modules/fdopendir: New module. * m4/fdopendir.m4 (gl_FUNC_FDOPENDIR): New file. * modules/openat (Depends-on): Add fdopendir. * m4/openat.m4 (gl_FUNC_OPENAT): No longer need to check for fdopendir here. * modules/savedir (Depends-on): Only need fdopendir, not full openat. * lib/savedir.c (include): Use <dirent.h>, not "openat.h". * lib/openat.h (fdopendir): Drop prototype. * lib/dirent.in.h (fdopendir): Provide prototype. * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Add replacements. * modules/dirent (Makefile.am): Substitute them. * MODULES.html.sh (File system functions): Mention it. * doc/posix-functions/fdopendir.texi (fdopendir): Likewise. * modules/fdopendir-tests: New file. * tests/test-fdopendir.c: Likewise. Signed-off-by: Eric Blake <ebb9@byu.net>
* fcntl-h: rename from fcntl, in preparation for fcntl(2)Eric Blake2009-08-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | * modules/fcntl: Move <fcntl.h> header replacement... * modules/fcntl-h: ...to new name, so as not to collide with like-named function. * tests/test-fcntl.c: Rename... * tests/test-fcntl-h.c: ...to this. Test FD_CLOEXEC. * modules/fcntl-tests: Rename... * modules/fcntl-h-tests: ...to this. Update test file name. * modules/chdir-long (Depends-on): Update clients. * modules/chdir-safer (Depends-on): Likewise. * modules/fcntl-safer (Depends-on): Likewise. * modules/fts (Depends-on): Likewise. * modules/mkancesdirs (Depends-on): Likewise. * modules/mkdir-p (Depends-on): Likewise. * modules/open (Depends-on): Likewise. * modules/savewd (Depends-on): Likewise. * MODULES.html.sh (systems lacking POSIX:2008): Update name. * doc/posix-headers/fcntl.texi (fcntl.h): Update documentation. Signed-off-by: Eric Blake <ebb9@byu.net>
* popen-safer: prevent popen from clobbering std descriptorsEric Blake2009-08-191-0/+1
| | | | | | | | | | | | | | * modules/popen-safer: New file. * lib/popen-safer.c: Likewise. * m4/stdio-safer.m4 (gl_POPEN_SAFER): New macro. * lib/stdio--.h (popen): Provide override. * lib/stdio-safer.h (popen_safer): Provide declaration. * tests/test-popen.c (includes): Partially test this. * modules/popen-safer-tests: New file, for more tests. * tests/test-popen-safer.c: Likewise. * MODULES.html.sh (file stream based Input/Output): Mention it. Signed-off-by: Eric Blake <ebb9@byu.net>
* popen: fix cygwin 1.5 bug when stdin closedEric Blake2009-08-191-0/+1
| | | | | | | | | | | | | | | * doc/posix-functions/popen.texi (popen): Document cygwin bugs. * modules/popen: New file. * modules/popen-tests: Likewise. * tests/test-popen.c: Likewise. * m4/popen.m4: Likewise. * lib/popen.c: Likewise. * lib/stdio.in.h (popen): New declaration. * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add popen. * modules/stdio (Makefile.am): Likewise. * MODULES.html.sh (systems lacking POSIX:2008): Mention it. Signed-off-by: Eric Blake <ebb9@byu.net>
* stddef: fix NetBSD 5.0 NULL bug, rather than working around itEric Blake2009-08-141-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tests/test-locale.c: Revert previous patch related to NULL. * tests/test-stdio.c: Likewise. * tests/test-stdlib.c: Likewise. * tests/test-string.c: Likewise. * tests/test-unistd.c: Likewise. * modules/time-tests (Depends-on): Add verify. * modules/wchar-tests (Depends-on): Likewise. * tests/test-time.c: Test for NULL compliance. * tests/test-wchar.c: Likewise. * modules/locale (Depends-on): Add stddef. * modules/stdio (Depends-on): Likewise. * modules/stdlib (Depends-on): Likewise. * modules/string (Depends-on): Likewise. * modules/time (Depends-on): Likewise. * modules/unistd (Depends-on): Likewise. * modules/wchar (Depends-on): Likewise. * lib/locale.in.h (includes): Use <stddef.h> to fix NULL. * lib/stdlib.in.h (includes): Likewise. * lib/string.in.h (includes): Likewise. * lib/time.in.h (includes): Likewise. * lib/unistd.in.h (includes): Likewise. * m4/locale_h.m4 (gl_LOCALE_H): Replace locale.h if stddef.h was replaced. * m4/wchar.m4 (gl_WCHAR_H): Likewise. * m4/stddef_h.m4: New file. * modules/stddef: Likewise. * lib/stddef.in.h: Likewise. * modules/stddef-tests: Likewise. * tests/test-stddef.c: Likewise. * MODULES.html.sh (Basic types <stddef.h>): Mention new module. * doc/posix-headers/stddef.texi (stddef.h): Document the bug. * doc/posix-headers/locale.texi (locale.h): Likewise. * doc/posix-headers/stdio.texi (stdio.h): Likewise. * doc/posix-headers/stdlib.texi (stdlib.h): Likewise. * doc/posix-headers/string.texi (string.h): Likewise. * doc/posix-headers/time.texi (time.h): Likewise. * doc/posix-headers/unistd.texi (unistd.h): Likewise. * doc/posix-headers/wchar.texi (wchar.h): Likewise. Signed-off-by: Eric Blake <ebb9@byu.net>
* selinux-at: new moduleJim Meyering2009-08-061-0/+1
| | | | | | | | | | | Initially written for coreutils, this module will soon be used by findutils, too. * MODULES.html.sh [Misc]: Add selinux-at. * lib/selinux-at.h: New file, from coreutils. * lib/selinux-at.c: Likewise. * modules/selinux-at: Likewise. (License): Change from LGPL to GPL, since it depends on the GPL'd openat module.
* update-copyright: new moduleJim Meyering2009-07-291-0/+1
| | | | | | * modules/update-copyright: New file. * build-aux/update-copyright: New file. * MODULES.html.sh (maint+release support): Add update-copyright.
* argv-iter: new moduleJim Meyering2009-07-041-0/+1
| | | | | | | | * MODULES.html.sh: Add argv-iter. * lib/argv-iter.c, lib/argv-iter.h: New files. * modules/argv-iter: New file. * modules/argv-iter-tests: New file. * tests/test-argv-iter.c: Test it.
* strstr-simple: document new moduleEric Blake2009-06-171-0/+1
| | | | | | * MODULES.html.sh: Document new module. Signed-off-by: Eric Blake <ebb9@byu.net>
* docs: memchr is no longer obsoleteEric Blake2009-06-151-1/+1
| | | | | | | * MODULES.html.sh: Move memchr from obsolete to string.h section. * lib/string.in.h (memchr): Simplify logic. Signed-off-by: Eric Blake <ebb9@byu.net>