>>> "Matthias" == Matthias Koeppe <[EMAIL PROTECTED]> writes:
Matthias> Guile's `guile-aclocal.sh' script fails with automake Matthias> 1.6.1. Here is the relevant part: >> # copy all installed aclocal files into $temp >> cp `aclocal --print-ac-dir`/*.m4 $temp >> >> # remove the .m4 files installed by Guile from $temp, so they don't >> # cause conflicts >> rm -f ${temp}/guile.m4 ${temp}/qthreads.m4 >> >> aclocal --acdir=$temp -I . This is a work-around makes sense up to Automake 1.4. It still works with 1.5. It breaks with recent versions. aclocal from Automake 1.4 chokes when a -I supplied macro override a /usr/share/aclocal/ macro, hence your script. Starting with Automake 1.5, a macro supplied with -I will override any macro installed in /usr/share/aclocal/, so you simply have to run aclocal -I . (no cp, rm, or --acdir) Matthias> As far as I understand it, this fails with automake Matthias> 1.6.1 because the "aclocal" library location is Matthias> versioned with the automake API version. Starting with Automake 1.6, there are TWO places: $datadir/aclocal-1.6/ The directory where Automake puts its internal macros (AM_INIT_AUTOMAKE and the like). This needs to be versioned. $datadir/aclocal/ This is the directory where third-party packages are expected to put their macros. This is not versioned, since these macros are really independent of Automake. Matthias> On my system, the location is Matthias> /localapp/imosoft/sparcv9-sun-solaris2.7/share/aclocal-1.6 This is Automake's own macro repository. The user should not have to fiddle with it. Matthias> but Matthias> aclocal --print-ac-dir Matthias> ==> /localapp/imosoft/sparcv9-sun-solaris2.7/share/aclocal This prints the directory when third-party packages are expected to install their macros. Matthias> which happens to point to an old (1.4) installation of the aclocal Matthias> library. If you haven't uninstalled Automake 1.4/1.5, their files are still here. This is harmless: the macros found in the versioned directory have priority. Matthias> When aclocal is invoked with --acdir set to a copy of this library, Matthias> automake fails with these messages: --acdir overrides both the private (versioned) and public (unversioned) aclocal directories, hence the failure. (This switch is needed in Automake's testsuite which has to run aclocal before the macros are installed.) [...] -- Alexandre Duret-Lutz