I had trouble using an autoconf binary I compiled on my gentoo system
on another (non-gentoo) machine. Using this autoconf binary, I could
not compile automake on the other machine. It complained about
autoconf not working.
I traced the error back to m4:
NONE:0: /usr/bin/m4: `changeword' from frozen file not found in builtin table!
The above error is reported by a non-gentoo m4 binary I have compiled myself.
This is what the m4 info page says about 'changeword':
The macro `changeword' and all associated functionnality is
experimental. It is only available if the `--enable-changeword'
option was given to `configure', at GNU `m4' installation time.
The functionnality might change or even go away in the future.
_Do not rely on it_. Please direct your comments about it the
same way you would do for bugs.
Autoconf creates a few frozen m4 (*.m4f) files when it is being build.
Apparently, when it uses an m4 binary with changeword support to
create these frozen files, m4 binaries lacking changeword support
cannot use them.
m4-1.4-r1.ebuild harcodes the --enable-changeword option.
imho there should be a USE flag for m4 changeword support,
as this is not a stable feature.
Here is another quote from the m4 info page, that should worry
optimisation concerned gentoo users ;-)
You should note that using `changeword' will slow `m4' down by a
factor of about seven.
Created attachment 42021 [details, diff]
proposed patch to m4-1.4-r1.ebuild
Ooops, 1.4-r1 is not the newest version of m4 in portage.
But m4-1.4.1.ebuild has the same issue.
The patch I proposed has a severe problem: it removes changeword support
by default, which would pretty likely break autoconf on any running gentoo installation.
It should disable changeword only if -changeword is set in USE instead.
Someone should perhaps WONTFIX this?
looks like we backed ourselves into a wall with this ... if you turn off the feature then a lot of things that were generated with it will break