> A second, separate patch could be applied to reduce the number of uses > of the term "Woe32" (optional).
Here's the proposed patch to remove most uses of "Woe32". 2012-01-06 Bruno Haible <br...@clisp.org> Talk about "native Windows API", not "Woe32". * lib/accept4.c: Update comments to mention native Windows. * lib/execute.c: Likewise. * lib/fatal-signal.c: Likewise. * lib/localcharset.c: Likewise. * lib/nanosleep.c: Likewise. * lib/nl_langinfo.c: Likewise. * lib/pclose.c: Likewise. * lib/pipe-filter-gi.c: Likewise. * lib/pipe-filter-ii.c: Likewise. * lib/pipe.c: Likewise. * lib/pipe2.c: Likewise. * lib/popen.c: Likewise. * lib/progreloc.c: Likewise. * lib/relocatable.c: Likewise. * lib/sigaction.c: Likewise. * lib/sigprocmask.c: Likewise. * lib/spawn-pipe.h: Likewise. * lib/spawn-pipe.c: Likewise. * lib/spawni.c: Likewise. * lib/stat-time.h: Likewise. * lib/w32spawn.h: Likewise. * tests/test-isatty.c: Likewise. * lib/config.charset: More comments. * doc/gnulib-intro.texi: Mention native Windows. * doc/posix-functions/_Exit_C99.texi: Likewise. * doc/posix-headers/fcntl.texi: Likewise. --- doc/gnulib-intro.texi.orig Fri Jan 6 15:22:20 2012 +++ doc/gnulib-intro.texi Fri Jan 6 15:09:13 2012 @@ -304,8 +304,8 @@ Examples are a module for copying a file --- the portability problems relate to the copying of the file's modification time, access rights, and extended attributes --- or a module for extracting the tail -component of a file name --- here the portability to Woe32 requires a -different API than the classical POSIX @code{basename} function. +component of a file name --- here the portability to native Windows +requires a different API than the classical POSIX @code{basename} function. @subsection Reusable application code --- doc/posix-functions/_Exit_C99.texi.orig Fri Jan 6 15:22:21 2012 +++ doc/posix-functions/_Exit_C99.texi Fri Jan 6 15:07:39 2012 @@ -2,7 +2,7 @@ @section @code{_Exit} @findex _Exit @c This file would ideally be called _Exit.texi, but then it would collide -@c with _exit.texi on case-insensitive file systems (MacOS X HFS+ and Woe32 +@c with _exit.texi on case-insensitive file systems (MacOS X HFS+ and Windows @c file systems). POSIX specification:@* @url{http://www.opengroup.org/onlinepubs/9699919799/functions/_Exit.html} --- doc/posix-headers/fcntl.texi.orig Fri Jan 6 15:22:21 2012 +++ doc/posix-headers/fcntl.texi Fri Jan 6 15:08:17 2012 @@ -41,8 +41,8 @@ @item @samp{O_BINARY}, @samp{O_TEXT} (not specified by POSIX, but essential for -portability to Woe32 platforms) are defined on some platforms but not on -others. +portability to native Windows platforms) are defined on some platforms but +not on others. @item @samp{O_DIRECT}, @samp{O_NDELAY}, @samp{O_NOATIME}, --- lib/accept4.c.orig Fri Jan 6 15:22:21 2012 +++ lib/accept4.c Fri Jan 6 15:10:38 2012 @@ -67,7 +67,7 @@ #if SOCK_CLOEXEC # if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ -/* Native Woe32 API. */ +/* Native Windows API. */ if (flags & SOCK_CLOEXEC) { HANDLE curr_process = GetCurrentProcess (); --- lib/config.charset.orig Fri Jan 6 15:22:21 2012 +++ lib/config.charset Fri Jan 6 15:21:09 2012 @@ -30,6 +30,8 @@ # The current list of GNU canonical charset names is as follows. # # name MIME? used by which systems +# (darwin = MacOS X, woe32 = native Windows) +# # ASCII, ANSI_X3.4-1968 glibc solaris freebsd netbsd darwin cygwin # ISO-8859-1 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin # ISO-8859-2 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin --- lib/execute.c.orig Fri Jan 6 15:22:21 2012 +++ lib/execute.c Fri Jan 6 15:11:38 2012 @@ -37,7 +37,7 @@ #if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ -/* Native Woe32 API. */ +/* Native Windows API. */ # include <process.h> # include "w32spawn.h" @@ -106,7 +106,7 @@ { #if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ - /* Native Woe32 API. */ + /* Native Windows API. */ int orig_stdin; int orig_stdout; int orig_stderr; --- lib/fatal-signal.c.orig Fri Jan 6 15:22:21 2012 +++ lib/fatal-signal.c Fri Jan 6 15:12:22 2012 @@ -71,7 +71,7 @@ #ifdef SIGXFSZ SIGXFSZ, #endif - /* Woe32 signals. */ + /* Native Windows signals. */ #ifdef SIGBREAK SIGBREAK, #endif --- lib/localcharset.c.orig Fri Jan 6 15:22:21 2012 +++ lib/localcharset.c Fri Jan 6 15:13:26 2012 @@ -407,10 +407,10 @@ } } - /* Woe32 has a function returning the locale's codepage as a number: - GetACP(). This encoding is used by Cygwin, unless the user has set - the environment variable CYGWIN=codepage:oem (which very few people - do). + /* The Windows API has a function returning the locale's codepage as a + number: GetACP(). This encoding is used by Cygwin, unless the user + has set the environment variable CYGWIN=codepage:oem (which very few + people do). Output directed to console windows needs to be converted (to GetOEMCP() if the console is using a raster font, or to GetConsoleOutputCP() if it is using a TrueType font). Cygwin does @@ -457,8 +457,8 @@ static char buf[2 + 10 + 1]; - /* Woe32 has a function returning the locale's codepage as a number: - GetACP(). + /* The Windows API has a function returning the locale's codepage as a + number: GetACP(). When the output goes to a console window, it needs to be provided in GetOEMCP() encoding if the console is using a raster font, or in GetConsoleOutputCP() encoding if it is using a TrueType font. --- lib/nanosleep.c.orig Fri Jan 6 15:22:21 2012 +++ lib/nanosleep.c Fri Jan 6 15:13:49 2012 @@ -16,7 +16,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ /* written by Jim Meyering - and Bruno Haible for the Woe32 part */ + and Bruno Haible for the native Windows part */ #include <config.h> --- lib/nl_langinfo.c.orig Fri Jan 6 15:22:21 2012 +++ lib/nl_langinfo.c Fri Jan 6 15:14:18 2012 @@ -141,7 +141,8 @@ { static char buf[2 + 10 + 1]; - /* Woe32 has a function returning the locale's codepage as a number. */ + /* The Windows API has a function returning the locale's codepage as + a number. */ sprintf (buf, "CP%u", GetACP ()); return buf; } --- lib/pclose.c.orig Fri Jan 6 15:22:21 2012 +++ lib/pclose.c Fri Jan 6 15:14:31 2012 @@ -19,7 +19,7 @@ /* Specification. */ #include <stdio.h> -/* Native Woe32 API. */ +/* Native Windows API. */ int pclose (FILE *stream) --- lib/pipe-filter-gi.c.orig Fri Jan 6 15:22:21 2012 +++ lib/pipe-filter-gi.c Fri Jan 6 15:14:42 2012 @@ -96,7 +96,7 @@ #if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ -/* Native Woe32 API. */ +/* Native Windows API. */ static unsigned int WINAPI reader_thread_func (void *thread_arg) --- lib/pipe-filter-ii.c.orig Fri Jan 6 15:22:21 2012 +++ lib/pipe-filter-ii.c Fri Jan 6 15:14:51 2012 @@ -155,7 +155,7 @@ return -1; #if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ - /* Native Woe32 API. */ + /* Native Windows API. */ /* Pipes have a non-blocking mode, see function SetNamedPipeHandleState and the article "Named Pipe Type, Read, and Wait Modes", but Microsoft's documentation discourages its use. So don't use it. --- lib/pipe.c.orig Fri Jan 6 15:22:21 2012 +++ lib/pipe.c Fri Jan 6 15:15:09 2012 @@ -21,7 +21,7 @@ #include <unistd.h> #if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ -/* Native Woe32 API. */ +/* Native Windows API. */ /* Get _pipe(). */ # include <io.h> --- lib/pipe2.c.orig Fri Jan 6 15:22:21 2012 +++ lib/pipe2.c Fri Jan 6 15:15:27 2012 @@ -31,7 +31,7 @@ #endif #if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ -/* Native Woe32 API. */ +/* Native Windows API. */ # include <io.h> @@ -75,7 +75,7 @@ } #if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ -/* Native Woe32 API. */ +/* Native Windows API. */ if (_pipe (fd, 4096, flags & ~O_NONBLOCK) < 0) { --- lib/popen.c.orig Fri Jan 6 15:22:21 2012 +++ lib/popen.c Fri Jan 6 15:15:40 2012 @@ -84,7 +84,7 @@ } #else -/* Native Woe32 API. */ +/* Native Windows API. */ # include <string.h> --- lib/progreloc.c.orig Fri Jan 6 15:22:21 2012 +++ lib/progreloc.c Fri Jan 6 15:16:29 2012 @@ -112,7 +112,7 @@ static bool maybe_executable (const char *filename) { - /* Woe32 lacks the access() function. */ + /* The native Windows API lacks the access() function. */ #if !defined WINDOWS_NATIVE if (access (filename, X_OK) < 0) return false; @@ -143,8 +143,8 @@ /* Determine the full pathname of the current executable, freshly allocated. Return NULL if unknown. - Guaranteed to work on Linux and Woe32. Likely to work on the other - Unixes (maybe except BeOS), under most conditions. */ + Guaranteed to work on Linux and native Windows. Likely to work on the + other Unixes (maybe except BeOS), under most conditions. */ static char * find_executable (const char *argv0) { --- lib/relocatable.c.orig Fri Jan 6 15:22:21 2012 +++ lib/relocatable.c Fri Jan 6 15:16:55 2012 @@ -394,7 +394,7 @@ /* Return the full pathname of the current shared library. Return NULL if unknown. - Guaranteed to work only on Linux, Cygwin and Woe32. */ + Guaranteed to work only on Linux, Cygwin, and native Windows. */ static char * get_shared_library_fullname () { --- lib/sigaction.c.orig Fri Jan 6 15:22:21 2012 +++ lib/sigaction.c Fri Jan 6 15:17:15 2012 @@ -24,7 +24,7 @@ #include <stdint.h> #include <stdlib.h> -/* This implementation of sigaction is tailored to Woe32 behavior: +/* This implementation of sigaction is tailored to native Windows behavior: signal() has SysV semantics (ie. the handler is uninstalled before it is invoked). This is an inherent data race if an asynchronous signal is sent twice in a row before we can reinstall our handler, --- lib/sigprocmask.c.orig Fri Jan 6 15:22:21 2012 +++ lib/sigprocmask.c Fri Jan 6 15:17:39 2012 @@ -32,7 +32,7 @@ also does not have the POSIX sigaction() function, only the signal() function. We also assume signal() has SysV semantics, where any handler is uninstalled prior to being invoked. This is - true for Woe32 platforms. */ + true for native Windows platforms. */ /* We use raw signal(), but also provide a wrapper rpl_signal() so that applications can query or change a blocked signal. */ --- lib/spawn-pipe.c.orig Fri Jan 6 15:22:21 2012 +++ lib/spawn-pipe.c Fri Jan 6 15:18:00 2012 @@ -37,7 +37,7 @@ #if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ -/* Native Woe32 API. */ +/* Native Windows API. */ # include <process.h> # include "w32spawn.h" @@ -114,7 +114,7 @@ { #if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ - /* Native Woe32 API. + /* Native Windows API. This uses _pipe(), dup2(), and spawnv(). It could also be implemented using the low-level functions CreatePipe(), DuplicateHandle(), CreateProcess() and _open_osfhandle(); see the GNU make and GNU clisp --- lib/spawn-pipe.h.orig Fri Jan 6 15:22:21 2012 +++ lib/spawn-pipe.h Fri Jan 6 15:18:08 2012 @@ -131,7 +131,7 @@ /* The name of the "always silent" device. */ #if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ -/* Native Woe32 API. */ +/* Native Windows API. */ # define DEV_NULL "NUL" #else /* Unix API. */ --- lib/spawni.c.orig Fri Jan 6 15:22:21 2012 +++ lib/spawni.c Fri Jan 6 15:18:21 2012 @@ -91,7 +91,7 @@ #if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ -/* Native Woe32 API. */ +/* Native Windows API. */ int __spawni (pid_t *pid, const char *file, const posix_spawn_file_actions_t *file_actions, --- lib/stat-time.h.orig Fri Jan 6 15:22:21 2012 +++ lib/stat-time.h Fri Jan 6 15:18:53 2012 @@ -155,7 +155,7 @@ t.tv_sec = st->st_birthtime; t.tv_nsec = st->st_birthtimensec; #elif (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ - /* Woe32 native platforms (but not Cygwin) put the "file creation + /* Native Windows platforms (but not Cygwin) put the "file creation time" in st_ctime (!). See <http://msdn2.microsoft.com/de-de/library/14h5k7ff(VS.80).aspx>. */ t.tv_sec = st->st_ctime; --- lib/w32spawn.h.orig Fri Jan 6 15:22:21 2012 +++ lib/w32spawn.h Fri Jan 6 15:19:12 2012 @@ -1,4 +1,4 @@ -/* Auxiliary functions for the creation of subprocesses. Native Woe32 API. +/* Auxiliary functions for the creation of subprocesses. Native Windows API. Copyright (C) 2001, 2003-2012 Free Software Foundation, Inc. Written by Bruno Haible <br...@clisp.org>, 2003. --- tests/test-isatty.c.orig Fri Jan 6 15:22:21 2012 +++ tests/test-isatty.c Fri Jan 6 15:10:14 2012 @@ -28,7 +28,7 @@ /* The name of the "always silent" device. */ #if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__ -/* Native Woe32 API. */ +/* Native Windows API. */ # define DEV_NULL "NUL" #else /* Unix API. */