net/sendemail fails with perl 5.14 (INET6) (was: Re:
"net/sendemail" fails after updating Perl)
Hajimu UMEMOTO
ume at mahoroba.org
Sun May 22 16:36:37 UTC 2011
Hi,
>>>>> On Sun, 22 May 2011 15:51:35 +0300
>>>>> Ion-Mihai Tetcu <itetcu at FreeBSD.org> said:
> jerry> The port: "/net/sendemail" builds fine after the update to
> jerry> Perl; however, it no longer runs. It terminates with this
> jerry> error message:
>
> jerry> Subroutine IO::Socket::INET6::sockaddr_in6 redefined
> jerry> at /usr/local/lib/perl5/5.14.0/Exporter.pm line 67.
> jerry> at /usr/local/lib/perl5/site_perl/5.14.0/IO/Socket/INET6.pm
> jerry> line 21
>
> Perl 5.14 has its own IPv6 support. I suspect it is conflict with
> p5-IO-Socket-INET6.
itetcu> No, a nice thing about this port is that it's self contained (the only
itetcu> two optional depends, for TLS, are p5-IO-Socket-SSL and p5-Crypt-SSLeay).
Okay, net/sendemail itself doesn't depend on p5-IO-Socket-INET6,
directly. However, it seems that p5-IO-Socket-SSL has an option to
enable IPv6 support which is off by default. When an IPv6 option is
enabled, p5-IO-Socket-SSL depends on p5-IO-Socket-INET6.
/usr/local/lib/perl5/site_perl/5.14.0/IO/Socket/INET6.pm imports
sockaddr_in6() from Socket6. However, 5.14 has sockaddr_in6() in
/usr/local/lib/perl5/5.14.0/mach/Socket.pm. It seems to me that
IO::Socket::INET6 has to import sockaddr_in6() conditionally, now.
itetcu> The port is at the latest version (released in 2009, hmmmm).
itetcu> Since perl 5.14 is not the default, I marked it broken for now and
itetcu> ping upstream to see if there's still any active development.
itetcu> I don't intend to maintain this as a fork ; anyone wanting to take over
itetcu> maintainership has just to ping me.
I agreed. 5.14 is not the default.
> I found other compatibility issue that 5.14 deesn't has sv_undef,
> sv_yes nor sv_no, anymore. It causes that cyrus-imapd doesn't build
> with 5.14. Perhaps, there are more ports which are affected by this
> issue.
itetcu> Any way to detect this at build time? We could od a run on pointy if
itetcu> that's the case, and at least have a list of problems.
Yes, I found this at build time. I committed the workaround for
cyrus-imapd23 and cyrus-imapd24, already.
http://www.freebsd.org/cgi/cvsweb.cgi/ports/mail/cyrus-imapd24/files/patch-perl%3A%3Aimap%3A%3AIMAP.xs#rev1.3
Sincerely,
--
Hajimu UMEMOTO @ Internet Mutual Aid Society Yokohama, Japan
ume at mahoroba.org ume@{,jp.}FreeBSD.org
http://www.imasy.org/~ume/
More information about the freebsd-ports
mailing list