commit: f8a4d78fc0ddcd4db208cf2c94488487139ae1a9 Author: Sam James <sam <AT> gentoo <DOT> org> AuthorDate: Sat Jun 28 03:04:37 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Sat Jun 28 03:04:37 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f8a4d78f
dev-perl/EV: fix build w/ perl-5.42 Closes: https://bugs.gentoo.org/959141 Signed-off-by: Sam James <sam <AT> gentoo.org> dev-perl/EV/EV-4.340.0.ebuild | 7 +++++-- dev-perl/EV/files/EV-4.34-perl-5.42.patch | 17 +++++++++++++++++ 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/dev-perl/EV/EV-4.340.0.ebuild b/dev-perl/EV/EV-4.340.0.ebuild index d4a824e327b6..efe99cb7177f 100644 --- a/dev-perl/EV/EV-4.340.0.ebuild +++ b/dev-perl/EV/EV-4.340.0.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -18,10 +18,13 @@ RDEPEND=" " BDEPEND=" ${RDEPEND} - virtual/perl-ExtUtils-MakeMaker dev-perl/Canary-Stability " +PATCHES=( + "${FILESDIR}"/${PN}-4.34-perl-5.42.patch +) + src_compile() { # See bug #855869 and its large number of dupes in bundled libev copies. filter-lto diff --git a/dev-perl/EV/files/EV-4.34-perl-5.42.patch b/dev-perl/EV/files/EV-4.34-perl-5.42.patch new file mode 100644 index 000000000000..ae821fa895cb --- /dev/null +++ b/dev-perl/EV/files/EV-4.34-perl-5.42.patch @@ -0,0 +1,17 @@ +https://bugs.gentoo.org/959141 +https://github.com/Perl/perl5/issues/22353#issuecomment-2907796786 +--- a/typemap ++++ b/typemap +@@ -37,9 +37,9 @@ T_LOOP + + T_WATCHER + if (!(SvROK ($arg) && SvOBJECT (SvRV ($arg)) +- && (SvSTASH (SvRV ($arg)) == stash_" . ($type =~ /ev_(\S+)/, "$1") . " +- || sv_derived_from ($arg, \"EV::" . ($type =~ /ev_(\S+)/, ucfirst "$1") . "\")))) +- croak (\"object is not of type EV::" . ($type =~ /ev_(\S+)/, ucfirst "$1") . "\"); ++ && (SvSTASH (SvRV ($arg)) == stash_${ ($type =~ /ev_(\S+)/, \qq{$1}) } ++ || sv_derived_from ($arg, \"EV::${ ($type =~ /ev_(\S+)/, \ucfirst qq{$1}) }\")))) ++ croak (\"object is not of type EV::${ ($type =~ /ev_(\S+)/, \ucfirst qq{$1}) }\"); + $var = ($type)SvPVX (SvRV ($arg)); + + OUTPUT
