Hi John, * John Calcote wrote on Fri, Apr 03, 2009 at 09:33:40PM CEST: > On page 158, paragraph 3 of the 2.63 Autoconf manual, it states: > > "If a macro doesn’t use AC_REQUIRE, is expected to never be the object > of an AC_REQUIRE directive, and macros required by other macros inside > arguments do not need to be expanded before this macro, then use > m4_define." > > So the Autoconf manual is encouraging users to use m4_define, however, > when I define a macro using m4_define in a .m4 file in the m4 directory > of my project, aclocal ignores it by not m4_including it in the > generated aclocal.m4 file. It appears to require the use of AC_DEFUN, > rather than m4_define in stand-alone .m4 files.
Yep. > Is this a bug in aclocal? I don't think so. Do you think the quote is an encouragement not to use AC_REQUIRE? For public macros, I'd even venture to say that they should be written so they can be AC_REQUIREd (if they don't take arguments), or at least, that other macros which are expanded inside their contents or their arguments, may themselves AC_REQUIRE yet other macros which are then expanded outside of all this mess. Does the above make sense in any way? Cheers, Ralf