Another use of AC_LIBOBJ of a file in a different module is in fflush.m4. Once I fix this, suddenly there is no need any more for a dependency from 'fflush' to 'fclose' (where everyone would have expected the dependency in the opposite sense).
2011-05-05 Bruno Haible <br...@clisp.org> fclose, fflush: Respect rules for use of AC_LIBOBJ. * m4/fflush.m4 (gl_FUNC_FFLUSH): Don't invoke gl_REPLACE_FCLOSE. * m4/fclose.m4 (gl_FUNC_FCLOSE): Invoke gl_FUNC_FFLUSH_STDIN and gl_REPLACE_FCLOSE here. * modules/fflush (Depends-on): Remove fclose. * doc/posix-functions/fclose.texi: Mention module 'fflush' only in combination with module 'fclose'. --- m4/fflush.m4.orig Fri May 6 00:26:26 2011 +++ m4/fflush.m4 Fri May 6 00:25:57 2011 @@ -1,4 +1,4 @@ -# fflush.m4 serial 10 +# fflush.m4 serial 11 # Copyright (C) 2007-2011 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation @@ -15,7 +15,6 @@ gl_FUNC_FFLUSH_STDIN if test $gl_cv_func_fflush_stdin = no; then gl_REPLACE_FFLUSH - gl_REPLACE_FCLOSE fi ]) --- m4/fclose.m4.orig Fri May 6 00:26:26 2011 +++ m4/fclose.m4 Fri May 6 00:25:29 2011 @@ -1,4 +1,4 @@ -# fclose.m4 serial 2 +# fclose.m4 serial 3 dnl Copyright (C) 2008-2011 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -6,6 +6,12 @@ AC_DEFUN([gl_FUNC_FCLOSE], [ + m4_ifdef([gl_FUNC_FFLUSH_STDIN], [ + gl_FUNC_FFLUSH_STDIN + if test $gl_cv_func_fflush_stdin = no; then + gl_REPLACE_FCLOSE + fi + ]) ]) AC_DEFUN([gl_REPLACE_FCLOSE], --- modules/fflush.orig Fri May 6 00:26:26 2011 +++ modules/fflush Fri May 6 00:25:29 2011 @@ -8,7 +8,6 @@ Depends-on: stdio -fclose fpurge [test $REPLACE_FFLUSH = 1] ftello [test $REPLACE_FFLUSH = 1] freading [test $REPLACE_FFLUSH = 1] --- doc/posix-functions/fclose.texi.orig Fri May 6 00:26:26 2011 +++ doc/posix-functions/fclose.texi Fri May 6 00:25:29 2011 @@ -6,7 +6,7 @@ Gnulib module: fclose, fflush -Portability problems fixed by Gnulib module @code{fflush}: +Portability problems fixed by Gnulib module @code{fclose} together with module @code{fflush}: @itemize @item On some platforms, this function fails to set the file position of a -- In memoriam Peter van Pels <http://en.wikipedia.org/wiki/Peter_van_Pels>