automake: Future of aclocal

1 
1 6.3.6 The Future of ‘aclocal’
1 -----------------------------
1 
1 ‘aclocal’ is expected to disappear.  This feature really should not be
1 offered by Automake.  Automake should focus on generating ‘Makefile’s;
1 dealing with M4 macros really is Autoconf’s job.  The fact that some
1 people install Automake just to use ‘aclocal’, but do not use ‘automake’
1 otherwise is an indication of how that feature is misplaced.
1 
1    The new implementation will probably be done slightly differently.
11 For instance, it could enforce the ‘m4/’-style layout discussed in ⇒
 Local Macros.
1 
1    We have no idea when and how this will happen.  This has been
1 discussed several times in the past, but someone still has to commit to
1 that non-trivial task.
1 
1    From the user point of view, ‘aclocal’’s removal might turn out to be
1 painful.  There is a simple precaution that you may take to make that
1 switch more seamless: never call ‘aclocal’ yourself.  Keep this guy
1 under the exclusive control of ‘autoreconf’ and Automake’s rebuild
1 rules.  Hopefully you won’t need to worry about things breaking, when
1 ‘aclocal’ disappears, because everything will have been taken care of.
1 If otherwise you used to call ‘aclocal’ directly yourself or from some
1 script, you will quickly notice the change.
1 
1    Many packages come with a script called ‘bootstrap’ or ‘autogen.sh’,
1 that will just call ‘aclocal’, ‘libtoolize’, ‘gettextize’ or
1 ‘autopoint’, ‘autoconf’, ‘autoheader’, and ‘automake’ in the right
1 order.  Actually this is precisely what ‘autoreconf’ can do for you.  If
1 your package has such a ‘bootstrap’ or ‘autogen.sh’ script, consider
1 using ‘autoreconf’.  That should simplify its logic a lot (less things
1 to maintain, yum!), it’s even likely you will not need the script
1 anymore, and more to the point you will not call ‘aclocal’ directly
1 anymore.
1 
1    For the time being, third-party packages should continue to install
1 public macros into ‘/usr/share/aclocal/’.  If ‘aclocal’ is replaced by
1 another tool it might make sense to rename the directory, but supporting
1 ‘/usr/share/aclocal/’ for backward compatibility should be really easy
1 provided all macros are properly written (⇒Extending aclocal).
1