2007-12-04 Eric Blake <ebb9@byu.net>
+ Make cygwin fseeko check more reliable.
+ * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
+ version numbers, rather than unrelated feature check.
+ * doc/functions/fseeko.texi (fseeko): Tweak failure report.
+ * doc/functions/ftello.texi (ftello): Likewise.
+ Reported by Bruno Haible.
+
* m4/strerror.m4: Bump version number.
2007-12-03 Bruno Haible <bruno@clisp.org>
The declaration of @code{fseeko} in @code{<stdio.h>} is not enabled by default
on some platforms: glibc 2.3.6.
@item
-This function fails on seekable stdin, stdout, and stderr: cygwin 1.5.x.
+This function fails on seekable stdin, stdout, and stderr: cygwin <= 1.5.24.
@end itemize
Portability problems not fixed by Gnulib:
The declaration of @code{ftello} in @code{<stdio.h>} is not enabled by default
on some platforms: glibc 2.3.6.
@item
-This function fails on seekable stdin, stdout, and stderr: cygwin 1.5.x.
+This function fails on seekable stdin, stdout, and stderr: cygwin <= 1.5.24.
@end itemize
Portability problems not fixed by Gnulib:
-# stdio_h.m4 serial 8
+# stdio_h.m4 serial 9
dnl Copyright (C) 2007 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
[AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <stdio.h>],
[#if defined __SL64 && defined __SCLE /* cygwin */
/* Cygwin 1.5.24 and earlier fail to put stdin in 64-bit mode, making
- fseeko/ftello needlessly fail. This bug was fixed in 1.5.25, at the
- same time that cygwin fixed the declaration of "long timezone" to no
- longer be a macro, so we use that as a compile-time test for
- cross-compiles rather than building a runtime test. */
-# define timezonevar
-# include <sys/time.h>
-# ifdef timezone
+ fseeko/ftello needlessly fail. This bug was fixed in 1.5.25, and
+ it is easier to do a version check than building a runtime test. */
+# include <cygwin/version.h>
+# if CYGWIN_VERSION_DLL_COMBINED < CYGWIN_VERSION_DLL_MAKE_COMBINED (1005, 25)
choke me
# endif
#endif])],