On Sat, 4 Sep 2010 00:25:32 +0200 Al <[email protected]> wrote:
> Thank you very much. That is the best explanation a read to this. It > should be deliverd with the sources. > > Still the procedure is unusual. They could apply a patch to > extensions/ filefuncs.c and exclude it for vanilla. Since it's critical for Gentoo gawk, perhaps they didn't want to depend on gawk's source distribution suddenly removing that file or otherwise changing (and patches need to be maintained up-to-date against the original, while a standalone file does not need maintenance). But this is all just my guessing. > I have a second issue. When compiling gawk on Cygwin, where is no > windows kernel, the Gentoo version of filefuncs breaks. I have to > disable it in the ebuild to get gawk compiled. > > filefuncs.o:filefuncs.c:(.text+0x1e): undefined reference to > `_make_builtin' [... lots of this ... ] > filefuncs.o:filefuncs.c:(.text+0x10f1): undefined reference to > `_update_ERRNO' collect2: ld returned 1 exit status > make: *** [filefuncs.so.0.0.1] Error 1 > > You say it is mandatory on a Gentoo system, because there are awk > scripts that rely on. Do this functions break because of the missing > kernel? What would be the workaround? How are you building it? It needs special commands because it needs to become a shared object, not an executable. Note that building that file is by no means necessary for a working gawk. And, even if you built it, it wouldn't do anything unless you specifically used the extension() gawk command to reference the object file and import the extra definitions (see the link I posted in the first email for all the gory details. Also the Makefile that comes with Gentoo's own filefuncs.c may help).

