1
0
mirror of https://https.git.savannah.gnu.org/git/gnulib.git synced 2026-06-15 23:35:50 +00:00

25 Commits

Author SHA1 Message Date
Bruno Haible 86fe27800e spawn-pipe: Prefer pthread_sigmask over sigprocmask.
Suggested by Paul Eggert.

* lib/spawn-pipe.c (execute): Use pthread_sigmask to get the set of
blocked signals.
* modules/spawn-pipe (Depends-on): Add pthread_sigmask.
2026-04-04 22:26:25 +02:00
Bruno Haible df9aa7f7ad Straighten dependencies to streq or memeq.
* modules/argmatch (Dependencies): Add memeq, streq. Remove stringeq.
* modules/bcp47 (Dependencies): Likewise.
* modules/readutmp (Dependencies): Likewise.
* modules/relocatable-prog (Dependencies): Likewise.
* modules/relocatable-prog-wrapper (Dependencies): Likewise.
* modules/vc-mtime (Dependencies): Likewise.
* modules/backup-rename (Dependencies): Add memeq. Remove stringeq.
* modules/backupfile (Dependencies): Likewise.
* modules/boot-time (Dependencies): Likewise.
* modules/csharpcomp (Dependencies): Likewise.
* modules/csharpexec (Dependencies): Likewise.
* modules/file-has-acl (Dependencies): Likewise.
* modules/get_ppid_of (Dependencies): Likewise.
* modules/get_progname_of (Dependencies): Likewise.
* modules/getlogin_r (Dependencies): Likewise.
* modules/getprogname (Dependencies): Likewise.
* modules/getumask (Dependencies): Likewise.
* modules/isnan-no-c++ (Dependencies): Likewise.
* modules/isnanf (Dependencies): Likewise.
* modules/isnanf-nolibm (Dependencies): Likewise.
* modules/isnand (Dependencies): Likewise.
* modules/isnand-nolibm (Dependencies): Likewise.
* modules/isnanl (Dependencies): Likewise.
* modules/isnanl-nolibm (Dependencies): Likewise.
* modules/mbchar (Dependencies): Likewise.
* modules/mem-hash-map (Dependencies): Likewise.
* modules/memcoll (Dependencies): Likewise.
* modules/progname (Dependencies): Likewise.
* modules/pthread_sigmask (Dependencies): Likewise.
* modules/quotearg (Dependencies): Likewise.
* modules/same (Dependencies): Likewise.
* modules/signbit-no-c++ (Dependencies): Likewise.
* modules/string-desc (Dependencies): Likewise.
* modules/uniname/uniname (Dependencies): Likewise.
* modules/acl-permissions (Dependencies): Add streq. Remove stringeq.
* modules/argp (Dependencies): Likewise.
* modules/c-vasnprintf (Dependencies): Likewise.
* modules/c32_get_mapping (Dependencies): Likewise.
* modules/c32_get_type_test (Dependencies): Likewise.
* modules/concat-filename (Dependencies): Likewise.
* modules/cpu-supports (Dependencies): Likewise.
* modules/dfa (Dependencies): Likewise.
* modules/duplocale (Dependencies): Likewise.
* modules/exclude (Dependencies): Likewise.
* modules/findprog (Dependencies): Likewise.
* modules/findprog-in (Dependencies): Likewise.
* modules/findprog-lgpl (Dependencies): Likewise.
* modules/fopen (Dependencies): Likewise.
* modules/fopen-gnu (Dependencies): Likewise.
* modules/freopen (Dependencies): Likewise.
* modules/fts (Dependencies): Likewise.
* modules/getlocalename_l-simple (Dependencies): Likewise.
* modules/getlocalename_l-unsafe (Dependencies): Likewise.
* modules/getlogin (Dependencies): Likewise.
* modules/getugroups (Dependencies): Likewise.
* modules/hard-locale (Dependencies): Likewise.
* modules/hashcode-named-file (Dependencies): Likewise.
* modules/hashkey-string (Dependencies): Likewise.
* modules/iconv_open (Dependencies): Likewise.
* modules/idcache (Dependencies): Likewise.
* modules/localcharset (Dependencies): Likewise.
* modules/localename (Dependencies): Likewise.
* modules/localename-environ (Dependencies): Likewise.
* modules/localename-unsafe (Dependencies): Likewise.
* modules/localename-unsafe-limited (Dependencies): Likewise.
* modules/map-c++-tests (Dependencies): Likewise.
* modules/mbs_endswith (Dependencies): Likewise.
* modules/mountlist (Dependencies): Likewise.
* modules/newlocale (Dependencies): Likewise.
* modules/nl_langinfo (Dependencies): Likewise.
* modules/nproc (Dependencies): Likewise.
* modules/open (Dependencies): Likewise.
* modules/parse-datetime (Dependencies): Likewise.
* modules/popen (Dependencies): Likewise.
* modules/posix_spawn-internal (Dependencies): Likewise.
* modules/propername (Dependencies): Likewise.
* modules/pt_chown (Dependencies): Likewise.
* modules/putenv-gnu (Dependencies): Likewise.
* modules/qcopy-acl (Dependencies): Likewise.
* modules/rpmatch (Dependencies): Likewise.
* modules/selinux-h (Dependencies): Likewise.
* modules/setlocale (Dependencies): Likewise.
* modules/setlocale-fixes (Dependencies): Likewise.
* modules/sig2str (Dependencies): Likewise.
* modules/spawn-pipe (Dependencies): Likewise.
* modules/stat (Dependencies): Likewise.
* modules/str_endswith (Dependencies): Likewise.
* modules/streq-opt (Dependencies): Likewise.
* modules/striconveha (Dependencies): Likewise.
* modules/supersede (Dependencies): Likewise.
* modules/time_rz (Dependencies): Likewise.
* modules/unicodeio (Dependencies): Likewise.
* modules/unistdio/u16-u16-vasnprintf (Dependencies): Likewise.
* modules/unistdio/u16-vasnprintf (Dependencies): Likewise.
* modules/unistdio/u32-u32-vasnprintf (Dependencies): Likewise.
* modules/unistdio/u32-vasnprintf (Dependencies): Likewise.
* modules/unistdio/u8-u8-vasnprintf (Dependencies): Likewise.
* modules/unistdio/u8-vasnprintf (Dependencies): Likewise.
* modules/unistdio/ulc-vasnprintf (Dependencies): Likewise.
* modules/vasnprintf (Dependencies): Likewise.
* modules/vasnwprintf (Dependencies): Likewise.
* modules/wctrans (Dependencies): Likewise.
* modules/wctype (Dependencies): Likewise.
* modules/c-nstrftime (Dependencies): Add streq.
* modules/fprintftime (Dependencies): Likewise.
* modules/nstrftime (Dependencies): Likewise.
* modules/nstrftime-limited (Dependencies): Likewise.
2026-02-28 21:17:44 +01:00
Paul Eggert 26fd35455d stringeq: prefer streq to strcmp in other modules
* lib/acl-internal.c, lib/argmatch.c, lib/argp-help.c:
* lib/argp-parse.c, lib/bcp47.c, lib/c32_get_mapping.c:
* lib/c32_get_type_test.c, lib/concat-filename.c:
* lib/cpu-supports.h, lib/dfa.c, lib/duplocale.c, lib/exclude.c:
* lib/findprog-in.c, lib/findprog.c, lib/fopen.c, lib/freopen.c:
* lib/fts.c, lib/gen-uni-tables.c, lib/getfilecon.c:
* lib/getlogin.c, lib/getugroups.c, lib/hard-locale.c:
* lib/hashcode-named-file.c, lib/hashkey-string.c:
* lib/iconv_open.c, lib/idcache.c, lib/lc-charset-unicode.c:
* lib/localcharset.c, lib/localename-environ.c:
* lib/localename-unsafe.c, lib/mbs_endswith.c, lib/mountlist.c:
* lib/newlocale.c, lib/nl_langinfo.c, lib/nproc.c, lib/open.c:
* lib/os2-spawn.c, lib/parse-datetime.y, lib/popen.c:
* lib/progreloc.c, lib/propername.c, lib/pt_chown.c, lib/putenv.c:
* lib/qcopy-acl.c, lib/readutmp.c, lib/rpmatch.c:
* lib/setlocale-fixes.c, lib/setlocale.c, lib/sig2str.c:
* lib/spawni.c, lib/stat.c, lib/str_endswith.c, lib/streq.h:
* lib/striconveha.c, lib/struniq.h, lib/supersede.c:
* lib/time_rz.c, lib/unicodeio.c, lib/vasnprintf.c:
* lib/vc-mtime.c, lib/wctrans-impl.h, lib/wctype-impl.h:
Prefer streq to strcmp when either will do.
Do not make this change to files shared with glibc.
Do not make the change to test files, at least not for now.
* lib/gen-uni-tables.c (streq): New static function, in same style.
* modules/acl-permissions, modules/argp, modules/c32_get_mapping:
* modules/c32_get_type_test, modules/concat-filename:
* modules/cpu-supports, modules/dfa, modules/duplocale:
* modules/exclude, modules/findprog, modules/findprog-in:
* modules/fopen, modules/fopen-gnu, modules/freopen, modules/fts:
* modules/getlocalename_l-simple, modules/getlocalename_l-unsafe:
* modules/getlogin, modules/getugroups, modules/hard-locale:
* modules/hashcode-named-file, modules/hashkey-string:
* modules/iconv_open, modules/idcache, modules/localcharset:
* modules/localename, modules/localename-unsafe:
* modules/mbs_endswith, modules/mountlist, modules/newlocale:
* modules/nl_langinfo, modules/nproc, modules/open:
* modules/parse-datetime, modules/popen:
* modules/posix_spawn-internal, modules/propername:
* modules/pt_chown, modules/putenv-gnu, modules/qcopy-acl:
* modules/rpmatch, modules/selinux-h, modules/setenv:
* modules/setlocale, modules/setlocale-fixes, modules/sig2str:
* modules/spawn-pipe, modules/stat, modules/str_endswith:
* modules/streq, modules/striconveha, modules/supersede:
* modules/time_rz, modules/uchar-h, modules/unicodeio:
* modules/uniconv/base, modules/wctrans, modules/wctype:
(Depends-on): Add stringeq.
2025-09-17 08:20:25 -07:00
Bruno Haible 9266510b87 Clarify link dependency towards libintl on FreeBSD, Solaris, etc.
* modules/acl (Link): Document requirement to link with $(LIBINTL) or
$(LTLIBINTL).
* modules/areadlinkat (Link): Likewise.
* modules/areadlinkat-with-size (Link): Likewise.
* modules/argmatch (Link): Likewise.
* modules/argp (Link): Likewise.
* modules/argp-version-etc (Link): Likewise.
* modules/backup-rename (Link): Likewise.
* modules/backupfile (Link): Likewise.
* modules/bitset (Link): Likewise.
* modules/bitsetv (Link): Likewise.
* modules/c-xvasprintf (Link): Likewise.
* modules/canon-host (Link): Likewise.
* modules/canonicalize (Link): Likewise.
* modules/chdir-long (Link): Likewise.
* modules/chmodat (Link): Likewise.
* modules/chownat (Link): Likewise.
* modules/classpath (Link): Likewise.
* modules/clean-temp (Link): Likewise.
* modules/clean-temp-simple (Link): Likewise.
* modules/closein (Link): Likewise.
* modules/closeout (Link): Likewise.
* modules/copy-file (Link): Likewise.
* modules/csharpcomp (Link): Likewise.
* modules/csharpexec (Link): Likewise.
* modules/cygpath (Link): Likewise.
* modules/dfa (Link): Likewise.
* modules/dirname (Link): Likewise.
* modules/error (Link): Likewise.
* modules/exclude (Link): Likewise.
* modules/execute (Link): Likewise.
* modules/faccessat (Link): Likewise.
* modules/fchmodat (Link): Likewise.
* modules/fchownat (Link): Likewise.
* modules/fdopendir (Link): Likewise.
* modules/fdutimensat (Link): Likewise.
* modules/file-set (Link): Likewise.
* modules/file-type (Link): Likewise.
* modules/filenamecat (Link): Likewise.
* modules/findprog (Link): Likewise.
* modules/fstatat (Link): Likewise.
* modules/fstrcmp (Link): Likewise.
* modules/fts (Link): Likewise.
* modules/getcwd (Link): Likewise.
* modules/getlogin (Link): Likewise.
* modules/getopt-gnu (Link): Likewise.
* modules/getopt-posix (Link): Likewise.
* modules/getumask (Link): Likewise.
* modules/getusershell (Link): Likewise.
* modules/glob (Link): Likewise.
* modules/hamt (Link): Likewise.
* modules/hash-triple (Link): Likewise.
* modules/hashcode-file-inode (Link): Likewise.
* modules/human (Link): Likewise.
* modules/idcache (Link): Likewise.
* modules/issymlinkat (Link): Likewise.
* modules/javacomp (Link): Likewise.
* modules/javaexec (Link): Likewise.
* modules/javaversion (Link): Likewise.
* modules/kwset (Link): Likewise.
* modules/lchmod (Link): Likewise.
* modules/linebuffer (Link): Likewise.
* modules/linkat (Link): Likewise.
* modules/list-c++ (Link): Likewise.
* modules/long-options (Link): Likewise.
* modules/map-c++ (Link): Likewise.
* modules/mem-hash-map (Link): Likewise.
* modules/mkancesdirs (Link): Likewise.
* modules/mkdir-p (Link): Likewise.
* modules/mkdirat (Link): Likewise.
* modules/mkfifoat (Link): Likewise.
* modules/modechange (Link): Likewise.
* modules/mountlist (Link): Likewise.
* modules/obstack (Link): Likewise.
* modules/obstack-printf (Link): Likewise.
* modules/obstack-printf-gnu (Link): Likewise.
* modules/obstack-printf-posix (Link): Likewise.
* modules/obstack-zprintf (Link): Likewise.
* modules/obstack-zprintf-gnu (Link): Likewise.
* modules/obstack-zprintf-posix (Link): Likewise.
* modules/omap-c++ (Link): Likewise.
* modules/openat (Link): Likewise.
* modules/openat-die (Link): Likewise.
* modules/openat-safer (Link): Likewise.
* modules/opendirat (Link): Likewise.
* modules/oset-c++ (Link): Likewise.
* modules/pagealign_alloc (Link): Likewise.
* modules/parse-datetime (Link): Likewise.
* modules/parse-datetime2 (Link): Likewise.
* modules/pipe-filter-gi (Link): Likewise.
* modules/pipe-filter-ii (Link): Likewise.
* modules/propername (Link): Likewise.
* modules/propername-lite (Link): Likewise.
* modules/quote (Link): Likewise.
* modules/quotearg (Link): Likewise.
* modules/quotearg-simple (Link): Likewise.
* modules/readlinkat (Link): Likewise.
* modules/readtokens (Link): Likewise.
* modules/readtokens0 (Link): Likewise.
* modules/readutmp (Link): Likewise.
* modules/regex-quote (Link): Likewise.
* modules/relocatable-lib (Link): Likewise.
* modules/relocatable-prog (Link): Likewise.
* modules/renameat (Link): Likewise.
* modules/renameatu (Link): Likewise.
* modules/same (Link): Likewise.
* modules/save-cwd (Link): Likewise.
* modules/savedir (Link): Likewise.
* modules/savewd (Link): Likewise.
* modules/selinux-at (Link): Likewise.
* modules/set-c++ (Link): Likewise.
* modules/sh-quote (Link): Likewise.
* modules/sigpipe-die (Link): Likewise.
* modules/spawn-pipe (Link): Likewise.
* modules/stack (Link): Likewise.
* modules/statat (Link): Likewise.
* modules/string-desc-quotearg (Link): Likewise.
* modules/strsignal (Link): Likewise.
* modules/supersede (Link): Likewise.
* modules/symlinkat (Link): Likewise.
* modules/system-quote (Link): Likewise.
* modules/term-style-control (Link): Likewise.
* modules/timevar (Link): Likewise.
* modules/trim (Link): Likewise.
* modules/unicodeio (Link): Likewise.
* modules/unlinkat (Link): Likewise.
* modules/userspec (Link): Likewise.
* modules/utimecmp (Link): Likewise.
* modules/utimensat (Link): Likewise.
* modules/vc-mtime (Link): Likewise.
* modules/verror (Link): Likewise.
* modules/version-etc (Link): Likewise.
* modules/version-etc-fsf (Link): Likewise.
* modules/wait-process (Link): Likewise.
* modules/windows-cygpath (Link): Likewise.
* modules/xalignalloc (Link): Likewise.
* modules/xalloc (Link): Likewise.
* modules/xalloc-die (Link): Likewise.
* modules/xbinary-io (Link): Likewise.
* modules/xconcat-filename (Link): Likewise.
* modules/xfreopen (Link): Likewise.
* modules/xgetcwd (Link): Likewise.
* modules/xgetcwd-lgpl (Link): Likewise.
* modules/xgetdomainname (Link): Likewise.
* modules/xgetgroups (Link): Likewise.
* modules/xgethostname (Link): Likewise.
* modules/xhash (Link): Likewise.
* modules/xlist (Link): Likewise.
* modules/xmalloca (Link): Likewise.
* modules/xmap (Link): Likewise.
* modules/xmemcoll (Link): Likewise.
* modules/xmemdup0 (Link): Likewise.
* modules/xomap (Link): Likewise.
* modules/xoset (Link): Likewise.
* modules/xprintf (Link): Likewise.
* modules/xprintf-gnu (Link): Likewise.
* modules/xprintf-posix (Link): Likewise.
* modules/xreadlink (Link): Likewise.
* modules/xreadlinkat (Link): Likewise.
* modules/xset (Link): Likewise.
* modules/xsetenv (Link): Likewise.
* modules/xstdopen (Link): Likewise.
* modules/xstrerror (Link): Likewise.
* modules/xstriconv (Link): Likewise.
* modules/xstring-buffer (Link): Likewise.
* modules/xstring-buffer-reversed (Link): Likewise.
* modules/xstring-desc (Link): Likewise.
* modules/xstrndup (Link): Likewise.
* modules/xstrtol-error (Link): Likewise.
* modules/xsublist (Link): Likewise.
* modules/xvasprintf (Link): Likewise.
* modules/xvasprintf-gnu (Link): Likewise.
* modules/xvasprintf-posix (Link): Likewise.
* modules/yesno (Link): Likewise.
2025-09-02 14:24:55 +02:00
Bruno Haible 6ebad7abf8 Rename module stdbool-h to bool.
Reported by Paul Eggert in
<https://lists.gnu.org/archive/html/bug-gnulib/2024-12/msg00193.html>.

