error, strerror-override: Support mingw64 from Fedora 17.
authorPaolo Bonzini <bonzini@gnu.org>
Sun, 3 Jun 2012 16:29:00 +0000 (18:29 +0200)
committerBruno Haible <bruno@clisp.org>
Sun, 3 Jun 2012 16:29:19 +0000 (18:29 +0200)
* lib/errno.in.h (GNULIB_defined_ESTREAMS): Use a different indicator
for ETXTBSY, ENODATA, ENOSR, ENOSTR, ETIME, EOTHER, compared to
EINPROGRESS.
* lib/strerror-override.h (strerror_override): Test it.
* lib/strerror-override.c (strerror_override): Likewise.
* m4/errno_h.m4 (gl_HEADER_ERRNO_H): Test also ETXTBSY.

ChangeLog
lib/errno.in.h
lib/strerror-override.c
lib/strerror-override.h
m4/errno_h.m4

index b200d5f..f7fa9e9 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,17 @@
            Bruno Haible  <bruno@clisp.org>
 
        error, strerror-override: Support mingw64 from Fedora 17.
+       * lib/errno.in.h (GNULIB_defined_ESTREAMS): Use a different indicator
+       for ETXTBSY, ENODATA, ENOSR, ENOSTR, ETIME, EOTHER, compared to
+       EINPROGRESS.
+       * lib/strerror-override.h (strerror_override): Test it.
+       * lib/strerror-override.c (strerror_override): Likewise.
+       * m4/errno_h.m4 (gl_HEADER_ERRNO_H): Test also ETXTBSY.
+
+2012-05-21  Paolo Bonzini  <bonzini@gnu.org>
+           Bruno Haible  <bruno@clisp.org>
+
+       error, strerror-override: Support mingw64 from Fedora 17.
        * lib/errno.in.h (GNULIB_defined_ENOTRECOVERABLE): Use a different
        indicator for ENOTRECOVERABLE, compared to EOWNERDEAD.
        * lib/strerror-override.h (strerror_override): Test it.
index 659726b..4fba101 100644 (file)
 #   define ELOOP           114
 #   define EHOSTUNREACH    110
 #   define EWOULDBLOCK     140
+#   define GNULIB_defined_ESOCK 1
+#  endif
+
+#  ifndef ETXTBSY
 #   define ETXTBSY         139
 #   define ENODATA         120  /* not required by POSIX */
 #   define ENOSR           124  /* not required by POSIX */
 #   define ENOSTR          125  /* not required by POSIX */
 #   define ETIME           137  /* not required by POSIX */
 #   define EOTHER          131  /* not required by POSIX */
-#   define GNULIB_defined_ESOCK 1
+#   define GNULIB_defined_ESTREAMS 1
 #  endif
 
 /* These are intentionally the same values as the WSA* error numbers, defined
index 34f0852..9f55cfa 100644 (file)
@@ -89,6 +89,8 @@ strerror_override (int errnum)
       return "No route to host";
     case EWOULDBLOCK:
       return "Operation would block";
+#endif
+#if GNULIB_defined_ESTREAMS /* native Windows platforms with older <errno.h> */
     case ETXTBSY:
       return "Text file busy";
     case ENODATA:
index 566530f..fe1fb2c 100644 (file)
@@ -30,6 +30,7 @@
    describing the error.  Otherwise return NULL.  */
 # if REPLACE_STRERROR_0 \
      || GNULIB_defined_ESOCK \
+     || GNULIB_defined_ESTREAMS \
      || GNULIB_defined_EWINSOCK \
      || GNULIB_defined_ENOMSG \
      || GNULIB_defined_EIDRM \
index 521e76e..1e76ba2 100644 (file)
@@ -10,6 +10,9 @@ AC_DEFUN_ONCE([gl_HEADER_ERRNO_H],
   AC_CACHE_CHECK([for complete errno.h], [gl_cv_header_errno_h_complete], [
     AC_EGREP_CPP([booboo],[
 #include <errno.h>
+#if !defined ETXTBSY
+booboo
+#endif
 #if !defined ENOMSG
 booboo
 #endif