From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id D4A961581B9 for ; Fri, 03 Oct 2025 20:42:15 +0000 (UTC) Received: from lists.gentoo.org (bobolink.gentoo.org [140.211.166.189]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: relay-lists.gentoo.org@gentoo.org) by smtp.gentoo.org (Postfix) with ESMTPSA id 9B9DC340F37 for ; Fri, 03 Oct 2025 20:42:15 +0000 (UTC) Received: from bobolink.gentoo.org (localhost [127.0.0.1]) by bobolink.gentoo.org (Postfix) with ESMTP id 9B1E51103E2; Fri, 03 Oct 2025 20:42:14 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by bobolink.gentoo.org (Postfix) with ESMTPS id 906AF1103E2 for ; Fri, 03 Oct 2025 20:42:14 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 44076335D86 for ; Fri, 03 Oct 2025 20:42:14 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id A7C143A8F for ; Fri, 03 Oct 2025 20:42:12 +0000 (UTC) From: "Sam James" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Sam James" Message-ID: <1759524087.e416f4710d6467c5e289a16a05e2751c34385b21.sam@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/perl/, dev-lang/perl/files/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-lang/perl/files/perl-5.42.0-cross-rebase.patch dev-lang/perl/perl-5.42.0.ebuild X-VCS-Directories: dev-lang/perl/ dev-lang/perl/files/ X-VCS-Committer: sam X-VCS-Committer-Name: Sam James X-VCS-Revision: e416f4710d6467c5e289a16a05e2751c34385b21 X-VCS-Branch: master Date: Fri, 03 Oct 2025 20:42:12 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 9699f720-d00a-4364-a244-2b0ff678c697 X-Archives-Hash: 18889c6ae5b37d929cebb323ff593ffa commit: e416f4710d6467c5e289a16a05e2751c34385b21 Author: Sam James gentoo org> AuthorDate: Fri Oct 3 20:41:27 2025 +0000 Commit: Sam James gentoo org> CommitDate: Fri Oct 3 20:41:27 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e416f471 dev-lang/perl: apply upstream PR for perl-cross vs 5.42.0 Closes: https://bugs.gentoo.org/959686 Signed-off-by: Sam James gentoo.org> dev-lang/perl/files/perl-5.42.0-cross-rebase.patch | 189 +++++++++++++++++++++ dev-lang/perl/perl-5.42.0.ebuild | 2 + 2 files changed, 191 insertions(+) diff --git a/dev-lang/perl/files/perl-5.42.0-cross-rebase.patch b/dev-lang/perl/files/perl-5.42.0-cross-rebase.patch new file mode 100644 index 000000000000..f03d49818b84 --- /dev/null +++ b/dev-lang/perl/files/perl-5.42.0-cross-rebase.patch @@ -0,0 +1,189 @@ +https://github.com/arsv/perl-cross/pull/164 + +From b47ef629459076a5ccb3d0caf83ccfbb8ba0571b Mon Sep 17 00:00:00 2001 +From: Marcus Ramberg +Date: Wed, 3 Sep 2025 10:35:58 +0200 +Subject: [PATCH] patches for perl-5.42.0 + +--- + cnf/diffs/perl5-5.42.0/constant.patch | 1 + + cnf/diffs/perl5-5.42.0/dynaloader.patch | 1 + + cnf/diffs/perl5-5.42.0/findext.patch | 1 + + cnf/diffs/perl5-5.42.0/installscripts.patch | 1 + + cnf/diffs/perl5-5.42.0/liblist.patch | 80 +++++++++++++++++++++ + cnf/diffs/perl5-5.42.0/makemaker.patch | 1 + + cnf/diffs/perl5-5.42.0/posix-makefile.patch | 1 + + cnf/diffs/perl5-5.42.0/test-checkcase.patch | 1 + + cnf/diffs/perl5-5.42.0/test-makemaker.patch | 1 + + cnf/diffs/perl5-5.42.0/xconfig.patch | 1 + + 10 files changed, 89 insertions(+) + create mode 120000 cnf/diffs/perl5-5.42.0/constant.patch + create mode 120000 cnf/diffs/perl5-5.42.0/dynaloader.patch + create mode 120000 cnf/diffs/perl5-5.42.0/findext.patch + create mode 120000 cnf/diffs/perl5-5.42.0/installscripts.patch + create mode 100644 cnf/diffs/perl5-5.42.0/liblist.patch + create mode 120000 cnf/diffs/perl5-5.42.0/makemaker.patch + create mode 120000 cnf/diffs/perl5-5.42.0/posix-makefile.patch + create mode 120000 cnf/diffs/perl5-5.42.0/test-checkcase.patch + create mode 120000 cnf/diffs/perl5-5.42.0/test-makemaker.patch + create mode 120000 cnf/diffs/perl5-5.42.0/xconfig.patch + +diff --git a/cnf/diffs/perl5-5.42.0/constant.patch b/cnf/diffs/perl5-5.42.0/constant.patch +new file mode 120000 +index 0000000..065e198 +--- /dev/null ++++ b/cnf/diffs/perl5-5.42.0/constant.patch +@@ -0,0 +1 @@ ++../perl5-5.22.3/constant.patch +\ No newline at end of file +diff --git a/cnf/diffs/perl5-5.42.0/dynaloader.patch b/cnf/diffs/perl5-5.42.0/dynaloader.patch +new file mode 120000 +index 0000000..ffb73eb +--- /dev/null ++++ b/cnf/diffs/perl5-5.42.0/dynaloader.patch +@@ -0,0 +1 @@ ++../perl5-5.22.3/dynaloader.patch +\ No newline at end of file +diff --git a/cnf/diffs/perl5-5.42.0/findext.patch b/cnf/diffs/perl5-5.42.0/findext.patch +new file mode 120000 +index 0000000..9efbe5b +--- /dev/null ++++ b/cnf/diffs/perl5-5.42.0/findext.patch +@@ -0,0 +1 @@ ++../perl5-5.22.3/findext.patch +\ No newline at end of file +diff --git a/cnf/diffs/perl5-5.42.0/installscripts.patch b/cnf/diffs/perl5-5.42.0/installscripts.patch +new file mode 120000 +index 0000000..1c05e0f +--- /dev/null ++++ b/cnf/diffs/perl5-5.42.0/installscripts.patch +@@ -0,0 +1 @@ ++../perl5-5.36.0/installscripts.patch +\ No newline at end of file +diff --git a/cnf/diffs/perl5-5.42.0/liblist.patch b/cnf/diffs/perl5-5.42.0/liblist.patch +new file mode 100644 +index 0000000..5e6331f +--- /dev/null ++++ b/cnf/diffs/perl5-5.42.0/liblist.patch +@@ -0,0 +1,80 @@ ++When deciding which libraries are available, the original Configure uses ++shaky heuristics to physically locate library files. ++This is a very very bad thing to do, *especially* when cross-compiling, ++as said heiristics are likely to locate the host libraries, not the target ones. ++ ++The only real need for this test is to make sure it's safe to pass -llibrary ++to the compiler. So that's exactly what perl-cross does, pass -llibrary ++and see if it breaks things. ++ ++Note this is a part of MakeMaker, and only applies to module Makefiles. ++ ++ ++--- a/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm +++++ b/cpan/ExtUtils-MakeMaker/lib/ExtUtils/Liblist/Kid.pm ++@@ -20,9 +20,10 @@ ++ use File::Spec; ++ ++ sub ext { ++- if ( $^O eq 'VMS' ) { goto &_vms_ext; } ++- elsif ( $^O eq 'MSWin32' ) { goto &_win32_ext; } ++- else { goto &_unix_os2_ext; } +++ if ($Config{usemmldlt}){ goto &_ld_ext; } +++ elsif($^O eq 'VMS') { goto &_vms_ext; } +++ elsif($^O eq 'MSWin32') { goto &_win32_ext; } +++ else { goto &_unix_os2_ext; } ++ } ++ ++ sub _unix_os2_ext { ++@@ -661,4 +662,51 @@ ++ wantarray ? ( $lib, '', $ldlib, '', ( $give_libs ? \@flibs : () ) ) : $lib; ++ } ++ +++# A direct test for -l validity. +++# Because guessing real file names for -llib options when dealing +++# with a cross compiler is generally a BAD IDEA^tm. +++sub _ld_ext { +++ my($self,$potential_libs, $verbose, $give_libs) = @_; +++ $verbose ||= 0; +++ +++ if ($^O =~ 'os2' and $Config{perllibs}) { +++ # Dynamic libraries are not transitive, so we may need including +++ # the libraries linked against perl.dll again. +++ +++ $potential_libs .= " " if $potential_libs; +++ $potential_libs .= $Config{perllibs}; +++ } +++ return ("", "", "", "", ($give_libs ? [] : ())) unless $potential_libs; +++ warn "Potential libraries are '$potential_libs':\n" if $verbose; +++ +++ my($ld) = $Config{ld}; +++ my($ldflags) = $Config{ldflags}; +++ my($libs) = defined $Config{perllibs} ? $Config{perllibs} : $Config{libs}; +++ +++ my $try = 'try_mm.c'; +++ my $tryx = 'try_mm.x'; +++ open(TRY, '>', $try) || die "Can't create MakeMaker test file $try: $!\n"; +++ print TRY "int main(void) { return 0; }\n"; +++ close(TRY); +++ +++ my $testlibs = ''; +++ my @testlibs = (); +++ foreach my $thislib (split ' ', $potential_libs) { +++ $testlibs = join(' ', @testlibs); +++ if($thislib =~ /^-L/) { +++ push(@testlibs, $thislib); +++ next +++ }; +++ my $cmd = "$ld $ldflags -o $tryx $try $testlibs $thislib >/dev/null 2>&1"; +++ my $ret = system($cmd); +++ warn "Warning (mostly harmless): " . "No library found for $thislib\n" if $ret; +++ next if $ret; +++ push @testlibs, $thislib; +++ } +++ unlink($try); +++ unlink($tryx); +++ +++ return (join(' ', @testlibs), '', join(' ', @testlibs), ''); +++} +++ ++ 1; +diff --git a/cnf/diffs/perl5-5.42.0/makemaker.patch b/cnf/diffs/perl5-5.42.0/makemaker.patch +new file mode 120000 +index 0000000..d7bd609 +--- /dev/null ++++ b/cnf/diffs/perl5-5.42.0/makemaker.patch +@@ -0,0 +1 @@ ++../perl5-5.38.0/makemaker.patch +\ No newline at end of file +diff --git a/cnf/diffs/perl5-5.42.0/posix-makefile.patch b/cnf/diffs/perl5-5.42.0/posix-makefile.patch +new file mode 120000 +index 0000000..29463b7 +--- /dev/null ++++ b/cnf/diffs/perl5-5.42.0/posix-makefile.patch +@@ -0,0 +1 @@ ++../perl5-5.22.3/posix-makefile.patch +\ No newline at end of file +diff --git a/cnf/diffs/perl5-5.42.0/test-checkcase.patch b/cnf/diffs/perl5-5.42.0/test-checkcase.patch +new file mode 120000 +index 0000000..36c5186 +--- /dev/null ++++ b/cnf/diffs/perl5-5.42.0/test-checkcase.patch +@@ -0,0 +1 @@ ++../perl5-5.22.3/test-checkcase.patch +\ No newline at end of file +diff --git a/cnf/diffs/perl5-5.42.0/test-makemaker.patch b/cnf/diffs/perl5-5.42.0/test-makemaker.patch +new file mode 120000 +index 0000000..4e970ff +--- /dev/null ++++ b/cnf/diffs/perl5-5.42.0/test-makemaker.patch +@@ -0,0 +1 @@ ++../perl5-5.34.0/test-makemaker.patch +\ No newline at end of file +diff --git a/cnf/diffs/perl5-5.42.0/xconfig.patch b/cnf/diffs/perl5-5.42.0/xconfig.patch +new file mode 120000 +index 0000000..1c22c96 +--- /dev/null ++++ b/cnf/diffs/perl5-5.42.0/xconfig.patch +@@ -0,0 +1 @@ ++../perl5-5.41.3/xconfig.patch +\ No newline at end of file + diff --git a/dev-lang/perl/perl-5.42.0.ebuild b/dev-lang/perl/perl-5.42.0.ebuild index 10f0171d4e73..e927faba926f 100644 --- a/dev-lang/perl/perl-5.42.0.ebuild +++ b/dev-lang/perl/perl-5.42.0.ebuild @@ -276,6 +276,8 @@ src_prepare_perlcross() { # bug 794463, needs further analysis what is exactly wrong here eapply "${FILESDIR}/perl-5.34.0-crossfit.patch" + # bug 959686, rebase via upstream PR (no 5.42.0 release) + eapply "${FILESDIR}/perl-5.42.0-cross-rebase.patch" # bug 604072 MAKEOPTS+=" -j1"