On 2018/12/24 19:05, Andrew Hewus Fresh wrote:
> I've finally gotten our local patches applied to perl 5.28.1 and it now
> could use some testing.  I was trying to get a few more of my
> architectures working, but I ran out of time and now I have to go visit
> family for the holidays so it's up to y'all to do some testing for me.
> 
> 
> The infrastructure to do that is still here on github, including
> instructions on using it:
> 
> https://github.com/afresh1/OpenBSD-perl/
> 
> 
> 
> You can also download a pre-patched perl from here, use it to replace
> src/gnu/usr.bin/perl and do a normal build to get it installed, do note
> that any XS modules that were built with the old version of perl will no
> longer work, so be careful.
> 
> http://cvs.afresh1.com/~andrew/OpenBSD-perl-5.28.1.tar.gz
> 
> 
> You can read more on the new features and changes on the metacpan.
> 
> https://metacpan.org/release/SHAY/perl-5.28.1
> 
> You find them in the perldelta for the versions since 5.24.
> 
> https://metacpan.org/pod/release/SHAY/perl-5.28.1/pod/perl5260delta.pod
> https://metacpan.org/pod/release/SHAY/perl-5.28.1/pod/perl5280delta.pod
> https://metacpan.org/pod/release/SHAY/perl-5.28.1/pod/perldelta.pod
> 
> 
> One of the important changes, and the one most likely to cause trouble
> is the removal of "." from the @INC library search list.

Having fixed a bunch of these, and cwen@ fixing a bunch more, and still
having 100-odd ports failing to build, I have come round to the idea of
setting PERL_USE_UNSAFE_INC instead. I wasn't super happy about this but
the upstream cpan tool seems resigned to doing this for now so we might
as well follow suit.

It seems sanest to set this in cpan.port.mk rather than individual Makefiles:

Index: cpan.port.mk
===================================================================
RCS file: /cvs/ports/infrastructure/mk/cpan.port.mk,v
retrieving revision 1.20
diff -u -p -r1.20 cpan.port.mk
--- cpan.port.mk        20 Mar 2016 19:56:44 -0000      1.20
+++ cpan.port.mk        3 Feb 2019 14:10:27 -0000
@@ -24,6 +24,11 @@ TEST_DEPENDS +=      devel/p5-Test-Pod \
                        devel/p5-Test-Pod-Coverage
 .endif
 
+# perl 5.26+ no longer has "." in @INC by default, but it's widely required in
+# build/test systems. set it locally, as is also done in the upstream cpan 
tool.
+CONFIGURE_ENV += PERL_USE_UNSAFE_INC=1
+TEST_ENV += PERL_USE_UNSAFE_INC=1
+
 MODCPAN_POST_INSTALL = ${INSTALL_DATA_DIR} ${MODCPAN_EXAMPLES_DIR}; \
        cd ${WRKSRC}/${MODCPAN_EXAMPLES_DIST}/ && pax -rw . 
${MODCPAN_EXAMPLES_DIR};\
        chown -R ${SHAREOWN}:${SHAREGRP} ${MODCPAN_EXAMPLES_DIR}


Applying that diff fixes 80+. Any major concerns about doing that
(especially espie@, afresh1@)? It hasn't been through a full build
(I added it after a run to mop up breakage) but I can do that.

The remaining broken ports after that are:

devel/p5-PerlIO-via-Timeout
games/zangband, security/steghide, x11/xtraceroute (via autoconf autom4te)
misc/cbb
net/p5-Net-FTPServer
security/p5-Crypt-Twofish
sysutils/p5-Sys-Virt
www/ap2-mod_perl
www/p5-HTML-FormatText-WithLinks-AndTables

Reply via email to