autoconf
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: trouble adding new macros to my configure.ac


From: Richard Ash
Subject: Re: trouble adding new macros to my configure.ac
Date: Sun, 26 Apr 2009 17:23:51 +0100

On Wed, 2009-04-22 at 20:45 -0600, Eric Blake wrote:
> According to John Calcote on 4/22/2009 5:09 PM:
> > If you use Autoconf alone, then aclocal.m4 is the place to put extra
> > macro definitions. However, when you use it with Automake, then the
> > aclocal utility gathers macro definitions from multiple locations and
> > overwrites aclocal.m4 with these various extra sources. In this case,
> > use acinclude.m4, as that's one of the places that aclocal gathers from
> > to build the new aclocal.m4 file.
> 
> Is there anything we can do to the autoconf documentation to make this
> point more clear?  We do want to support both camps of users - those who
> use just autoconf (and edit aclocal.m4), and those who use automake (who
> edit acinclude.m4 or dump files in the m4 include directory), and the
> documentation should make it clear which approach a developer should use
> based on the tools they are currently using.

With the added complication that it is perfectly possible to use just
aclocal and autoconf but not automake, to get the benefits of an m4
include directory (i.e. all the reasons why a directory is an
improvement over the single acinclude.m4 file) without using automake.

So we have a grid of four possible scenarios, with the added
complication that autoconf doesn't maintain aclocal, and aclocal doesn't
honour the argument to AC_CONFIG_MACRO_DIR. This means if you don't use
automake, then you have to remember to add the -I option to aclocal by
hand.

Documenting this clearly for new users is always going to be hard if you
insist upon having a large number of equivalent ways of doing things,
which raises the question whether we can simplify down the list,
relegating some methods to "kept for compatibility" status, and keep
them out of the explanation. Use of acinclude.m4 might be put in this
category (Automake's manual already says this:
http://www.gnu.org/software/automake/manual/html_node/Local-Macros.html.
A link to this page in the autoconf manual might not be a bad idea)

This leaves really two cases:
1. Use aclocal (regardless of whether you use automake or not): use an
m4 include directory, and explain how to make sure it is searched.
2. Don't use aclocal: you have to edit aclocal.m4 by hand, because no
other files will be searched by autoconf.

I don't know if that helps or not, but it does cut the options down a
bit.

Richard





reply via email to

[Prev in Thread] Current Thread [Next in Thread]