autoconf
[Top][All Lists]
Advanced

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

Re: Site Macro Directory


From: Paul Eggert
Subject: Re: Site Macro Directory
Date: Thu, 16 May 2002 16:07:05 -0700 (PDT)

> From: "Mark D. Roth" <address@hidden>
> Date: Thu, 16 May 2002 14:36:37 -0500
> 
>   * autoconf will continue to treat aclocal.m4 as a user-supplied
>     input file, since there will probably always be a call for macros
>     that are specific to a given package and not worth sharing.
> 
>   * autoconf will read all of the m4 files in a site macro directory.
> 
>   * Any macro from the site macro directory that gets called in
>     configure.ac will (by default) get cached in a file called
>     accache.m4.

But the site macro directory contains files.  Will you ignore the file
structure, and effectively treat the directory's files as one huge
file that is concatenated?  I don't see how this would scale.

Also, how will you keep track of which site macros call which other
site macros?  The call graph may differ when different versions of
autoconf are applied to the same configure.ac.  So you can't cache
only the macros that got called in this particular autoconf
invocation; you have to cache them all.  I don't see how this would
scale either.

>   * If a macro exists in both the site macro directory and the
>     accache.m4 file, the version in the site macro directory will
>     replace the version that was originally in accache.m4.

This sounds awkward.  If I import a package from another source, and I
run 'autoconf', I'll lose its version of the macros and substitute my
own.  I suspect that this will cause many problems in practice, due to
macro variation.

> 
> This proposal should cover everything that we've talked about:
> 
>   * For now, aclocal can still be used to generate aclocal.m4 from
>     acinclude.m4.  (Eventually, my thought is that automake will
>     simply install its macros into the site macro directory and do
>     away with aclocal altogether.)

This will have problems at sites that have multiple versions of
automake.  Which versions will be installed into the site macro
directory?  If we have M versions of autoconf and N of automake,
will we need M*N site directories?

> Does this work for everyone?

How about an approach, in which you build a tool that maintains files
under the m4 subdirectory?  These files would be copied from the site
directory.  That way, you can easily build aclocal.m4 with the command
"cat m4/*.m4 >aclocal.m4", if you're not using aclocal; this could be
put into the makefile.  And if you are using aclocal, you don't even
need the "cat" command.



reply via email to

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