diff options
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | lib/fpending.h | 2 | ||||
-rw-r--r-- | m4/fpending.m4 | 18 |
3 files changed, 20 insertions, 8 deletions
@@ -1,3 +1,11 @@ +2013-11-08 Eric Blake <eblake@redhat.com> + + fpending: fix regression on DragonFly BSD + * m4/fpending.m4 (gl_FUNC_FPENDING): Check for declaration. + * lib/fpending.h (__fpending): Don't declare twice. + Reported by GW in + <https://lists.gnu.org/archive/html/bug-m4/2013-11/msg00000.html> + 2013-11-05 Jim Meyering <meyering@fb.com> hash: relax license to LGPLv2+, for libguestfs diff --git a/lib/fpending.h b/lib/fpending.h index 30d67fcd74..c12871d854 100644 --- a/lib/fpending.h +++ b/lib/fpending.h @@ -24,6 +24,6 @@ # include <stdio_ext.h> #endif -#ifndef __fpending +#if !HAVE_DECL_FPENDING size_t __fpending (FILE *) _GL_ATTRIBUTE_PURE; #endif diff --git a/m4/fpending.m4 b/m4/fpending.m4 index c8d9e8b7ba..669105b9b5 100644 --- a/m4/fpending.m4 +++ b/m4/fpending.m4 @@ -1,4 +1,4 @@ -# serial 20 +# serial 21 # Copyright (C) 2000-2001, 2004-2013 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation @@ -16,19 +16,23 @@ dnl we have to grub around in the FILE struct. AC_DEFUN([gl_FUNC_FPENDING], [ AC_CHECK_HEADERS_ONCE([stdio_ext.h]) + fp_headers=' + #include <stdio.h> + #if HAVE_STDIO_EXT_H + # include <stdio_ext.h> + #endif + ' AC_CACHE_CHECK([for __fpending], [gl_cv_func___fpending], [ AC_LINK_IFELSE( - [AC_LANG_PROGRAM( - [[#include <stdio.h> - #if HAVE_STDIO_EXT_H - # include <stdio_ext.h> - #endif - ]], + [AC_LANG_PROGRAM([$fp_headers], [[return ! __fpending (stdin);]])], [gl_cv_func___fpending=yes], [gl_cv_func___fpending=no]) ]) + if test $gl_cv_func___fpending = yes; then + AC_CHECK_DECLS([__fpending], [], [], [$fp_headers]) + fi ]) AC_DEFUN([gl_PREREQ_FPENDING], |