|
from AM_CONFIG_HEADER to AC_CONFIG_HEADERS: msg#00029sysutils.automake.patches
Here is something that seems to work. (I hope Akim will not have an heart attack we he come back from holiday and see this.) What should happen to AM_CONFIG_HEADER now that AC_CONFIG_HEADERS can be used? This patch documents it as obsolete, that's what I think makes more sense. Another approach would be to still recommend AM_CONFIG_HEADER over AC_CONFIG_HEADERS, even if both work identically (I fear this would be confusing). 2002-04-14 Alexandre Duret-Lutz <duret_g@xxxxxxxx> * m4/header.m4 (_AM_CONFIG_HEADER_INSINUATE): New function, override AC_CONFIG_HEADERS with AM_CONFIG_HEADER. (_AM_CONFIG_HEADER): Use _AM_AC_CONFIG_HEADERS. * m4/init.m4: Call _AM_CONFIG_HEADER_INSINUATE. * tests/stamph2.test: Use AC_CONFIG_HEADERS for some of the config files. * tests/confh5.test: New file. * tests/Makefile.am (TESTS): Add confh5.test. * automake.texi (Optional, Public macros): Update descriptions of AC_CONFIG_HEADERS and AM_CONFIG_HEADER. Index: NEWS =================================================================== RCS file: /cvs/automake/automake/NEWS,v retrieving revision 1.176 diff -u -r1.176 NEWS --- NEWS 13 Apr 2002 21:26:34 -0000 1.176 +++ NEWS 14 Apr 2002 15:04:34 -0000 @@ -1,4 +1,6 @@ New in 1.6a: +* It is no longuer a requirement to use AM_CONFIG_HEADER instead of + AC_CONFIG_HEADERS. AM_CONFIG_HEADER is obsolete. * Use Autoconf's --trace interface to inspect configure.ac and get a more accurate view of it. * automake --output-dir is deprecated Index: automake.texi =================================================================== RCS file: /cvs/automake/automake/automake.texi,v retrieving revision 1.272 diff -u -r1.272 automake.texi --- automake.texi 13 Apr 2002 21:26:34 -0000 1.272 +++ automake.texi 14 Apr 2002 15:04:56 -0000 @@ -1115,12 +1115,11 @@ and their effects are: @table @code -@item AC_CONFIG_HEADER -Automake requires the use of @code{AM_CONFIG_HEADER} (@pxref{Macros}), -which is similar to @code{AC_CONFIG_HEADER} (@pxref{Configuration -Headers, , Configuration Header Files, autoconf, The Autoconf Manual}), -but does some useful Automake-specific work. -@cvindex AC_CONFIG_HEADER +@item AC_CONFIG_HEADERS +Automake will generate rules to rebuild these headers. Older versions +of Automake required the use of @code{AM_CONFIG_HEADER} +(@pxref{Macros}); this no longuer the case today. +@cvindex AC_CONFIG_HEADERS @item AC_CONFIG_AUX_DIR Automake will look for various helper scripts, such as @@ -1385,7 +1384,8 @@ @table @code @item AM_CONFIG_HEADER Automake will generate rules to automatically regenerate the config -header. +header. This obsolete macro is a synonym of @code{AC_CONFIG_HEADERS} +today (@pxref{Optional}). @cvindex AM_CONFIG_HEADER @item AM_ENABLE_MULTILIB @@ -2326,7 +2326,7 @@ Automake already provides some @samp{-I} options automatically. In particular it generates @samp{-I$(srcdir)}, @samp{-I.}, and a @samp{-I} pointing to the directory holding @file{config.h} (if you've used -@code{AC_CONFIG_HEADER} or @code{AM_CONFIG_HEADER}). You can disable +@code{AC_CONFIG_HEADERS} or @code{AM_CONFIG_HEADER}). You can disable the default @samp{-I} options using the @samp{nostdinc} option. @item INCLUDES Index: m4/header.m4 =================================================================== RCS file: /cvs/automake/automake/m4/header.m4,v retrieving revision 1.14 diff -u -r1.14 header.m4 --- m4/header.m4 26 Oct 2001 09:59:59 -0000 1.14 +++ m4/header.m4 14 Apr 2002 15:05:04 -0000 @@ -62,7 +62,7 @@ AC_DEFUN([_AM_CONFIG_HEADER], [# Add the stamp file to the list of files AC keeps track of, # along with our hook. -AC_CONFIG_HEADERS([$1], +_AM_AC_CONFIG_HEADERS([$1], [# update the timestamp echo 'timestamp for $1' >"_AM_STAMP([$1])" $2], @@ -75,3 +75,20 @@ AC_DEFUN([AM_CONFIG_HEADER], [AC_FOREACH([_AM_File], [$1], [_AM_CONFIG_HEADER(_AM_File, [$2], [$3])]) ])# AM_CONFIG_HEADER + + +# _AM_CONFIG_HEADER_INSINUATE +# --------------------------- +# Replace AC_CONFIG_HEADERS with our AM_CONFIG_HEADER. +# We don't care about AC_CONFIG_HEADER (without S): it's an obsolete +# Autoconf macro which will simply call AC_CONFIG_HEADERS (with S). +AC_DEFUN([_AM_CONFIG_HEADER_INSINUATE], [ +dnl Since the substitution is only effective after AM_INIT_AUTOMAKE, +dnl make sure AC_CONFIG_HEADERS is not called before. +AC_BEFORE([AM_INIT_AUTOMAKE], [AC_CONFIG_HEADERS])dnl +dnl Save the previous AC_CONFIG_HEADERS definition +m4_rename([AC_CONFIG_HEADERS], [_AM_AC_CONFIG_HEADERS])dnl +dnl Setup ours. +dnl (Don't use m4_copy because we are tracing AM_CONFIG_HEADER.) +AC_DEFUN([AC_CONFIG_HEADERS], [AM_CONFIG_HEADER($][@)])dnl +]) Index: m4/init.m4 =================================================================== RCS file: /cvs/automake/automake/m4/init.m4,v retrieving revision 1.44 diff -u -r1.44 init.m4 --- m4/init.m4 17 Mar 2002 23:18:00 -0000 1.44 +++ m4/init.m4 14 Apr 2002 15:05:04 -0000 @@ -87,13 +87,14 @@ AC_REQUIRE([AC_PROG_MAKE_SET])dnl _AM_IF_OPTION([no-dependencies],, -[AC_PROVIDE_IFELSE([AC_PROG_][CC], +[AC_PROVIDE_IFELSE([AC_PROG_CC], [_AM_DEPENDENCIES(CC)], - [define([AC_PROG_][CC], - defn([AC_PROG_][CC])[_AM_DEPENDENCIES(CC)])])dnl -AC_PROVIDE_IFELSE([AC_PROG_][CXX], + [define([AC_PROG_CC], + defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl +AC_PROVIDE_IFELSE([AC_PROG_CXX], [_AM_DEPENDENCIES(CXX)], - [define([AC_PROG_][CXX], - defn([AC_PROG_][CXX])[_AM_DEPENDENCIES(CXX)])])dnl + [define([AC_PROG_CXX], + defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl ]) +_AM_CONFIG_HEADER_INSINUATE ]) Index: tests/Makefile.am =================================================================== RCS file: /cvs/automake/automake/tests/Makefile.am,v retrieving revision 1.388 diff -u -r1.388 Makefile.am --- tests/Makefile.am 13 Apr 2002 21:48:35 -0000 1.388 +++ tests/Makefile.am 14 Apr 2002 15:05:04 -0000 @@ -92,6 +92,7 @@ confdist.test \ confh.test \ confh4.test \ +confh5.test \ config.test \ confincl.test \ confsub.test \ Index: tests/confh5.test =================================================================== RCS file: tests/confh5.test diff -N tests/confh5.test --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ tests/confh5.test 14 Apr 2002 15:05:11 -0000 @@ -0,0 +1,19 @@ +#! /bin/sh + +# Make sure Autoconf complains if AC_CONFIG_HEADERS appears +# before AM_INIT_AUTOMAKE. + +. $srcdir/defs || exit 1 + +cat > configure.in << 'END' +AC_INIT +AC_CONFIG_HEADERS(config.h) +AM_INIT_AUTOMAKE(nonesuch, nonesuch) +AC_OUTPUT +END + +: > config.h.in + +$ACLOCAL || exit 1 +$AUTOCONF 2>&1 | grep AC_CONFIG_HEADERS || exit 1 +: Index: tests/stamph2.test =================================================================== RCS file: /cvs/automake/automake/tests/stamph2.test,v retrieving revision 1.5 diff -u -r1.5 stamph2.test --- tests/stamph2.test 26 Dec 2001 08:22:06 -0000 1.5 +++ tests/stamph2.test 14 Apr 2002 15:05:11 -0000 @@ -3,18 +3,16 @@ # Make sure stamp-h* files are created where we expect . $srcdir/defs || exit 1 -cat > configure.in << END -AC_INIT(Makefile.am) -AM_INIT_AUTOMAKE($me, 1.0) +cat >> configure.in << END AM_CONFIG_HEADER(1.h 2.h:config.hin - 3.h:sdir1/config1.hin - - sdir1/4.h - sdir1/5.h:config.hin - sdir1/6.h:sdir1/config1.hin - sdir1/7.h:sdir2/config2.hin) -AC_OUTPUT(Makefile) + 3.h:sdir1/config1.hin) +# AM_CONFIG_HEADER and AC_CONFIG_HEADERS should be synonyms. +AC_CONFIG_HEADERS(sdir1/4.h + sdir1/5.h:config.hin + sdir1/6.h:sdir1/config1.hin + sdir1/7.h:sdir2/config2.hin) +AC_OUTPUT END : > Makefile.am -- Alexandre Duret-Lutz |
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| Previous by Date: | FYI: let's trace!: 00029, Alexandre Duret-Lutz |
|---|---|
| Next by Date: | print skipped tests and bug report address: 00029, Alexandre Duret-Lutz |
| Previous by Thread: | FYI: let's trace!i: 00029, Alexandre Duret-Lutz |
| Next by Thread: | Re: from AM_CONFIG_HEADER to AC_CONFIG_HEADERS: 00029, Alexandre Duret-Lutz |
| Indexes: | [Date] [Thread] [Top] [All Lists] |
| News | FAQ | advertise |