changeset 9505:5e0289fd4f7f

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. Signed-off-by: Eric Blake <ebb9@byu.net>
author Eric Blake <ebb9@byu.net>
date Tue, 04 Dec 2007 08:38:22 -0700
parents 9c9d01776f23
children bcd324040155
files ChangeLog doc/functions/fseeko.texi doc/functions/ftello.texi m4/stdio_h.m4
diffstat 4 files changed, 14 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
 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>
--- a/doc/functions/fseeko.texi
+++ b/doc/functions/fseeko.texi
@@ -15,7 +15,7 @@
 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:
--- a/doc/functions/ftello.texi
+++ b/doc/functions/ftello.texi
@@ -15,7 +15,7 @@
 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:
--- a/m4/stdio_h.m4
+++ b/m4/stdio_h.m4
@@ -1,4 +1,4 @@
-# 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,
@@ -73,13 +73,10 @@
       [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])],