Created attachment 376538 [details, diff] autotools.eclass.patch While investigating a bug on dev-db/mysql-super-smack-1.3-r2, I noticed that eautomake was not working properly. It would say "* Automake used for the package (1.4) differs from the installed version ().", as if there was no version detected at all. AxS came up with a patch which fixes the detection. Build log and how to repeat: grknight@tetsusaiga ~ $ ebuild /usr/portage/dev-db/mysql-super-smack/mysql-super-smack-1.3-r2.ebuild clean package * super-smack-1.3.tar.gz SHA256 SHA512 WHIRLPOOL size ;-) ... [ ok ] * checking ebuild checksums ;-) ... [ ok ] * checking auxfile checksums ;-) ... [ ok ] * checking miscfile checksums ;-) ... [ ok ] >>> cfg-update-1.8.2-r1: You need root privileges for this mode... >>> Unpacking source... >>> Unpacking super-smack-1.3.tar.gz to /var/tmp/portage/dev-db/mysql-super-smack-1.3-r2/work >>> Source unpacked in /var/tmp/portage/dev-db/mysql-super-smack-1.3-r2/work >>> Preparing source in /var/tmp/portage/dev-db/mysql-super-smack-1.3-r2/work/super-smack-1.3 ... * Applying mysql-super-smack-1.2.destdir.patch ... [ ok ] * Applying mysql-super-smack-1.3.amd64.patch ... [ ok ] * Applying mysql-super-smack-1.3.gcc4.3.patch ... [ ok ] * Applying mysql-super-smack-1.3-gen-data.patch ... [ ok ] * Automake used for the package (1.4) differs from * the installed version (). * Running eautoreconf in '/var/tmp/portage/dev-db/mysql-super-smack-1.3-r2/work/super-smack-1.3' ... * Running aclocal ... [ ok ] * Running autoconf ... [ ok ] * Running autoheader ... [ ok ] * Running automake --add-missing --copy --foreign --force-missing ... [ !! ] * Failed Running automake !
There's two parts to the patch -- the first adds an --output option to autotools_run_tool , so that whatever the output is from the tool can be parsed later (this is needed in order for the 'automake --version' call to actually return text for sed to parse). The second part ensures that the version '1.4-p6' is truncated so that it matches '1.4'; that is more specific to grknight's particular issue and I'm not sure if it's valid or not (ie, if there are cases when we really do want to match 1.4-p6 instead of 1.4, when an automake:1.4 is required).
*** Bug 513938 has been marked as a duplicate of this bug. ***
*** Bug 527356 has been marked as a duplicate of this bug. ***
Doesn't help to dupe against this if it's not discoverable when looking for a particular package's failure, you know.
i couldn't get that patch to work quite right, so i went with a similar one: http://sources.gentoo.org/eclass/autotools.eclass?r1=1.166&r2=1.167 it passed your testcase w/mysql-super-smack-1.3-r2 for me. hopefully it does for you as well ;).
for the record, it was working until this commit: http://sources.gentoo.org/eclass/autotools.eclass?r1=1.160&r2=1.161 i was pretty sure i had tested this originally before i landed it