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