Hi Alexandre, * Alexandre Duret-Lutz wrote on Mon, Oct 17, 2005 at 10:44:27PM CEST: > Occasionally we want to disable automatic variable definitions > of AC_SUBSTitutions. Two cases were already hardcoded into > automake (AMDEPBACKSLASH and ANSI2KNR). I had been considering > adding such a feature since Autoconf introduced multiline > AC_SUBSTitutions. Now I think Ralf's suggestion in PR/477 makes > it even more relevant.
Thanks for tackling this! Two comments: I don't know whether AM_SUBST_IGNORE is a great name, but then again, I can't think of a better one either; AM_SUBST_NOVAR or _NOSET aren't. Also, see typo below. Cheers, Ralf > 2005-10-17 Alexandre Duret-Lutz <[EMAIL PROTECTED]> > > * automake.in (%ignored_configure_vars): New variable. > (scan_autoconf_traces): Scan for AM_SUBST_IGNORE_TRACE and fill > %ignored_configure_vars. > (define_configure_variable): Declare ignored configure variables > as VAR_SILENT. Do not special-case AMDEPBACKSLASH and ANSI2KNR > w.r.t. VAR_SILENT. > * doc/automake.texi (Optional): Document AM_SUBST_IGNORE. > * m4/substign.m4: New file. > * m4/Makefile.am (dist_m4data_DATA): Add substign.m4. > * m4/cond.m4: AM_SUBST_IGNORE $1_TRUE and $1_FALSE (PR automake/477). > * m4/depend.m4: AM_SUBST_IGNORE AMDEPBACKSLASH. > * m4/protos.m4: AM_SUBST_IGNORE ANSI2KNR. > * tests/cond.test: Make sure TEST_FALSE and TEST_TRUE are not defined. *snip* > Index: doc/automake.texi > =================================================================== > RCS file: /cvs/automake/automake/doc/automake.texi,v > retrieving revision 1.122 > diff -u -r1.122 automake.texi > --- doc/automake.texi 13 Sep 2005 23:14:55 -0000 1.122 > +++ doc/automake.texi 17 Oct 2005 20:35:45 -0000 > @@ -1588,6 +1588,9 @@ > you can use these variables in any @file{Makefile.am} if > @code{AC_PATH_XTRA} is called. > > [EMAIL PROTECTED] (see below) can be used to declare > +substitutions that should not be defined as @file{Makefile} variables. > + > @item AM_C_PROTOTYPES > This is required when using automatic de-ANSI-fication; see @ref{ANSI}. > > @@ -1606,6 +1609,16 @@ > @code{MAINTAINER_MODE} conditional, which you can use in your own > @file{Makefile.am}. @xref{maintainer-mode}. > > [EMAIL PROTECTED] AM_SUBST_IGNORE > +This is similar to and uses the same syntax as @code{AC_SUBST} (see > +above), except @command{automake} will not output a definition of the > +variable in any @file{Makefile.in} it produces. > + > +It is occasionally necessary to let Automake ignore some substitutions > +that are not meant to be used as @file{Makefile} variables. For > +instance values that are terminated by a backslash would cause syntax > +error is they were defined as @file{Makefile} variables. s/is/if/ > + > @item m4_include > Files included by @file{configure.ac} using this macro will be > detected by Automake and automatically distributed. They will also *snip*