I merged the ebuild "net-dialup/mserver-0.5.5-r1" and attempted to start the mserver daemon, only to discover that the executable didn't exist. I merged it again and noticed that the build phase had failed, but the ebuild hadn't noticed, but had merged anyway. I dug a little deeper and discovered that the build failed because one of the C files had "extern int errno;" instead of "#include <errno.h>". Apparently, recent versions of Glibc or GCC don't like that. I'll attach my slightly modified ebuild, which checks for failed builds and patches the source to use errno correctly. I'd submit the patch to the author, but it seems to be currently unmaintained. Reproducible: Always Steps to Reproduce: 1. "emerge net-dialup/mserver-0.5.5-r1" on an up to date Gentoo system 2. attempt to start the mserver daemon 3. discover that it doesn't exist
Created attachment 19090 [details] my slightly modified ebuild
Created attachment 19091 [details, diff] patch to fix errno link problem
thx, commited :)
Thanks for the quick resolution. Is it normal to modify an ebuild without changing its version? I would have thought it better to bump the version to "mserver-0.5.5-r2", especially since the ebuild has been around for a while and probably worked fine initially. It's not a big deal for such a small change; I am just curious about normal portage policy.
as this is a compile fix and people who have it installed, needn't recompile it, i didn't bump the version.