> Since the usual way to implement nestable behaviour in Autoconf is > m4_pushdef / m4_popdef
Another idea would to be m4_pushdef AM_CONDITIONAL itself. If you add a third parameter to AM_CONDITIONAL, denoting the conditions in which the conditional needs to be defined, then gnulib could emit code like this: m4_define([AM_CONDITIONAL_ORIG], m4_defn([AM_CONDITIONAL])) AC_DEFUN([gl_LENIENT_CONDITIONAL], [AM_CONDITIONAL_ORIG([$1],[$2],[USE_FOO])]) m4_pushdef([AM_CONDITIONAL], [gl_LENIENT_CONDITIONAL]) if test $enable_foo; then AM_CONDITIONAL([FOO], [:]) fi m4_pushdef([AM_CONDITIONAL], [gl_LENIENT_CONDITIONAL]) if test -n "$user_flag"; then AM_CONDITIONAL([BAR], [test $user_flag = yes]) fi m4_popdef([AM_CONDITIONAL]) if test 0 = 1; then AM_CONDITIONAL([BAZ], [:]) fi m4_popdef([AM_CONDITIONAL]) But it certainly gets hairy... Bruno -- In memoriam Lamana Ould Bou <http://fr.wikipedia.org/wiki/Lamana_Ould_Bou>