summaryrefslogtreecommitdiff
path: root/m4/fseek.m4
diff options
context:
space:
mode:
authorEric Blake <ebb9@byu.net>2009-10-27 10:42:50 -0600
committerEric Blake <ebb9@byu.net>2009-10-27 18:49:20 -0600
commit5abb9c9cbcf1c199155bce1f10324ce0e45f1e90 (patch)
tree1df61459bdedfc4bcab33b71ed8e167f5830c961 /m4/fseek.m4
parent18f9c249b3b9712713407bdfb67b9ba27ba311cb (diff)
downloadgnulib-5abb9c9cbcf1c199155bce1f10324ce0e45f1e90.tar.gz
fseek: avoid compilation failure when fflush is replaced
./gnulib-tool --import fseek fwritable failed on Debian, due to broken fflush() pulling in rpl_fseeko that mistakenly overwrote fseek() as function-like macro. * m4/fseek.m4 (gl_REPLACE_FSEEK): New macro. * m4/fseeko.m4 (gl_REPLACE_FSEEKO): Also replace fseek, if fseek module is in use. * lib/stdio.in.h (GNULIB_FSEEKO): Only poison fseek if fseek module is not in use; since REPLACE_FSEEK worked otherwise. (GNULIB_FTELLO): Likewise for ftell. Reported by Ian Beckwith and others. Signed-off-by: Eric Blake <ebb9@byu.net>
Diffstat (limited to 'm4/fseek.m4')
-rw-r--r--m4/fseek.m416
1 files changed, 10 insertions, 6 deletions
diff --git a/m4/fseek.m4 b/m4/fseek.m4
index 80e4501083..c33297dc5b 100644
--- a/m4/fseek.m4
+++ b/m4/fseek.m4
@@ -1,5 +1,5 @@
-# fseek.m4 serial 1
-dnl Copyright (C) 2007 Free Software Foundation, Inc.
+# fseek.m4 serial 2
+dnl Copyright (C) 2007, 2009 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation
dnl gives unlimited permission to copy and/or distribute it,
dnl with or without modifications, as long as this notice is preserved.
@@ -9,8 +9,12 @@ AC_DEFUN([gl_FUNC_FSEEK],
AC_REQUIRE([gl_STDIO_H_DEFAULTS])
AC_REQUIRE([gl_FUNC_FSEEKO])
dnl When fseeko needs fixes, fseek needs them too.
- if test $REPLACE_FSEEKO != 0; then
- AC_LIBOBJ([fseek])
- REPLACE_FSEEK=1
- fi
+ dnl gl_FUNC_FSEEKO takes care of calling gl_REPLACE_FSEEK
+])
+
+AC_DEFUN([gl_REPLACE_FSEEK],
+[
+ AC_LIBOBJ([fseek])
+ AC_REQUIRE([gl_STDIO_H_DEFAULTS])
+ REPLACE_FSEEK=1
])