There are a few packages which include MakeMaker-based perl modules but are otherwise autoconf-based and the like. The problem is that these packages will update perllocal.pod, but as their ebuilds don't -- and can't -- use perl-module-src_install, either perllocal.pod gets clobbered (which is a nusiance at the least, but if collision-protect is enabled, emerge will fail!), or each ebuild author has to find their own workaround.
I found the following packages that are affected by this, and there may be more:
dev-util/subversion (bug 82648)
kde-base/dcopperl (bug 83520)
media-gfx/imagemagick (bug 73464 and 78740)
net-analyzer/net-snmp (bug 68367)
net-irc/irssi (bug 68367)
net-im/gaim (bug 69329 and many of the above)
I would propose as a solution breaking out the parts of perl-module_src_install that handle perllocal.pod into a separate function -- let's call it perl-module_fix_perllocal_pod for now -- that would be called in perl-module_src_install.
Then, those ebuilds that are affected would inherit perl-module, can call perl-module_fix_perllocal_pod at the end of their src_install, and call perl-module_pkg_postinst during pkg_postinst to merge the gentoo pod.
I don't see this being too hard to implement, and it will help fix a number of bugs and hopefully prevent more. Thanks for your work!
Created attachment 53373 [details]
sample of modified perl-module.eclass
Here's basically what I had in mind; I called the new function fixlocalpod, but
I'm sure someone could think of a better name for it.
I've tested this with a regular perl-module ebuild and a modified dcopperl (see
above) ebuild, and it worked properly.
Created attachment 53374 [details]
sample of dcopperl-3.3.1-r3.ebuild
Here's the example usage in dcopperl.
Great work - posting this now. I'm going to leave this bug open until we can get a hold of the other bug maintainers for inclusion.
Thanks. Glad this was helpful.
One thing that my dcopperl example fails to show is that updatepod needs to be called in pkg_postinst for full effect (dcopperl inherits perl-module_pkg_postinst directly in my example, since kde-meta doesn't export pkg_*inst). AFAICS, subversion and gaim will need to add this to their pre-existing pkg_postinst; the others should inherit it directly.
*** Bug 83912 has been marked as a duplicate of this bug. ***
This has been done on the perl end for some time now. Closing.