summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRaul E Rangel <rrangel@chromium.org>2023-05-18 12:32:34 -0600
committerSam James <sam@gentoo.org>2024-01-20 12:00:21 +0000
commit842c2e9bff302de882b067103e3abf20568e2ee8 (patch)
treeeb585c8a51e0368db1bf233fe9c1a5c6f21d7ace /dev-lang
parentapp-text/cherrytree: Version bump to 1.0.4 (diff)
downloadgentoo-842c2e9bff302de882b067103e3abf20568e2ee8.tar.gz
gentoo-842c2e9bff302de882b067103e3abf20568e2ee8.tar.bz2
gentoo-842c2e9bff302de882b067103e3abf20568e2ee8.zip
dev-lang/perl: Fix clang check in configure
The check was a bit too strict. `clang` actually appears in the middle of the version string. This change will allow perl to build correctly when `gcc` isn't present on the system. See: https://github.com/Perl/perl5/issues/21099 Signed-off-by: Raul E Rangel <rrangel@chromium.org> Closes: https://github.com/gentoo/gentoo/pull/32677 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-lang')
-rw-r--r--dev-lang/perl/files/perl-5.36.0-fix-configure-for-clang.patch41
-rw-r--r--dev-lang/perl/perl-5.36.1-r3.ebuild4
-rw-r--r--dev-lang/perl/perl-5.38.0-r1.ebuild4
-rw-r--r--dev-lang/perl/perl-5.38.2-r1.ebuild4
4 files changed, 53 insertions, 0 deletions
diff --git a/dev-lang/perl/files/perl-5.36.0-fix-configure-for-clang.patch b/dev-lang/perl/files/perl-5.36.0-fix-configure-for-clang.patch
new file mode 100644
index 000000000000..3ad508c95f7e
--- /dev/null
+++ b/dev-lang/perl/files/perl-5.36.0-fix-configure-for-clang.patch
@@ -0,0 +1,41 @@
+From 40db21129c0ba08ea457b6e40e7357e86ea1404b Mon Sep 17 00:00:00 2001
+From: Raul E Rangel <rrangel@chromium.org>
+Date: Fri, 28 Jul 2023 15:50:49 -0600
+Subject: [PATCH] hints/linux: Add additional expression when matching clang
+
+Newer versions of clang actually print the distro before `clang` when
+calling `$CC --version`. This changes fixes the regex so it can match
+this new pattern.
+
+i.e.,
+
+ $ clang --version
+ Debian clang version 14.0.6
+
+ $ x86_64-pc-linux-gnu-clang --version
+ Chromium OS 17.0_pre496208_p20230501-r1 clang version 17.0.0
+
+Fixes #21099
+
+BUG=b:283275881
+See: https://github.com/Perl/perl5/issues/21099
+---
+ hints/linux.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/hints/linux.sh b/hints/linux.sh
+index e1508c7509..5202b28b09 100644
+--- a/hints/linux.sh
++++ b/hints/linux.sh
+@@ -166,7 +166,7 @@ esac
+ if [ -x /usr/bin/gcc ] ; then
+ gcc=/usr/bin/gcc
+ # clang also provides -print-search-dirs
+-elif ${cc:-cc} --version 2>/dev/null | grep -q '^clang ' ; then
++elif ${cc:-cc} --version 2>/dev/null | grep -q -e '^clang version' -e ' clang version'; then
+ gcc=${cc:-cc}
+ else
+ gcc=gcc
+--
+2.41.0.585.gd2178a4bd4-goog
+
diff --git a/dev-lang/perl/perl-5.36.1-r3.ebuild b/dev-lang/perl/perl-5.36.1-r3.ebuild
index 553ab9f76a38..277079bb9ef4 100644
--- a/dev-lang/perl/perl-5.36.1-r3.ebuild
+++ b/dev-lang/perl/perl-5.36.1-r3.ebuild
@@ -395,6 +395,10 @@ src_prepare() {
add_patch "${FILESDIR}/${PN}-5.36.1-http-tiny.patch" "0111-5.36.1-http-tiny.patch"\
"Enable certificate checking in HTTP::Tiny by default"\
"https://bugs.gentoo.org/905296" "https://bugs.debian.org/954089"
+ add_patch "${FILESDIR}/${PN}-5.36.0-fix-configure-for-clang.patch" \
+ "100-5.36.0-fix-configure-for-clang.patch" \
+ "Fix clang check in configure" \
+ "https://github.com/Perl/perl5/issues/21099"
if [[ ${CHOST} == *-solaris* ]] ; then
# do NOT mess with nsl, on Solaris this is always necessary,
diff --git a/dev-lang/perl/perl-5.38.0-r1.ebuild b/dev-lang/perl/perl-5.38.0-r1.ebuild
index 66a37abc47a9..c518862f3ed4 100644
--- a/dev-lang/perl/perl-5.38.0-r1.ebuild
+++ b/dev-lang/perl/perl-5.38.0-r1.ebuild
@@ -395,6 +395,10 @@ src_prepare() {
# add_patch "${FILESDIR}/${PN}-5.26.2-hppa.patch" "100-5.26.2-hppa.patch"\
# "Fix broken miniperl on hppa"\
# "https://bugs.debian.org/869122" "https://bugs.gentoo.org/634162"
+ add_patch "${FILESDIR}/${PN}-5.36.0-fix-configure-for-clang.patch" \
+ "100-5.36.0-fix-configure-for-clang.patch" \
+ "Fix clang check in configure" \
+ "https://github.com/Perl/perl5/issues/21099"
if [[ ${CHOST} == *-solaris* ]] ; then
# do NOT mess with nsl, on Solaris this is always necessary,
diff --git a/dev-lang/perl/perl-5.38.2-r1.ebuild b/dev-lang/perl/perl-5.38.2-r1.ebuild
index 8edc3aca52ba..d0575868dfe2 100644
--- a/dev-lang/perl/perl-5.38.2-r1.ebuild
+++ b/dev-lang/perl/perl-5.38.2-r1.ebuild
@@ -396,6 +396,10 @@ src_prepare() {
# add_patch "${FILESDIR}/${PN}-5.26.2-hppa.patch" "100-5.26.2-hppa.patch"\
# "Fix broken miniperl on hppa"\
# "https://bugs.debian.org/869122" "https://bugs.gentoo.org/634162"
+ add_patch "${FILESDIR}/${PN}-5.36.0-fix-configure-for-clang.patch" \
+ "100-5.36.0-fix-configure-for-clang.patch" \
+ "Fix clang check in configure" \
+ "https://github.com/Perl/perl5/issues/21099"
if [[ ${CHOST} == *-solaris* ]] ; then
# do NOT mess with nsl, on Solaris this is always necessary,