* modules/bool: Renamed from modules/stdbool-h.
* modules/bool-tests: Renamed from modules/stdbool-h-tests.
* modules/bool-c++-tests: Renamed from modules/stdbool-h-c++-tests.
* tests/test-bool.c: Renamed from tests/test-stdbool-h.c.
* tests/test-bool-c++.cc: Renamed from tests/test-stdbool-h-c++.cc.
* tests/test-bool-c++2.cc: Renamed from tests/test-stdbool-h-c++2.cc.
* modules/stdbool-h-c99-tests: Update.
* modules/stdbool-h-c99-c++-tests: Update.
* tests/test-stdbool-h-c99.c: Update.
* tests/test-stdbool-h-c99-c++.cc: Update.
* doc/posix-headers/stdbool.texi: Update.
* doc/gnulib-readme.texi: Update.
* doc/gnulib.texi: Update.
* modules/* (Depends-on): Update.
* modules/stdbool: Update.
2024-12-28 06:20:34 +01:00
Bruno Haible 2a99a564a4 Rename module unistd to unistd-h.
* modules/unistd-h: Renamed from modules/unistd.
* modules/unistd-h-tests: Renamed from modules/unistd-tests.
* modules/unistd-h-c++-tests: Renamed from modules/unistd-c++-tests.
* tests/test-unistd-h.c: Renamed from tests/test-unistd.c.
* tests/test-unistd-h-c++.cc: Renamed from tests/test-unistd-c++.cc.
* doc/posix-headers/unistd.texi: Update.
* doc/posix-functions/_exit.texi: Update.
* modules/* (Depends-on): Update.
* modules/unistd: New file.
2024-12-27 23:42:32 +01:00
Bruno Haible 60e90236d9 Rename module stdlib to stdlib-h.
* modules/stdlib-h: Renamed from modules/stdlib.
* modules/stdlib-h-tests: Renamed from modules/stdlib-tests.
* modules/stdlib-h-c++-tests: Renamed from modules/stdlib-c++-tests.
* tests/test-stdlib-h.c: Renamed from tests/test-stdlib.c.
* tests/test-stdlib-h-c++.cc: Renamed from tests/test-stdlib-c++.cc.
* tests/test-stdlib-h-c++2.cc: Renamed from tests/test-stdlib-c++2.cc.
* doc/posix-headers/stdlib.texi: Update.
* doc/posix-functions/exit.texi: Update.
* modules/* (Depends-on): Update.
* modules/stdlib: New file.
2024-12-27 23:36:35 +01:00
Bruno Haible 3c501171cf Rename module stdbool to stdbool-h.
* modules/stdbool-h: Renamed from modules/stdbool.
* modules/stdbool-h-tests: Renamed from modules/stdbool-tests.
* modules/stdbool-h-c++-tests: Renamed from modules/stdbool-c++-tests.
* tests/test-stdbool-h.c: Renamed from tests/test-stdbool.c.
* tests/test-stdbool-h-c++.cc: Renamed from tests/test-stdbool-c++.cc.
* tests/test-stdbool-h-c++2.cc: Renamed from tests/test-stdbool-c++2.cc.
* tests/test-stdbool-h-c99.c: Update.
* tests/test-stdbool-h-c99-c++.cc: Update.
* doc/posix-headers/stdbool.texi: Update.
* doc/gnulib-readme.texi: Update.
* doc/gnulib.texi: Update.
* modules/* (Depends-on): Update.
* modules/stdbool: New file.
2024-12-27 23:35:24 +01:00
Bruno Haible e04d7618a4 Rename module spawn to spawn-h.
* modules/spawn-h: Renamed from modules/spawn.
* modules/spawn-h-tests: Renamed from modules/spawn-tests.
* modules/spawn-h-c++-tests: Renamed from modules/spawn-c++-tests.
* tests/test-spawn-h.c: Renamed from tests/test-spawn.c.
* tests/test-spawn-h-c++.cc: Renamed from tests/test-spawn-c++.cc.
* doc/posix-headers/spawn.texi: Update.
* modules/* (Depends-on): Update.
* modules/spawn: New file.
2024-12-27 23:16:16 +01:00
Bruno Haible 6f6cc5e059 Use the translation domain "gnulib".
* lib/argmatch.c (_): Use translation domain "gnulib".
* lib/bitset/stats.c (_): Likewise.
* lib/c-stack.c (_): Likewise.
* lib/clean-temp.c (_): Likewise.
* lib/clean-temp-simple.c (_): Likewise.
* lib/closein.c (_): Likewise.
* lib/closeout.c (_): Likewise.
* lib/copy-acl.c (_): Likewise.
* lib/copy-file.c (_): Likewise.
* lib/csharpcomp.c (_): Likewise.
* lib/csharpexec.c (_): Likewise.
* lib/cygpath.c (_): Likewise.
* lib/dfa.c (_): Likewise.
* lib/error.c (_): Likewise.
* lib/execute.c (_): Likewise.
* lib/gai_strerror.c (_): Likewise.
* lib/getaddrinfo.c (_): Likewise.
* lib/getopt.c (_): Likewise.
* lib/javacomp.c (_): Likewise.
* lib/javaexec.c (_): Likewise.
* lib/javaversion.c (_): Likewise.
* lib/mkdir-p.c (_): Likewise.
* lib/obstack.c (_) [!_LIBC]: Likewise.
* lib/openat-die.c (_): Likewise.
* lib/os2-spawn.c (_): Likewise.
* lib/pagealign_alloc.c (_): Likewise.
* lib/parse-datetime.y (_): Likewise.
* lib/pipe-filter-gi.c (_): Likewise.
* lib/pipe-filter-ii.c (_): Likewise.
* lib/quotearg.c (_): Likewise.
* lib/regex_internal.h (_): Likewise.
* lib/rpmatch.c (_): Likewise.
* lib/set-acl.c (_): Likewise.
* lib/sigpipe-die.c (_): Likewise.
* lib/spawn-pipe.c (_): Likewise.
* lib/strsignal.c (_) [!_LIBC]: Likewise.
* lib/timevar.c (_): Likewise.
* lib/unicodeio.c (_): Likewise.
* lib/userspec.c (_): Likewise.
* lib/version-etc.c (_): Likewise.
* lib/wait-process.c (_): Likewise.
* lib/xalloc-die.c (_): Likewise.
* lib/xbinary-io.c (_): Likewise.
* lib/xfreopen.c (_): Likewise.
* lib/xmemcoll.c (_): Likewise.
* lib/xsetenv.c (_): Likewise.
* lib/xstdopen.c (_): Likewise.
* lib/xstrerror.c (_): Likewise.
* modules/acl (Depends-on): Add gnulib-i18n.
* modules/argmatch (Depends-on): Likewise.
* modules/bitset (Depends-on): Likewise.
* modules/c-stack (Depends-on): Likewise.
* modules/clean-temp (Depends-on): Likewise.
* modules/clean-temp-simple (Depends-on): Likewise.
* modules/closein (Depends-on): Likewise.
* modules/closeout (Depends-on): Likewise.
* modules/copy-file (Depends-on): Likewise.
* modules/csharpcomp (Depends-on): Likewise.
* modules/csharpexec (Depends-on): Likewise.
* modules/cygpath (Depends-on): Likewise.
* modules/dfa (Depends-on): Likewise.
* modules/error (Depends-on): Likewise.
* modules/execute (Depends-on): Likewise.
* modules/getaddrinfo (Depends-on): Likewise.
* modules/getopt-posix (Depends-on): Likewise.
* modules/javacomp (Depends-on): Likewise.
* modules/javaexec (Depends-on): Likewise.
* modules/javaversion (Depends-on): Likewise.
* modules/mkdir-p (Depends-on): Likewise.
* modules/obstack (Depends-on): Likewise.
* modules/openat-die (Depends-on): Likewise.
* modules/pagealign_alloc (Depends-on): Likewise.
* modules/parse-datetime (Depends-on): Likewise.
* modules/pipe-filter-gi (Depends-on): Likewise.
* modules/pipe-filter-ii (Depends-on): Likewise.
* modules/quotearg (Depends-on): Likewise.
* modules/regex (Depends-on): Likewise.
* modules/rpmatch (Depends-on): Likewise.
* modules/sigpipe-die (Depends-on): Likewise.
* modules/spawn-pipe (Depends-on): Likewise.
* modules/strsignal (Depends-on): Likewise.
* modules/timevar (Depends-on): Likewise.
* modules/unicodeio (Depends-on): Likewise.
* modules/userspec (Depends-on): Likewise.
* modules/version-etc (Depends-on): Likewise.
* modules/wait-process (Depends-on): Likewise.
* modules/xalloc-die (Depends-on): Likewise.
* modules/xbinary-io (Depends-on): Likewise.
* modules/xfreopen (Depends-on): Likewise.
* modules/xmemcoll (Depends-on): Likewise.
* modules/xsetenv (Depends-on): Likewise.
* modules/xstdopen (Depends-on): Likewise.
* modules/xstrerror (Depends-on): Likewise.
2024-12-08 18:05:31 +01:00
Bruno Haible 75d95be571 Use the GL_CFLAG_GNULIB_WARNINGS for most AC_LIBOBJ compilation units.
* modules/_Exit (configure.ac): Define an Automake conditional. Remove
the AC_LIBOBJ invocation.
(Makefile.am): Augment lib_SOURCES, guarded by that Automake
conditional.
* modules/accept: Likewise.
* modules/access: Likewise.
* modules/acosf: Likewise.
* modules/acosl: Likewise.
* modules/aligned_alloc: Likewise.
* modules/alphasort: Likewise.
* modules/argz: Likewise.
* modules/asinf: Likewise.
* modules/asinl: Likewise.
* modules/atan2f: Likewise.
* modules/atanf: Likewise.
* modules/atanl: Likewise.
* modules/atexit: Likewise.
* modules/atoll: Likewise.
* modules/bind: Likewise.
* modules/btowc: Likewise.
* modules/c32rtomb: Likewise.
* modules/canonicalize-lgpl: Likewise.
* modules/cbrt: Likewise.
* modules/cbrtf: Likewise.
* modules/cbrtl: Likewise.
* modules/ceil: Likewise.
* modules/ceilf: Likewise.
* modules/ceill: Likewise.
* modules/chdir-long: Likewise.
* modules/chown: Likewise.
* modules/close: Likewise.
* modules/closedir: Likewise.
* modules/cnd: Likewise.
* modules/connect: Likewise.
* modules/copy-file-range: Likewise.
* modules/copysign: Likewise.
* modules/copysignf: Likewise.
* modules/copysignl: Likewise.
* modules/cosf: Likewise.
* modules/coshf: Likewise.
* modules/cosl: Likewise.
* modules/creat: Likewise.
* modules/crypto/gc: Likewise.
* modules/ctime: Likewise.
* modules/dirfd: Likewise.
* modules/dup: Likewise.
* modules/dup2: Likewise.
* modules/duplocale: Likewise.
* modules/error: Likewise.
* modules/euidaccess: Likewise.
* modules/execinfo: Likewise.
* modules/execl: Likewise.
* modules/execle: Likewise.
* modules/execlp: Likewise.
* modules/execv: Likewise.
* modules/execve: Likewise.
* modules/execvp: Likewise.
* modules/execvpe: Likewise.
* modules/exp2: Likewise.
* modules/exp2f: Likewise.
* modules/exp2l: Likewise.
* modules/expf: Likewise.
* modules/expl: Likewise.
* modules/explicit_bzero: Likewise.
* modules/expm1: Likewise.
* modules/expm1f: Likewise.
* modules/expm1l: Likewise.
* modules/fabsf: Likewise.
* modules/fabsl: Likewise.
* modules/faccessat: Likewise.
* modules/fchdir: Likewise.
* modules/fchmodat: Likewise.
* modules/fchownat: Likewise.
* modules/fclose: Likewise.
* modules/fcntl: Likewise.
* modules/fdatasync: Likewise.
* modules/fdopen: Likewise.
* modules/fdopendir: Likewise.
* modules/fflush: Likewise.
* modules/ffs: Likewise.
* modules/ffsl: Likewise.
* modules/ffsll: Likewise.
* modules/fileblocks: Likewise.
* modules/float: Likewise.
* modules/flock: Likewise.
* modules/floor: Likewise.
* modules/floorf: Likewise.
* modules/floorl: Likewise.
* modules/fma: Likewise.
* modules/fmaf: Likewise.
* modules/fmal: Likewise.
* modules/fmod: Likewise.
* modules/fmodf: Likewise.
* modules/fmodl: Likewise.
* modules/forkpty: Likewise.
* modules/fpending: Likewise.
* modules/fpurge: Likewise.
* modules/freadable: Likewise.
* modules/freadahead: Likewise.
* modules/freadptr: Likewise.
* modules/free-posix: Likewise.
* modules/freopen: Likewise.
* modules/frexpf: Likewise.
* modules/fseek: Likewise.
* modules/fseeko: Likewise.
* modules/fseterr: Likewise.
* modules/fstat: Likewise.
* modules/fstatat: Likewise.
* modules/fsusage: Likewise.
* modules/fsync: Likewise.
* modules/ftell: Likewise.
* modules/ftello: Likewise.
* modules/ftruncate: Likewise.
* modules/fts: Likewise.
* modules/futimens: Likewise.
* modules/fwritable: Likewise.
* modules/fwriting: Likewise.
* modules/getaddrinfo: Likewise.
* modules/getcwd: Likewise.
* modules/getcwd-lgpl: Likewise.
* modules/getdelim: Likewise.
* modules/getdomainname: Likewise.
* modules/getdtablesize: Likewise.
* modules/getentropy: Likewise.
* modules/getgroups: Likewise.
* modules/gethostname: Likewise.
* modules/getline: Likewise.
* modules/getloadavg: Likewise.
* modules/getlogin: Likewise.
* modules/getlogin_r: Likewise.
* modules/getopt-posix: Likewise.
* modules/getpagesize: Likewise.
* modules/getpeername: Likewise.
* modules/getrandom: Likewise.
* modules/getrusage: Likewise.
* modules/getsockname: Likewise.
* modules/getsockopt: Likewise.
* modules/getsubopt: Likewise.
* modules/gettimeofday: Likewise.
* modules/getumask: Likewise.
* modules/getusershell: Likewise.
* modules/glob: Likewise.
* modules/grantpt: Likewise.
* modules/group-member: Likewise.
* modules/hypot: Likewise.
* modules/hypotf: Likewise.
* modules/hypotl: Likewise.
* modules/iconv_open: Likewise.
* modules/ilogb: Likewise.
* modules/ilogbf: Likewise.
* modules/ilogbl: Likewise.
* modules/imaxabs: Likewise.
* modules/imaxdiv: Likewise.
* modules/inet_ntop: Likewise.
* modules/inet_pton: Likewise.
* modules/ioctl: Likewise.
* modules/isapipe: Likewise.
* modules/isatty: Likewise.
* modules/isblank: Likewise.
* modules/isfinite: Likewise.
* modules/isinf: Likewise.
* modules/iswblank: Likewise.
* modules/iswctype: Likewise.
* modules/iswdigit: Likewise.
* modules/iswxdigit: Likewise.
* modules/lchmod: Likewise.
* modules/lchown: Likewise.
* modules/ldexpf: Likewise.
* modules/ldexpl: Likewise.
* modules/libgmp: Likewise.
* modules/link: Likewise.
* modules/linkat: Likewise.
* modules/listen: Likewise.
* modules/localeconv: Likewise.
* modules/localtime: Likewise.
* modules/log: Likewise.
* modules/log10: Likewise.
* modules/log10f: Likewise.
* modules/log10l: Likewise.
* modules/log1p: Likewise.
* modules/log1pf: Likewise.
* modules/log1pl: Likewise.
* modules/log2: Likewise.
* modules/log2f: Likewise.
* modules/log2l: Likewise.
* modules/logb: Likewise.
* modules/logbf: Likewise.
* modules/logbl: Likewise.
* modules/logf: Likewise.
* modules/login_tty: Likewise.
* modules/logl: Likewise.
* modules/lseek: Likewise.
* modules/lstat: Likewise.
* modules/mbrlen: Likewise.
* modules/mbrtoc32: Likewise.
* modules/mbrtowc: Likewise.
* modules/mbsinit: Likewise.
* modules/mbsnrtowcs: Likewise.
* modules/mbsrtowcs: Likewise.
* modules/mbtowc: Likewise.
* modules/memalign: Likewise.
* modules/memchr: Likewise.
* modules/memcmp: Likewise.
* modules/memcpy: Likewise.
* modules/memmove: Likewise.
* modules/mempcpy: Likewise.
* modules/memrchr: Likewise.
* modules/memset: Likewise.
* modules/mkdir: Likewise.
* modules/mkdirat: Likewise.
* modules/mkdtemp: Likewise.
* modules/mkfifo: Likewise.
* modules/mkfifoat: Likewise.
* modules/mknod: Likewise.
* modules/mkostemp: Likewise.
* modules/mkostemps: Likewise.
* modules/mkstemp: Likewise.
* modules/mkstemps: Likewise.
* modules/modf: Likewise.
* modules/modff: Likewise.
* modules/modfl: Likewise.
* modules/mountlist: Likewise.
* modules/msvc-inval: Likewise.
* modules/msvc-nothrow: Likewise.
* modules/mtx: Likewise.
* modules/nanosleep: Likewise.
* modules/nl_langinfo: Likewise.
* modules/obstack: Likewise.
* modules/open: Likewise.
* modules/openat: Likewise.
* modules/opendir: Likewise.
* modules/openpty: Likewise.
* modules/pclose: Likewise.
* modules/perror: Likewise.
* modules/pipe-posix: Likewise.
* modules/poll: Likewise.
* modules/popen: Likewise.
* modules/posix_memalign: Likewise.
* modules/posix_openpt: Likewise.
* modules/posix_spawn: Likewise.
* modules/posix_spawn-internal: Likewise.
* modules/posix_spawn_file_actions_addchdir: Likewise.
* modules/posix_spawn_file_actions_addclose: Likewise.
* modules/posix_spawn_file_actions_adddup2: Likewise.
* modules/posix_spawn_file_actions_addfchdir: Likewise.
* modules/posix_spawn_file_actions_addopen: Likewise.
* modules/posix_spawn_file_actions_destroy: Likewise.
* modules/posix_spawn_file_actions_init: Likewise.
* modules/posix_spawnattr_destroy: Likewise.
* modules/posix_spawnattr_getflags: Likewise.
* modules/posix_spawnattr_getpgroup: Likewise.
* modules/posix_spawnattr_getschedparam: Likewise.
* modules/posix_spawnattr_getschedpolicy: Likewise.
* modules/posix_spawnattr_getsigdefault: Likewise.
* modules/posix_spawnattr_getsigmask: Likewise.
* modules/posix_spawnattr_init: Likewise.
* modules/posix_spawnattr_setflags: Likewise.
* modules/posix_spawnattr_setpgroup: Likewise.
* modules/posix_spawnattr_setschedparam: Likewise.
* modules/posix_spawnattr_setschedpolicy: Likewise.
* modules/posix_spawnattr_setsigdefault: Likewise.
* modules/posix_spawnattr_setsigmask: Likewise.
* modules/posix_spawnp: Likewise.
* modules/powf: Likewise.
* modules/pread: Likewise.
* modules/pselect: Likewise.
* modules/pthread-cond: Likewise.
* modules/pthread-mutex: Likewise.
* modules/pthread-once: Likewise.
* modules/pthread-rwlock: Likewise.
* modules/pthread-spin: Likewise.
* modules/pthread-thread: Likewise.
* modules/pthread-tss: Likewise.
* modules/pthread_mutex_timedlock: Likewise.
* modules/pthread_sigmask: Likewise.
* modules/ptsname: Likewise.
* modules/ptsname_r: Likewise.
* modules/putenv: Likewise.
* modules/pwrite: Likewise.
* modules/qsort_r: Likewise.
* modules/raise: Likewise.
* modules/random: Likewise.
* modules/random_r: Likewise.
* modules/rawmemchr: Likewise.
* modules/read: Likewise.
* modules/readdir: Likewise.
* modules/readline: Likewise.
* modules/readlink: Likewise.
* modules/readlinkat: Likewise.
* modules/readutmp: Likewise.
* modules/reallocarray: Likewise.
* modules/recv: Likewise.
* modules/recvfrom: Likewise.
* modules/regex: Likewise.
* modules/relocatable-prog: Likewise.
* modules/remainder: Likewise.
* modules/remainderf: Likewise.
* modules/remainderl: Likewise.
* modules/remove: Likewise.
* modules/rename: Likewise.
* modules/renameat: Likewise.
* modules/rewinddir: Likewise.
* modules/rint: Likewise.
* modules/rintf: Likewise.
* modules/rintl: Likewise.
* modules/rmdir: Likewise.
* modules/round: Likewise.
* modules/roundf: Likewise.
* modules/roundl: Likewise.
* modules/rpmatch: Likewise.
* modules/scandir: Likewise.
* modules/sched_yield: Likewise.
* modules/secure_getenv: Likewise.
* modules/select: Likewise.
* modules/selinux-h: Likewise.
* modules/send: Likewise.
* modules/sendto: Likewise.
* modules/setenv: Likewise.
* modules/sethostname: Likewise.
* modules/setlocale: Likewise.
* modules/setlocale-null: Likewise.
* modules/setsockopt: Likewise.
* modules/shutdown: Likewise.
* modules/sig2str: Likewise.
* modules/sigabbrev_np: Likewise.
* modules/sigaction: Likewise.
* modules/sigdescr_np: Likewise.
* modules/signbit: Likewise.
* modules/sigprocmask: Likewise.
* modules/sinf: Likewise.
* modules/sinhf: Likewise.
* modules/sinl: Likewise.
* modules/sleep: Likewise.
* modules/socket: Likewise.
* modules/spawn-pipe: Likewise.
* modules/sqrtf: Likewise.
* modules/sqrtl: Likewise.
* modules/stat: Likewise.
* modules/stdio: Likewise.
* modules/stpcpy: Likewise.
* modules/stpncpy: Likewise.
* modules/strcase: Likewise.
* modules/strchrnul: Likewise.
* modules/strcspn: Likewise.
* modules/strdup-posix: Likewise.
* modules/strerror: Likewise.
* modules/strerror-override: Likewise.
* modules/strerrorname_np: Likewise.
* modules/strfmon_l: Likewise.
* modules/strftime-fixes: Likewise.
* modules/strncat: Likewise.
* modules/strndup: Likewise.
* modules/strnlen: Likewise.
* modules/strpbrk: Likewise.
* modules/strptime: Likewise.
* modules/strsep: Likewise.
* modules/strsignal: Likewise.
* modules/strtod: Likewise.
* modules/strtoimax: Likewise.
* modules/strtok_r: Likewise.
* modules/strtol: Likewise.
* modules/strtold: Likewise.
* modules/strtoll: Likewise.
* modules/strtoul: Likewise.
* modules/strtoull: Likewise.
* modules/strtoumax: Likewise.
* modules/strverscmp: Likewise.
* modules/symlink: Likewise.
* modules/symlinkat: Likewise.
* modules/tanf: Likewise.
* modules/tanhf: Likewise.
* modules/tanl: Likewise.
* modules/tcgetsid: Likewise.
* modules/thrd: Likewise.
* modules/time_r: Likewise.
* modules/time_rz: Likewise.
* modules/timegm: Likewise.
* modules/times: Likewise.
* modules/timespec_get: Likewise.
* modules/timespec_getres: Likewise.
* modules/tmpfile: Likewise.
* modules/towctrans: Likewise.
* modules/trunc: Likewise.
* modules/truncate: Likewise.
* modules/truncf: Likewise.
* modules/truncl: Likewise.
* modules/tsearch: Likewise.
* modules/tss: Likewise.
* modules/ttyname_r: Likewise.
* modules/tzset: Likewise.
* modules/uname: Likewise.
* modules/unlink: Likewise.
* modules/unlinkat: Likewise.
* modules/unlockpt: Likewise.
* modules/unsetenv: Likewise.
* modules/usleep: Likewise.
* modules/utime: Likewise.
* modules/utimensat: Likewise.
* modules/waitpid: Likewise.
* modules/wcpcpy: Likewise.
* modules/wcpncpy: Likewise.
* modules/wcrtomb: Likewise.
* modules/wcscasecmp: Likewise.
* modules/wcscat: Likewise.
* modules/wcschr: Likewise.
* modules/wcscmp: Likewise.
* modules/wcscoll: Likewise.
* modules/wcscpy: Likewise.
* modules/wcscspn: Likewise.
* modules/wcsdup: Likewise.
* modules/wcsftime: Likewise.
* modules/wcslen: Likewise.
* modules/wcsncasecmp: Likewise.
* modules/wcsncat: Likewise.
* modules/wcsncmp: Likewise.
* modules/wcsncpy: Likewise.
* modules/wcsnlen: Likewise.
* modules/wcsnrtombs: Likewise.
* modules/wcspbrk: Likewise.
* modules/wcsrchr: Likewise.
* modules/wcsrtombs: Likewise.
* modules/wcsspn: Likewise.
* modules/wcsstr: Likewise.
* modules/wcstok: Likewise.
* modules/wcswidth: Likewise.
* modules/wcsxfrm: Likewise.
* modules/wctob: Likewise.
* modules/wctomb: Likewise.
* modules/wctrans: Likewise.
* modules/wctype: Likewise.
* modules/wcwidth: Likewise.
* modules/windows-cond: Likewise.
* modules/windows-mutex: Likewise.
* modules/windows-once: Likewise.
* modules/windows-recmutex: Likewise.
* modules/windows-rwlock: Likewise.
* modules/windows-spawn: Likewise.
* modules/windows-spin: Likewise.
* modules/windows-thread: Likewise.
* modules/windows-timedmutex: Likewise.
* modules/windows-timedrecmutex: Likewise.
* modules/windows-timedrwlock: Likewise.
* modules/windows-tls: Likewise.
* modules/wmemchr: Likewise.
* modules/wmemcmp: Likewise.
* modules/wmemcpy: Likewise.
* modules/wmemmove: Likewise.
* modules/wmempcpy: Likewise.
* modules/wmemset: Likewise.
* modules/write: Likewise.
2022-01-09 17:17:56 +01:00
Paul Eggert 5b3a6f94f8 free-posix: use more often in other modules
This lets us simplify cleanup code that calls ‘free’.
* lib/amemxfrm.c (amemxfrm):
* lib/areadlink-with-size.c (areadlink_with_size):
* lib/areadlinkat-with-size.c (areadlinkat_with_size):
* lib/astrxfrm.c (astrxfrm):
* lib/dprintf.c (dprintf):
* lib/execute.c (execute):
* lib/execvpe.c (execvpe):
* lib/fchdir.c (get_name):
* lib/file-has-acl.c (file_has_acl):
* lib/fprintf.c (fprintf):
* lib/getcwd-lgpl.c (rpl_getcwd):
* lib/getgroups.c (rpl_getgroups):
* lib/link.c (link, rpl_link):
* lib/linkat.c (link_immediate, link_follow, linkat_follow):
* lib/localename.c (newlocale, duplocale):
* lib/mgetgroups.c (mgetgroups):
* lib/mountlist.c (read_file_system_list):
* lib/pipe-filter-gi.c (pipe_filter_gi_close):
* lib/putenv.c (_unsetenv, putenv):
* lib/read-file.c (read_file):
* lib/rename.c (rpl_rename):
* lib/savedir.c (streamsavedir, savedir):
* lib/spawni.c (do_open, __spawni):
* lib/spawn-pipe.c (create_pipe):
* lib/striconv.c (mem_cd_iconv, str_cd_iconv, str_iconv):
* lib/striconveh.c (mem_cd_iconveh_internal, str_cd_iconveh)
(mem_iconveh, str_iconveh):
* lib/supersede.c (open_supersede, close_supersede):
* lib/vasnprintf.c (VASNPRINTF):
* lib/vdprintf.c (vdprintf):
* lib/vfprintf.c (vfprintf):
* lib/wcscoll-impl.h (wcscoll):
* lib/wcsxfrm-impl.h (wcsxfrm):
* lib/xgetdomainname.c (xgetdomainname):
* lib/xgethostname.c (xgethostname):
Simplify by assuming that ‘free’ preserves errno.
* lib/localename.c: Do not include errno.h.
* modules/amemxfrm, modules/areadlink-with-size:
* modules/areadlinkat-with-size, modules/astrxfrm:
* modules/c-vasnprintf, modules/dprintf, modules/execute:
* modules/execvpe, modules/fchdir, modules/file-has-acl:
* modules/fprintf-posix, modules/getcwd-lgpl, modules/getgroups:
* modules/link, modules/linkat, modules/localename:
* modules/mgetgroups, modules/mountlist, modules/pipe-filter-gi:
* modules/posix_spawn-internal, modules/putenv, modules/read-file:
* modules/rename, modules/savedir, modules/spawn-pipe:
* modules/striconv, modules/striconveh, modules/supersede:
* modules/vasnprintf, modules/vdprintf, modules/vfprintf-posix:
* modules/wcscoll, modules/wcsxfrm, modules/xgetdomainname:
* modules/xgethostname:
Depend on free-posix.
2021-03-25 12:44:25 -07:00
Bruno Haible 1504c11f8a spawn-pipe: Use posix_spawn by default on native Windows.
* lib/spawn-pipe.c (SPAWN_PIPE_IMPL_AVOID_POSIX_SPAWN): New macro.
(create_pipe): Use it to decide among the two possible implementations.
* modules/spawn-pipe (Depends-on): Add posix_spawnattr_setpgroup.
2020-12-25 02:18:55 +01:00
Bruno Haible 800920c4b3 execute, spawn-pipe: Fix memory leak on native Windows.
* lib/windows-spawn.h (prepare_spawn): Add a second parameter.
* lib/windows-spawn.c: Don't include xalloc.h.
(quoted_arg_length, quoted_arg_string): New functions, extracted from
prepare_spawn.
(prepare_spawn): Use malloc instead of XNMALLOC. Allocate memory for all
elements of *new_argv together.
* modules/windows-spawn (Depends-on): Remove xalloc. Add malloc-posix.
* lib/os2-spawn.h (prepare_spawn): Add a second parameter.
* lib/os2-spawn.c: Don't include xalloc.h.
(prepare_spawn): Use malloc instead of XNMALLOC. Allocate memory for all
elements of *new_argv together.
* lib/execute.c: Include xalloc.h.
(execute): Check return value of prepare_spawn. Free the memory
allocated by prepare_spawn.
* modules/execute (Depends-on): Add xalloc-die.
* lib/spawn-pipe.c: Include xalloc.h.
(create_pipe): Check return value of prepare_spawn. Free the memory
allocated by prepare_spawn.
* modules/spawn-pipe (Depends-on): Add xalloc-die.
2020-12-11 00:52:28 +01:00
Bruno Haible 0949c47c03 spawn-pipe: Allow caller to specify directory for the subprocess.
* lib/spawn-pipe.h (create_pipe_out, create_pipe_in, create_pipe_bidi):
Add directory argument.
* lib/spawn-pipe.c: Include canonicalize.h, filename.h, findprog.h.
(create_pipe): Add directory argument. If specified, resolve the program
file name and make it absolute, first. Pass the directory to spawnpvech
and posix_spawn_file_actions_addchdir.
(create_pipe_bidi, create_pipe_in, create_pipe_out): Add directory
argument.
* modules/spawn-pipe (Depends-on): Add canonicalize, filename,
findprog-in, posix_spawn, posix_spawn_file_actions_addchdir.
* tests/test-spawn-pipe-main.c (test_pipe): Update.
* NEWS: Mention the change.
* lib/csharpcomp.c (compile_csharp_using_mono,
compile_csharp_using_sscli): Update.
* lib/javacomp.c (is_envjavac_gcj, is_envjavac_gcj43, is_gcj_present,
is_gcj_43): Update.
* lib/javaversion.c (execute_and_read_line): Update.
* lib/pipe-filter-gi.c (pipe_filter_gi_create): Update.
* lib/pipe-filter-ii.c (pipe_filter_ii_execute): Update.
2020-12-02 17:52:00 +01:00
Bruno Haible bf8d4cb6e5 spawn-pipe: Fix handling of OS/2 kLIBC.
Reported by KO Myung-Hun <komh78@gmail.com> in
<https://lists.gnu.org/archive/html/bug-gnulib/2020-12/msg00005.html>.

* modules/spawn-pipe (configure.ac): Use the common idiom for
recognizing the OS/2 operating system.
2020-12-01 19:33:52 +01:00
Bruno Haible c5388bad32 execute, spawn-pipe: Make multithread-safe on native Windows.
* lib/windows-spawn.h: Include <stdint.h>, <windows.h>.
(dup_safer_noinherit, undup_safer_noinherit): Remove declarations.
(spawnpvech): New declaration.
* lib/windows-spawn.c: Include <stdio.h>, <process.h>, findprog.h.
Don't include <unistd.h>, cloexec.h, error.h, gettext.h.
(_): Remove macro.
(dup_noinherit, fd_safer_noinherit, dup_safer_noinherit,
undup_safer_noinherit): Remove functions.
(spawnpvech): New function.
* modules/windows-spawn (Depends-on): Add findprog-in, stdint. Remove
cloexec, dup2, error, gettext-h.
* lib/execute.c: Include msvc-nothrow.h.
(execute) [WIN32]: Use _get_osfhandle, spawnpvech instead of _spawnvpe.
* lib/spawn-pipe.c: Include msvc-nothrow.h.
(create_pipe) [WIN32]: Use _get_osfhandle, DuplicateHandle, spawnpvech
instead of _spawnvpe.
* modules/execute (Depends-on): Add msvc-nothrow.
* modules/spawn-pipe (Depends-on): Likewise.
2020-11-30 17:58:57 +01:00
Bruno Haible 093ce86587 spawn-pipe: Fix build on OS/2 kLIBC (regression 2020-11-28).
* lib/os2-spawn.h: New file, based on lib/windows-spawn.h.
* lib/os2-spawn.c: New file, based on lib/windows-spawn.c.
* lib/spawn-pipe.c: On OS/2 kLIBC, include "os2-spawn.h".
* lib/windows-spawn.c: Remove modifications for kLIBC.
* modules/spawn-pipe (Files): Add the new files.
(configure.ac): Arrange to compile os2-spawn.c on OS/2.
2020-11-29 18:49:19 +01:00
Bruno Haible a27e759a67 windows-spawn: New module.
* lib/windows-spawn.h: Renamed from lib/w32spawn.h. Remove
implementations.
* lib/windows-spawn.c: Renamed from lib/w32spawn.h.
* modules/windows-spawn: New file.
* lib/execute.c: Include "windows-spawn.h" instead of "w32spawn.h".
* lib/spawn-pipe.c: Likewise.
* modules/execute (Files): Remove lib/w32spawn.h.
(Depends-on): Add windows-spawn. Remove cloexec, msvc-nothrow, strpbrk,
xalloc.
(Makefile.am): Remove w32spawn.h from lib_SOURCES.
* modules/spawn-pipe (Files): Remove lib/w32spawn.h.
(Depends-on): Add windows-spawn. Remove cloexec, msvc-nothrow, strpbrk,
xalloc.
(Makefile.am): Remove w32spawn.h from lib_SOURCES.
2020-11-28 10:46:23 +01:00
Bruno Haible 2918d4a199 Fix missing module dependencies to 'xalloc' (regression 2020-10-19).
* modules/xvasprintf (Depends-on): Add xalloc.
* modules/pipe-filter-gi (Depends-on): Likewise.
* modules/execute (Depends-on): Likewise, for w32spawn.h.
* modules/spawn-pipe (Depends-on): Likewise.
2020-11-23 02:34:39 +01:00
Bruno Haible c1d6485911 Fix link errors on AIX.
* modules/clean-temp (Link): Link with $(LIBTHREAD).
* modules/getumask (Link): Link with $(LIBTHREAD).
* modules/getumask-tests (Makefile.am): Link test-getumask with
$(LIBTHREAD).
* modules/supersede (Link): Link with $(LIBTHREAD).
* modules/supersede-tests (Makefile.am): Link test-supersede with
$(LIBTHREAD).
* modules/fatal-signal (Link): New section.
* modules/execute (Link): New section.
* modules/csharpexec (Link): Link with $(LIBTHREAD).
* modules/javaexec (Link): Link with $(LIBTHREAD).
* modules/spawn-pipe (Link): New section.
* modules/spawn-pipe-tests (Makefile.am): Link test-spawn-pipe-main with
$(LIBTHREAD).
* modules/csharpcomp (Link): Link with $(LIBTHREAD).
* modules/javacomp (Link): Link with $(LIBTHREAD).
* modules/javaversion (Link): Link with $(LIBTHREAD).
* modules/pipe-filter-gi (Link): New section.
* modules/pipe-filter-gi-tests (Makefile.am): Link test-pipe-filter-gi1,
test-pipe-filter-gi2-main with $(LIBTHREAD).
* modules/pipe-filter-ii (Link): New section.
* modules/pipe-filter-ii-tests (Makefile.am): Link test-pipe-filter-ii1,
test-pipe-filter-ii2-main with $(LIBTHREAD).
* modules/term-style-control (Link): New section.
* modules/term-style-control-tests (Makefile.am): Link
test-term-style-control-hello, test-term-style-control-yes with
$(LIBTHREAD).
* modules/wait-process (Link): New section.
* modules/nonblocking-pipe-tests (Makefile.am): Link
test-nonblocking-pipe-main with $(LIBTHREAD).
* modules/nonblocking-socket-tests (Makefile.am): Link
test-nonblocking-socket-main with $(LIBTHREAD).
2020-11-17 23:24:12 +01:00
Paul Eggert ed6374814e Bruno Haible has stepped down as maintainer.
See Karl Berry in:
http://lists.gnu.org/archive/html/bug-gnulib/2014-07/msg00004.html
Daiki Ueno has volunteered to maintain libunistring; see:
http://lists.gnu.org/archive/html/bug-gnulib/2014-07/msg00005.html
* modules/gen-uni-tables, modules/libunistring:
* modules/libunistring-optional, modules/ucs4-utf16, modules/ucs4-utf8:
* modules/unicase/base, modules/unicase/cased:
* modules/unicase/empty-prefix-context:
* modules/unicase/empty-suffix-context, modules/unicase/ignorable:
* modules/unicase/locale-language, modules/unicase/special-casing:
* modules/unicase/tocasefold, modules/unicase/tolower:
* modules/unicase/totitle, modules/unicase/toupper:
* modules/unicase/u16-casecmp, modules/unicase/u16-casecoll:
* modules/unicase/u16-casefold, modules/unicase/u16-casemap:
* modules/unicase/u16-casexfrm, modules/unicase/u16-ct-casefold:
* modules/unicase/u16-ct-tolower, modules/unicase/u16-ct-totitle:
* modules/unicase/u16-ct-toupper, modules/unicase/u16-is-cased:
* modules/unicase/u16-is-casefolded, modules/unicase/u16-is-invariant:
* modules/unicase/u16-is-lowercase, modules/unicase/u16-is-titlecase:
* modules/unicase/u16-is-uppercase, modules/unicase/u16-prefix-context:
* modules/unicase/u16-suffix-context, modules/unicase/u16-tolower:
* modules/unicase/u16-totitle, modules/unicase/u16-toupper:
* modules/unicase/u32-casecmp, modules/unicase/u32-casecoll:
* modules/unicase/u32-casefold, modules/unicase/u32-casemap:
* modules/unicase/u32-casexfrm, modules/unicase/u32-ct-casefold:
* modules/unicase/u32-ct-tolower, modules/unicase/u32-ct-totitle:
* modules/unicase/u32-ct-toupper, modules/unicase/u32-is-cased:
* modules/unicase/u32-is-casefolded, modules/unicase/u32-is-invariant:
* modules/unicase/u32-is-lowercase, modules/unicase/u32-is-titlecase:
* modules/unicase/u32-is-uppercase, modules/unicase/u32-prefix-context:
* modules/unicase/u32-suffix-context, modules/unicase/u32-tolower:
* modules/unicase/u32-totitle, modules/unicase/u32-toupper:
* modules/unicase/u8-casecmp, modules/unicase/u8-casecoll:
* modules/unicase/u8-casefold, modules/unicase/u8-casemap:
* modules/unicase/u8-casexfrm, modules/unicase/u8-ct-casefold:
* modules/unicase/u8-ct-tolower, modules/unicase/u8-ct-totitle:
* modules/unicase/u8-ct-toupper, modules/unicase/u8-is-cased:
* modules/unicase/u8-is-casefolded, modules/unicase/u8-is-invariant:
* modules/unicase/u8-is-lowercase, modules/unicase/u8-is-titlecase:
* modules/unicase/u8-is-uppercase, modules/unicase/u8-prefix-context:
* modules/unicase/u8-suffix-context, modules/unicase/u8-tolower:
* modules/unicase/u8-totitle, modules/unicase/u8-toupper:
* modules/unicase/ulc-casecmp, modules/unicase/ulc-casecoll:
* modules/unicase/ulc-casexfrm, modules/unicodeio:
* modules/uniconv/base, modules/uniconv/u16-conv-from-enc:
* modules/uniconv/u16-conv-to-enc:
* modules/uniconv/u16-strconv-from-enc:
* modules/uniconv/u16-strconv-from-locale:
* modules/uniconv/u16-strconv-to-enc:
* modules/uniconv/u16-strconv-to-locale:
* modules/uniconv/u32-conv-from-enc, modules/uniconv/u32-conv-to-enc:
* modules/uniconv/u32-strconv-from-enc:
* modules/uniconv/u32-strconv-from-locale:
* modules/uniconv/u32-strconv-to-enc:
* modules/uniconv/u32-strconv-to-locale:
* modules/uniconv/u8-conv-from-enc, modules/uniconv/u8-conv-to-enc:
* modules/uniconv/u8-strconv-from-enc:
* modules/uniconv/u8-strconv-from-locale:
* modules/uniconv/u8-strconv-to-enc:
* modules/uniconv/u8-strconv-to-locale, modules/unictype/base:
* modules/unictype/bidicategory-all:
* modules/unictype/bidicategory-byname:
* modules/unictype/bidicategory-name, modules/unictype/bidicategory-of:
* modules/unictype/bidicategory-test, modules/unictype/bidiclass-all:
* modules/unictype/bidiclass-byname:
* modules/unictype/bidiclass-longname, modules/unictype/bidiclass-name:
* modules/unictype/bidiclass-of, modules/unictype/bidiclass-test:
* modules/unictype/block-all, modules/unictype/block-list:
* modules/unictype/block-of, modules/unictype/block-test:
* modules/unictype/category-C, modules/unictype/category-Cc:
* modules/unictype/category-Cf, modules/unictype/category-Cn:
* modules/unictype/category-Co, modules/unictype/category-Cs:
* modules/unictype/category-L, modules/unictype/category-LC:
* modules/unictype/category-Ll, modules/unictype/category-Lm:
* modules/unictype/category-Lo, modules/unictype/category-Lt:
* modules/unictype/category-Lu, modules/unictype/category-M:
* modules/unictype/category-Mc, modules/unictype/category-Me:
* modules/unictype/category-Mn, modules/unictype/category-N:
* modules/unictype/category-Nd, modules/unictype/category-Nl:
* modules/unictype/category-No, modules/unictype/category-P:
* modules/unictype/category-Pc, modules/unictype/category-Pd:
* modules/unictype/category-Pe, modules/unictype/category-Pf:
* modules/unictype/category-Pi, modules/unictype/category-Po:
* modules/unictype/category-Ps, modules/unictype/category-S:
* modules/unictype/category-Sc, modules/unictype/category-Sk:
* modules/unictype/category-Sm, modules/unictype/category-So:
* modules/unictype/category-Z, modules/unictype/category-Zl:
* modules/unictype/category-Zp, modules/unictype/category-Zs:
* modules/unictype/category-all, modules/unictype/category-and:
* modules/unictype/category-and-not, modules/unictype/category-byname:
* modules/unictype/category-longname, modules/unictype/category-name:
* modules/unictype/category-none, modules/unictype/category-of:
* modules/unictype/category-or, modules/unictype/category-test:
* modules/unictype/category-test-withtable:
* modules/unictype/combining-class:
* modules/unictype/combining-class-all:
* modules/unictype/combining-class-byname:
* modules/unictype/combining-class-longname:
* modules/unictype/combining-class-name, modules/unictype/ctype-alnum:
* modules/unictype/ctype-alpha, modules/unictype/ctype-blank:
* modules/unictype/ctype-cntrl, modules/unictype/ctype-digit:
* modules/unictype/ctype-graph, modules/unictype/ctype-lower:
* modules/unictype/ctype-print, modules/unictype/ctype-punct:
* modules/unictype/ctype-space, modules/unictype/ctype-upper:
* modules/unictype/ctype-xdigit, modules/unictype/decimal-digit:
* modules/unictype/digit, modules/unictype/joininggroup-all:
* modules/unictype/joininggroup-byname:
* modules/unictype/joininggroup-name, modules/unictype/joininggroup-of:
* modules/unictype/joiningtype-all:
* modules/unictype/joiningtype-byname:
* modules/unictype/joiningtype-longname:
* modules/unictype/joiningtype-name, modules/unictype/joiningtype-of:
* modules/unictype/mirror, modules/unictype/numeric:
* modules/unictype/property-all, modules/unictype/property-alphabetic:
* modules/unictype/property-ascii-hex-digit:
* modules/unictype/property-bidi-arabic-digit:
* modules/unictype/property-bidi-arabic-right-to-left:
* modules/unictype/property-bidi-block-separator:
* modules/unictype/property-bidi-boundary-neutral:
* modules/unictype/property-bidi-common-separator:
* modules/unictype/property-bidi-control:
* modules/unictype/property-bidi-embedding-or-override:
* modules/unictype/property-bidi-eur-num-separator:
* modules/unictype/property-bidi-eur-num-terminator:
* modules/unictype/property-bidi-european-digit:
* modules/unictype/property-bidi-hebrew-right-to-left:
* modules/unictype/property-bidi-left-to-right:
* modules/unictype/property-bidi-non-spacing-mark:
* modules/unictype/property-bidi-other-neutral:
* modules/unictype/property-bidi-pdf:
* modules/unictype/property-bidi-segment-separator:
* modules/unictype/property-bidi-whitespace:
* modules/unictype/property-byname:
* modules/unictype/property-case-ignorable:
* modules/unictype/property-cased:
* modules/unictype/property-changes-when-casefolded:
* modules/unictype/property-changes-when-casemapped:
* modules/unictype/property-changes-when-lowercased:
* modules/unictype/property-changes-when-titlecased:
* modules/unictype/property-changes-when-uppercased:
* modules/unictype/property-combining:
* modules/unictype/property-composite:
* modules/unictype/property-currency-symbol:
* modules/unictype/property-dash:
* modules/unictype/property-decimal-digit:
* modules/unictype/property-default-ignorable-code-point:
* modules/unictype/property-deprecated:
* modules/unictype/property-diacritic:
* modules/unictype/property-extender:
* modules/unictype/property-format-control:
* modules/unictype/property-grapheme-base:
* modules/unictype/property-grapheme-extend:
* modules/unictype/property-grapheme-link:
* modules/unictype/property-hex-digit:
* modules/unictype/property-hyphen:
* modules/unictype/property-id-continue:
* modules/unictype/property-id-start:
* modules/unictype/property-ideographic:
* modules/unictype/property-ids-binary-operator:
* modules/unictype/property-ids-trinary-operator:
* modules/unictype/property-ignorable-control:
* modules/unictype/property-iso-control:
* modules/unictype/property-join-control:
* modules/unictype/property-left-of-pair:
* modules/unictype/property-line-separator:
* modules/unictype/property-logical-order-exception:
* modules/unictype/property-lowercase, modules/unictype/property-math:
* modules/unictype/property-non-break:
* modules/unictype/property-not-a-character:
* modules/unictype/property-numeric:
* modules/unictype/property-other-alphabetic:
* modules/unictype/property-other-default-ignorable-code-point:
* modules/unictype/property-other-grapheme-extend:
* modules/unictype/property-other-id-continue:
* modules/unictype/property-other-id-start:
* modules/unictype/property-other-lowercase:
* modules/unictype/property-other-math:
* modules/unictype/property-other-uppercase:
* modules/unictype/property-paired-punctuation:
* modules/unictype/property-paragraph-separator:
* modules/unictype/property-pattern-syntax:
* modules/unictype/property-pattern-white-space:
* modules/unictype/property-private-use:
* modules/unictype/property-punctuation:
* modules/unictype/property-quotation-mark:
* modules/unictype/property-radical:
* modules/unictype/property-sentence-terminal:
* modules/unictype/property-soft-dotted:
* modules/unictype/property-space:
* modules/unictype/property-terminal-punctuation:
* modules/unictype/property-test, modules/unictype/property-titlecase:
* modules/unictype/property-unassigned-code-value:
* modules/unictype/property-unified-ideograph:
* modules/unictype/property-uppercase:
* modules/unictype/property-variation-selector:
* modules/unictype/property-white-space:
* modules/unictype/property-xid-continue:
* modules/unictype/property-xid-start:
* modules/unictype/property-zero-width, modules/unictype/scripts:
* modules/unictype/scripts-all, modules/unictype/syntax-c-ident:
* modules/unictype/syntax-c-whitespace:
* modules/unictype/syntax-java-ident:
* modules/unictype/syntax-java-whitespace, modules/unigbrk/base:
* modules/unigbrk/u16-grapheme-breaks:
* modules/unigbrk/u16-grapheme-next, modules/unigbrk/u16-grapheme-prev:
* modules/unigbrk/u32-grapheme-breaks:
* modules/unigbrk/u32-grapheme-next, modules/unigbrk/u32-grapheme-prev:
* modules/unigbrk/u8-grapheme-breaks, modules/unigbrk/u8-grapheme-next:
* modules/unigbrk/u8-grapheme-prev, modules/unigbrk/uc-gbrk-prop:
* modules/unigbrk/uc-is-grapheme-break:
* modules/unigbrk/ulc-grapheme-breaks, modules/unilbrk/base:
* modules/unilbrk/tables, modules/unilbrk/u16-possible-linebreaks:
* modules/unilbrk/u16-width-linebreaks:
* modules/unilbrk/u32-possible-linebreaks:
* modules/unilbrk/u32-width-linebreaks:
* modules/unilbrk/u8-possible-linebreaks:
* modules/unilbrk/u8-width-linebreaks, modules/unilbrk/ulc-common:
* modules/unilbrk/ulc-possible-linebreaks:
* modules/unilbrk/ulc-width-linebreaks, modules/uniname/base:
* modules/uniname/uniname, modules/uninorm/base:
* modules/uninorm/canonical-decomposition:
* modules/uninorm/compat-decomposition, modules/uninorm/composition:
* modules/uninorm/decompose-internal, modules/uninorm/decomposing-form:
* modules/uninorm/decomposition, modules/uninorm/decomposition-table:
* modules/uninorm/filter, modules/uninorm/nfc, modules/uninorm/nfd:
* modules/uninorm/nfkc, modules/uninorm/nfkd:
* modules/uninorm/u16-normalize, modules/uninorm/u16-normcmp:
* modules/uninorm/u16-normcoll, modules/uninorm/u16-normxfrm:
* modules/uninorm/u32-normalize, modules/uninorm/u32-normcmp:
* modules/uninorm/u32-normcoll, modules/uninorm/u32-normxfrm:
* modules/uninorm/u8-normalize, modules/uninorm/u8-normcmp:
* modules/uninorm/u8-normcoll, modules/uninorm/u8-normxfrm:
* modules/unistdio/base, modules/unistdio/u-printf-args:
* modules/unistdio/u16-asnprintf, modules/unistdio/u16-asprintf:
* modules/unistdio/u16-printf-parse, modules/unistdio/u16-snprintf:
* modules/unistdio/u16-sprintf, modules/unistdio/u16-u16-asnprintf:
* modules/unistdio/u16-u16-asprintf, modules/unistdio/u16-u16-snprintf:
* modules/unistdio/u16-u16-sprintf:
* modules/unistdio/u16-u16-vasnprintf:
* modules/unistdio/u16-u16-vasprintf:
* modules/unistdio/u16-u16-vsnprintf:
* modules/unistdio/u16-u16-vsprintf, modules/unistdio/u16-vasnprintf:
* modules/unistdio/u16-vasprintf, modules/unistdio/u16-vsnprintf:
* modules/unistdio/u16-vsprintf, modules/unistdio/u32-asnprintf:
* modules/unistdio/u32-asprintf, modules/unistdio/u32-printf-parse:
* modules/unistdio/u32-snprintf, modules/unistdio/u32-sprintf:
* modules/unistdio/u32-u32-asnprintf:
* modules/unistdio/u32-u32-asprintf, modules/unistdio/u32-u32-snprintf:
* modules/unistdio/u32-u32-sprintf:
* modules/unistdio/u32-u32-vasnprintf:
* modules/unistdio/u32-u32-vasprintf:
* modules/unistdio/u32-u32-vsnprintf:
* modules/unistdio/u32-u32-vsprintf, modules/unistdio/u32-vasnprintf:
* modules/unistdio/u32-vasprintf, modules/unistdio/u32-vsnprintf:
* modules/unistdio/u32-vsprintf, modules/unistdio/u8-asnprintf:
* modules/unistdio/u8-asprintf, modules/unistdio/u8-printf-parse:
* modules/unistdio/u8-snprintf, modules/unistdio/u8-sprintf:
* modules/unistdio/u8-u8-asnprintf, modules/unistdio/u8-u8-asprintf:
* modules/unistdio/u8-u8-snprintf, modules/unistdio/u8-u8-sprintf:
* modules/unistdio/u8-u8-vasnprintf, modules/unistdio/u8-u8-vasprintf:
* modules/unistdio/u8-u8-vsnprintf, modules/unistdio/u8-u8-vsprintf:
* modules/unistdio/u8-vasnprintf, modules/unistdio/u8-vasprintf:
* modules/unistdio/u8-vsnprintf, modules/unistdio/u8-vsprintf:
* modules/unistdio/ulc-asnprintf, modules/unistdio/ulc-asprintf:
* modules/unistdio/ulc-fprintf, modules/unistdio/ulc-printf-parse:
* modules/unistdio/ulc-snprintf, modules/unistdio/ulc-sprintf:
* modules/unistdio/ulc-vasnprintf, modules/unistdio/ulc-vasprintf:
* modules/unistdio/ulc-vfprintf, modules/unistdio/ulc-vsnprintf:
* modules/unistdio/ulc-vsprintf, modules/unistr/base:
* modules/unistr/u16-check, modules/unistr/u16-chr:
* modules/unistr/u16-cmp, modules/unistr/u16-cmp2:
* modules/unistr/u16-cpy, modules/unistr/u16-cpy-alloc:
* modules/unistr/u16-endswith, modules/unistr/u16-mblen:
* modules/unistr/u16-mbsnlen, modules/unistr/u16-mbtouc:
* modules/unistr/u16-mbtouc-unsafe, modules/unistr/u16-mbtoucr:
* modules/unistr/u16-move, modules/unistr/u16-next:
* modules/unistr/u16-prev, modules/unistr/u16-set:
* modules/unistr/u16-startswith, modules/unistr/u16-stpcpy:
* modules/unistr/u16-stpncpy, modules/unistr/u16-strcat:
* modules/unistr/u16-strchr, modules/unistr/u16-strcmp:
* modules/unistr/u16-strcoll, modules/unistr/u16-strcpy:
* modules/unistr/u16-strcspn, modules/unistr/u16-strdup:
* modules/unistr/u16-strlen, modules/unistr/u16-strmblen:
* modules/unistr/u16-strmbtouc, modules/unistr/u16-strncat:
* modules/unistr/u16-strncmp, modules/unistr/u16-strncpy:
* modules/unistr/u16-strnlen, modules/unistr/u16-strpbrk:
* modules/unistr/u16-strrchr, modules/unistr/u16-strspn:
* modules/unistr/u16-strstr, modules/unistr/u16-strtok:
* modules/unistr/u16-to-u32, modules/unistr/u16-to-u8:
* modules/unistr/u16-uctomb, modules/unistr/u32-check:
* modules/unistr/u32-chr, modules/unistr/u32-cmp:
* modules/unistr/u32-cmp2, modules/unistr/u32-cpy:
* modules/unistr/u32-cpy-alloc, modules/unistr/u32-endswith:
* modules/unistr/u32-mblen, modules/unistr/u32-mbsnlen:
* modules/unistr/u32-mbtouc, modules/unistr/u32-mbtouc-unsafe:
* modules/unistr/u32-mbtoucr, modules/unistr/u32-move:
* modules/unistr/u32-next, modules/unistr/u32-prev:
* modules/unistr/u32-set, modules/unistr/u32-startswith:
* modules/unistr/u32-stpcpy, modules/unistr/u32-stpncpy:
* modules/unistr/u32-strcat, modules/unistr/u32-strchr:
* modules/unistr/u32-strcmp, modules/unistr/u32-strcoll:
* modules/unistr/u32-strcpy, modules/unistr/u32-strcspn:
* modules/unistr/u32-strdup, modules/unistr/u32-strlen:
* modules/unistr/u32-strmblen, modules/unistr/u32-strmbtouc:
* modules/unistr/u32-strncat, modules/unistr/u32-strncmp:
* modules/unistr/u32-strncpy, modules/unistr/u32-strnlen:
* modules/unistr/u32-strpbrk, modules/unistr/u32-strrchr:
* modules/unistr/u32-strspn, modules/unistr/u32-strstr:
* modules/unistr/u32-strtok, modules/unistr/u32-to-u16:
* modules/unistr/u32-to-u8, modules/unistr/u32-uctomb:
* modules/unistr/u8-check, modules/unistr/u8-chr:
* modules/unistr/u8-cmp, modules/unistr/u8-cmp2, modules/unistr/u8-cpy:
* modules/unistr/u8-cpy-alloc, modules/unistr/u8-endswith:
* modules/unistr/u8-mblen, modules/unistr/u8-mbsnlen:
* modules/unistr/u8-mbtouc, modules/unistr/u8-mbtouc-unsafe:
* modules/unistr/u8-mbtoucr, modules/unistr/u8-move:
* modules/unistr/u8-next, modules/unistr/u8-prev:
* modules/unistr/u8-set, modules/unistr/u8-startswith:
* modules/unistr/u8-stpcpy, modules/unistr/u8-stpncpy:
* modules/unistr/u8-strcat, modules/unistr/u8-strchr:
* modules/unistr/u8-strcmp, modules/unistr/u8-strcoll:
* modules/unistr/u8-strcpy, modules/unistr/u8-strcspn:
* modules/unistr/u8-strdup, modules/unistr/u8-strlen:
* modules/unistr/u8-strmblen, modules/unistr/u8-strmbtouc:
* modules/unistr/u8-strncat, modules/unistr/u8-strncmp:
* modules/unistr/u8-strncpy, modules/unistr/u8-strnlen:
* modules/unistr/u8-strpbrk, modules/unistr/u8-strrchr:
* modules/unistr/u8-strspn, modules/unistr/u8-strstr:
* modules/unistr/u8-strtok, modules/unistr/u8-to-u16:
* modules/unistr/u8-to-u32, modules/unistr/u8-uctomb, modules/unitypes:
* modules/uniwbrk/base, modules/uniwbrk/table:
* modules/uniwbrk/u16-wordbreaks, modules/uniwbrk/u32-wordbreaks:
* modules/uniwbrk/u8-wordbreaks, modules/uniwbrk/ulc-wordbreaks:
* modules/uniwbrk/wordbreak-property, modules/uniwidth/base:
* modules/uniwidth/u16-strwidth, modules/uniwidth/u16-width:
* modules/uniwidth/u32-strwidth, modules/uniwidth/u32-width:
* modules/uniwidth/u8-strwidth, modules/uniwidth/u8-width:
* modules/uniwidth/width, modules/utf16-ucs4:
* modules/utf16-ucs4-unsafe, modules/utf8-ucs4:
* modules/utf8-ucs4-unsafe:
Change maintainer from Bruno Haible to Daiki Ueno.
This is my guess at the libunistring modules; please feel free
to fix if I guessed incorrectly.
* modules/accept4, modules/acl, modules/acos, modules/acosf:
* modules/alignof, modules/amemxfrm, modules/ansi-c++-opt:
* modules/areadlink, modules/array-list, modules/array-mergesort:
* modules/array-oset, modules/asin, modules/asinf, modules/astrxfrm:
* modules/atan, modules/atan2, modules/atan2f, modules/atanf:
* modules/avltree-list, modules/avltree-oset, modules/avltreehash-list:
* modules/binary-io, modules/bison-i18n, modules/btowc:
* modules/c-ctype, modules/c-strcase, modules/c-strcaseeq:
* modules/c-strcasestr, modules/c-strstr, modules/calloc-posix:
* modules/canonicalize-lgpl, modules/careadlinkat, modules/carray-list:
* modules/cbrt, modules/cbrt-ieee, modules/cbrtf, modules/cbrtf-ieee:
* modules/cbrtl, modules/cbrtl-ieee, modules/ceil, modules/ceil-ieee:
* modules/ceilf, modules/ceilf-ieee, modules/ceill, modules/ceill-ieee:
* modules/chdir, modules/classpath, modules/clean-temp, modules/close:
* modules/closedir, modules/concat-filename, modules/copy-file:
* modules/copysign, modules/copysignf, modules/copysignl, modules/cos:
* modules/cosf, modules/cosh, modules/coshf, modules/csharpcomp:
* modules/csharpcomp-script, modules/csharpexec:
* modules/csharpexec-script, modules/ctype, modules/diffseq:
* modules/dprintf, modules/dprintf-posix, modules/dup:
* modules/dup2-obsolete, modules/dup3, modules/duplocale:
* modules/eealloc, modules/environ, modules/erf, modules/erfc:
* modules/errno, modules/execute, modules/exp, modules/exp-ieee:
* modules/exp2, modules/exp2-ieee, modules/exp2f, modules/exp2f-ieee:
* modules/exp2l, modules/exp2l-ieee, modules/expf, modules/expf-ieee:
* modules/expl, modules/expl-ieee, modules/expm1, modules/expm1-ieee:
* modules/expm1f, modules/expm1f-ieee, modules/expm1l:
* modules/expm1l-ieee, modules/fabs, modules/fabs-ieee, modules/fabsf:
* modules/fabsf-ieee, modules/fabsl, modules/fabsl-ieee:
* modules/fatal-signal, modules/fbufmode, modules/fchdir:
* modules/fclose, modules/fd-hook, modules/fdopen, modules/filename:
* modules/findprog, modules/findprog-lgpl, modules/floor:
* modules/floor-ieee, modules/floorf, modules/floorf-ieee:
* modules/floorl, modules/floorl-ieee, modules/fma, modules/fma-ieee:
* modules/fmaf, modules/fmaf-ieee, modules/fmal, modules/fmal-ieee:
* modules/fmod, modules/fmod-ieee, modules/fmodf, modules/fmodf-ieee:
* modules/fmodl, modules/fmodl-ieee, modules/fopen, modules/fpieee:
* modules/fprintf-posix, modules/fpucw, modules/fpurge:
* modules/freadable, modules/freadahead, modules/freadptr:
* modules/freadseek, modules/freopen, modules/frexp:
* modules/frexp-ieee, modules/frexp-nolibm, modules/frexpf:
* modules/frexpf-ieee, modules/frexpl, modules/frexpl-ieee:
* modules/frexpl-nolibm, modules/fseek, modules/fseeko:
* modules/fseterr, modules/fstat, modules/fstrcmp, modules/ftell:
* modules/ftello, modules/full-read, modules/full-write:
* modules/fwritable, modules/fwriteerror, modules/gcd:
* modules/get-rusage-as, modules/get-rusage-data:
* modules/getdtablesize, modules/getrusage, modules/gettext:
* modules/gettext-h, modules/git-merge-changelog, modules/gperf:
* modules/grantpt, modules/havelib, modules/host-cpu-c-abi:
* modules/hostent, modules/hypot, modules/hypot-ieee, modules/hypotf:
* modules/hypotf-ieee, modules/hypotl, modules/hypotl-ieee:
* modules/iconv, modules/iconv-h, modules/iconv_open:
* modules/iconv_open-utf, modules/idpriv-drop, modules/idpriv-droptemp:
* modules/ilogb, modules/ilogbf, modules/ilogbl, modules/imaxabs:
* modules/imaxdiv, modules/integer_length, modules/integer_length_l:
* modules/integer_length_ll, modules/ioctl, modules/isatty:
* modules/isblank, modules/isnand, modules/isnand-nolibm:
* modules/isnanf, modules/isnanf-nolibm, modules/isnanl:
* modules/isnanl-nolibm, modules/iswblank, modules/iswctype:
* modules/j0, modules/j1, modules/javacomp, modules/javacomp-script:
* modules/javaexec, modules/javaexec-script, modules/javaversion:
* modules/jn, modules/langinfo, modules/ldd, modules/ldexp:
* modules/ldexp-ieee, modules/ldexpf, modules/ldexpf-ieee:
* modules/ldexpl, modules/ldexpl-ieee, modules/lgamma:
* modules/lib-symbol-visibility, modules/libsigsegv:
* modules/linked-list, modules/linkedhash-list, modules/list:
* modules/localcharset, modules/locale, modules/localeconv:
* modules/localename, modules/lock, modules/log, modules/log-ieee:
* modules/log10, modules/log10-ieee, modules/log10f:
* modules/log10f-ieee, modules/log10l, modules/log10l-ieee:
* modules/log1p, modules/log1p-ieee, modules/log1pf:
* modules/log1pf-ieee, modules/log1pl, modules/log1pl-ieee:
* modules/log2, modules/log2-ieee, modules/log2f, modules/log2f-ieee:
* modules/log2l, modules/log2l-ieee, modules/logb, modules/logb-ieee:
* modules/logbf, modules/logbf-ieee, modules/logbl, modules/logbl-ieee:
* modules/logf, modules/logf-ieee, modules/login_tty:
* modules/logl-ieee, modules/malloc-posix, modules/malloca:
* modules/mbchar, modules/mbfile, modules/mbiter, modules/mbmemcasecmp:
* modules/mbmemcasecoll, modules/mbrlen, modules/mbrtowc:
* modules/mbscasecmp, modules/mbscasestr, modules/mbschr:
* modules/mbscspn, modules/mbsinit, modules/mbslen:
* modules/mbsncasecmp, modules/mbsnlen, modules/mbsnrtowcs:
* modules/mbspbrk, modules/mbspcasecmp, modules/mbsrchr:
* modules/mbsrtowcs, modules/mbssep, modules/mbsspn, modules/mbsstr:
* modules/mbstok_r, modules/mbswidth, modules/mbtowc, modules/mbuiter:
* modules/memchr-obsolete, modules/memcmp2, modules/minmax:
* modules/mkdtemp, modules/mkostemp, modules/mktime-internal:
* modules/modf, modules/modf-ieee, modules/modff, modules/modff-ieee:
* modules/modfl, modules/modfl-ieee, modules/msvc-inval:
* modules/msvc-nothrow, modules/multiarch, modules/nextafter:
* modules/nl_langinfo, modules/no-c++, modules/nocrash:
* modules/nonblocking, modules/open, modules/opendir, modules/openmp:
* modules/oset, modules/pclose, modules/pipe, modules/pipe-filter-gi:
* modules/pipe-filter-ii, modules/pipe2, modules/poll-h:
* modules/posix_spawn, modules/posix_spawn-internal:
* modules/posix_spawn_file_actions_addclose:
* modules/posix_spawn_file_actions_adddup2:
* modules/posix_spawn_file_actions_addopen:
* modules/posix_spawn_file_actions_destroy:
* modules/posix_spawn_file_actions_init:
* modules/posix_spawnattr_destroy, modules/posix_spawnattr_getflags:
* modules/posix_spawnattr_getpgroup:
* modules/posix_spawnattr_getschedparam:
* modules/posix_spawnattr_getschedpolicy:
* modules/posix_spawnattr_getsigdefault:
* modules/posix_spawnattr_getsigmask, modules/posix_spawnattr_init:
* modules/posix_spawnattr_setflags, modules/posix_spawnattr_setpgroup:
* modules/posix_spawnattr_setschedparam:
* modules/posix_spawnattr_setschedpolicy:
* modules/posix_spawnattr_setsigdefault:
* modules/posix_spawnattr_setsigmask, modules/posix_spawnp:
* modules/pow, modules/powf, modules/printf-frexp:
* modules/printf-frexpl, modules/printf-posix, modules/printf-safe:
* modules/progname, modules/propername, modules/pselect:
* modules/pthread_sigmask, modules/ptsname, modules/ptsname_r:
* modules/qacl, modules/quotearg-simple, modules/raise, modules/random:
* modules/rbtree-list, modules/rbtree-oset, modules/rbtreehash-list:
* modules/read, modules/readdir, modules/readlink:
* modules/realloc-posix, modules/regex-quote, modules/relocatable-lib:
* modules/relocatable-lib-lgpl, modules/relocatable-perl:
* modules/relocatable-prog, modules/relocatable-prog-wrapper:
* modules/relocatable-script, modules/remainder:
* modules/remainder-ieee, modules/remainderf, modules/remainderf-ieee:
* modules/remainderl, modules/remainderl-ieee, modules/rewinddir:
* modules/rint, modules/rint-ieee, modules/rintf, modules/rintf-ieee:
* modules/rintl, modules/rintl-ieee, modules/round-ieee:
* modules/roundf-ieee, modules/roundl-ieee, modules/safe-read:
* modules/safe-write, modules/sched, modules/servent, modules/setenv:
* modules/setlocale, modules/sh-quote, modules/shutdown:
* modules/signal, modules/signbit, modules/sigpipe:
* modules/sigpipe-die, modules/sigprocmask, modules/sin, modules/sinf:
* modules/sinh, modules/sinhf, modules/size_max, modules/sleep:
* modules/snippet/arg-nonnull, modules/snippet/c++defs:
* modules/snippet/link-warning, modules/snippet/unused-parameter:
* modules/snprintf, modules/snprintf-posix, modules/spawn:
* modules/spawn-pipe, modules/sprintf-posix, modules/sqrt:
* modules/sqrt-ieee, modules/sqrtf, modules/sqrtf-ieee:
* modules/sqrtl-ieee, modules/stdalign, modules/stdarg:
* modules/stdbool, modules/stpcpy, modules/stpncpy, modules/strcase:
* modules/strcasestr, modules/strcasestr-simple, modules/strcspn:
* modules/streq, modules/strerror_r-posix, modules/striconv:
* modules/striconveh, modules/striconveha, modules/strncat:
* modules/strnlen1, modules/strpbrk, modules/strtod-obsolete:
* modules/sublist, modules/sys_resource, modules/sys_utsname:
* modules/sys_wait, modules/system-posix, modules/system-quote:
* modules/tan, modules/tanf, modules/tanh, modules/tanhf:
* modules/tcgetsid, modules/termios, modules/threadlib, modules/tls:
* modules/tmpdir, modules/towctrans, modules/trunc, modules/trunc-ieee:
* modules/truncf, modules/truncf-ieee, modules/truncl:
* modules/truncl-ieee, modules/ttyname_r, modules/uname:
* modules/unlockpt, modules/unsetenv, modules/vasnprintf:
* modules/vasnprintf-posix, modules/vasprintf, modules/vasprintf-posix:
* modules/vdprintf, modules/vdprintf-posix, modules/vfprintf-posix:
* modules/vfscanf, modules/vma-iter, modules/vprintf-posix:
* modules/vscanf, modules/vsnprintf-posix, modules/vsprintf-posix:
* modules/wait-process, modules/waitpid, modules/wcpcpy:
* modules/wcpncpy, modules/wcrtomb, modules/wcscasecmp, modules/wcscat:
* modules/wcschr, modules/wcscmp, modules/wcscoll, modules/wcscpy:
* modules/wcscspn, modules/wcsdup, modules/wcslen, modules/wcsncasecmp:
* modules/wcsncat, modules/wcsncmp, modules/wcsncpy, modules/wcsnlen:
* modules/wcsnrtombs, modules/wcspbrk, modules/wcsrchr:
* modules/wcsrtombs, modules/wcsspn, modules/wcsstr, modules/wcstok:
* modules/wcswidth, modules/wcsxfrm, modules/wctob, modules/wctomb:
* modules/wctrans, modules/wctype, modules/wcwidth, modules/wmemchr:
* modules/wmemcmp, modules/wmemcpy, modules/wmemmove, modules/wmemset:
* modules/write, modules/xconcat-filename, modules/xlist:
* modules/xmalloca, modules/xoset, modules/xprintf-posix:
* modules/xreadlink, modules/xsetenv, modules/xsize, modules/xstriconv:
* modules/xstriconveh, modules/xsublist, modules/xvasprintf-posix:
* modules/y0, modules/y1, modules/yn:
Remove Bruno Haible as maintainer; if he's the sole maintainer,
change the maintainer to 'all'.  Let's hope someone volunteers.
2014-07-05 08:34:03 -07:00
Bruno Haible 9b604b4cbf New module 'msvc-nothrow'. Makes _get_osfhandle safe on MSVC 9.
* lib/msvc-nothrow.h: New file.
* lib/msvc-nothrow.c: New file.
* m4/msvc-nothrow.m4: New file.
* modules/msvc-nothrow: New file.
* lib/dup2.c: Include msvc-nothrow.h.
(rpl_dup2): No need to protect _get_osfhandle call here.
* lib/accept4.c: Include msvc-nothrow.h.
* lib/error.c: Likewise.
* lib/fcntl.c: Likewise.
* lib/lseek.c: Likewise.
* lib/nonblocking.c: Likewise.
* lib/poll.c: Likewise.
* lib/read.c: Likewise.
* lib/select.c: Likewise.
* lib/sockets.h: Likewise.
* lib/sockets.c: Likewise.
* lib/stdio-read.c: Likewise.
* lib/stdio-write.c: Likewise.
* lib/write.c: Likewise.
* lib/w32sock.h: Likewise.
* lib/w32spawn.h: Likewise.
* lib/flock.c: Include msvc-nothrow.h instead of <io.h>.
* lib/fsync.c: Likewise.
* lib/isapipe.c: Likewise.
* modules/dup2 (Depends-on): Add msvc-nothrow.
* modules/accept4 (Depends-on): Likewise.
* modules/error (Depends-on): Likewise.
* modules/fcntl (Depends-on): Likewise.
* modules/lseek (Depends-on): Likewise.
* modules/nonblocking (Depends-on): Likewise.
* modules/poll (Depends-on): Likewise.
* modules/read (Depends-on): Likewise.
* modules/select (Depends-on): Likewise.
* modules/sockets (Depends-on): Likewise.
* modules/sigpipe (Depends-on): Likewise.
* modules/write (Depends-on): Likewise.
* modules/accept (Depends-on): Likewise.
* modules/bind (Depends-on): Likewise.
* modules/connect (Depends-on): Likewise.
* modules/gethostname (Depends-on): Likewise.
* modules/getpeername (Depends-on): Likewise.
* modules/getsockname (Depends-on): Likewise.
* modules/getsockopt (Depends-on): Likewise.
* modules/ioctl (Depends-on): Likewise.
* modules/listen (Depends-on): Likewise.
* modules/recv (Depends-on): Likewise.
* modules/recvfrom (Depends-on): Likewise.
* modules/send (Depends-on): Likewise.
* modules/sendto (Depends-on): Likewise.
* modules/setsockopt (Depends-on): Likewise.
* modules/shutdown (Depends-on): Likewise.
* modules/socket (Depends-on): Likewise.
* modules/execute (Depends-on): Likewise.
* modules/spawn-pipe (Depends-on): Likewise.
* modules/flock (Depends-on): Likewise.
* modules/fsync (Depends-on): Likewise.
* modules/isapipe (Depends-on): Likewise.
* tests/test-cloexec.c: Include msvc-nothrow.h.
* tests/test-dup-safer.c: Likewise.
* tests/test-dup2.c: Likewise.
* tests/test-dup3.c: Likewise.
* tests/test-fcntl.c: Likewise.
* tests/test-pipe.c: Likewise.
* tests/test-pipe2.c: Likewise.
* modules/cloexec-tests (Depends-on): Add msvc-nothrow.
* modules/unistd-safer-tests (Depends-on): Likewise.
* modules/dup2-tests (Depends-on): Likewise.
* modules/dup3-tests (Depends-on): Likewise.
* modules/fcntl-tests (Depends-on): Likewise.
* modules/pipe-posix-tests (Depends-on): Likewise.
* modules/pipe2-tests (Depends-on): Likewise.
2011-09-23 21:38:44 +02:00
Eric Blake 0fc0aa3814 exit: drop remaining clients
Anyone using EXIT_FAILURE needs to depend on stdlib, now that
the exit module is gone.

* modules/argmatch (Depends-on): Replace exit with stdlib.
* modules/copy-file (Depends-on): Likewise.
* modules/execute (Depends-on): Likewise.
* modules/exitfail (Depends-on): Likewise.
* modules/obstack (Depends-on): Likewise.
* modules/pagealign_alloc (Depends-on): Likewise.
* modules/pipe-filter-gi (Depends-on): Likewise.
* modules/pipe-filter-ii (Depends-on): Likewise.
* modules/savewd (Depends-on): Likewise.
* modules/spawn-pipe (Depends-on): Likewise.
* modules/wait-process (Depends-on): Likewise.
* modules/xsetenv (Depends-on): Likewise.
* modules/chdir-long (Depends-on): Add stdlib, for EXIT_FAILURE.
* modules/git-merge-changelog (Depends-on): Likewise.
* modules/long-options (Depends-on): Likewise.
* modules/pt_chown (Depends-on): Likewise.
* modules/sysexits (Depends-on): Likewise.

Signed-off-by: Eric Blake <eblake@redhat.com>
2011-05-02 12:02:59 -06:00
Bruno Haible 8ecf1d24ee Rename module 'pipe' to 'spawn-pipe'.
* modules/spawn-pipe: New file, renamed from modules/pipe.
(Files, configure.ac, Makefile.am): Update.
(Include): Mention "spawn-pipe.h" instead of "pipe.h".
* modules/pipe: Reduce to an obsolete indirection to 'spawn-pipe'.
* lib/spawn-pipe.h: New file, renamed from lib/pipe.h.
* lib/spawn-pipe.c: New file, renamed from lib/pipe.c. Include
"spawn-pipe.h" instead of "pipe.h".
* m4/spawn-pipe.m4: New file, renamed from m4/pipe.m4. Rename gl_PIPE
to gl_SPAWN_PIPE.
* modules/spawn-pipe-tests: New file, renamed from modules/pipe-tests.
(Files, Makefile.am): Update.
* tests/test-spawn-pipe.sh: New file, renamed from tests/test-pipe.sh.
Update.
* tests/test-spawn-pipe.c: New file, renamed from tests/test-pipe.c.
Include "spawn-pipe.h" instead of "pipe.h".
* lib/csharpcomp.c: Include "spawn-pipe.h" instead of "pipe.h".
* lib/javacomp.c: Likewise.
* lib/javaversion.c: Likewise.
* lib/pipe-filter-gi.c: Likewise.
* lib/pipe-filter-ii.c: Likewise.
* modules/csharpcomp (Depends-on): Add 'spawn-pipe', remove 'pipe'.
* modules/javacomp (Depends-on): Likewise.
* modules/javaversion (Depends-on): Likewise.
* modules/pipe-filter-gi (Depends-on): Likewise.
* modules/pipe-filter-ii (Depends-on): Likewise.
* MODULES.html.sh (Executing programs): Update.
* NEWS: Mention the change.
2010-12-11 02:00:44 +01:00