From nobody Wed Sep 21 20:27:21 2022 X-Original-To: dev-commits-ports-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4MXqhp24rQz4cDtF; Wed, 21 Sep 2022 20:27:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (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 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4MXqhp1Q8Wz3kxs; Wed, 21 Sep 2022 20:27:22 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1663792042; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xgyrFPSBoiIgclwcDlka37SZJqx7V5A0REKdHSYQeGQ=; b=V/cfd6MaRHYHSzX5ADIwePnwa38DXwG5qd46EbR6pAL++HZdje96O4ey0weIrFpc3QuccB lv+hwkXgnkd9yluTyIjN/esX1Z2w1fjmm6fJPWPdPlJn2JnQ5OoEUOXN1ytU2Ek6qOBXe1 YRjMPmXiosyoWl5C/t9gA2vVVE2USA/0Qp2MtkbLpMcm13z9HzzbOUfkCVWCUOLxXG+adl Rr0znr9nx027xAe3Mx2dweV4KZAUz1/a/IiGHbfPDahUanRvizFwI0Q/oJSQMEUOQR+XVX Jx/ZT/zXpBtyqOeM1MNCsxy7UMQvPb3Pk7RdMbyNN9URngB2EFErSL66fESoEQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (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) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4MXqhp0Gzpz19Rv; Wed, 21 Sep 2022 20:27:22 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 28LKRLHd074185; Wed, 21 Sep 2022 20:27:21 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 28LKRLKl074184; Wed, 21 Sep 2022 20:27:21 GMT (envelope-from git) Date: Wed, 21 Sep 2022 20:27:21 GMT Message-Id: <202209212027.28LKRLKl074184@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Dimitry Andric Subject: git: 8c69fc20e6c7 - main - lang/perl5*: alternative workaround for lld 15 and dtrace enabled List-Id: Commits to the main branch of the FreeBSD ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-main@freebsd.org X-BeenThere: dev-commits-ports-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8c69fc20e6c71c3c5e71c8c9fcfb08ea9d5eb48d Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1663792042; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=xgyrFPSBoiIgclwcDlka37SZJqx7V5A0REKdHSYQeGQ=; b=IBGzAww/Ssw4b1oT90IEbcvXsTkd7jVuzD16qNyoptJVyVoeMoN78EWETYhDixP/RN123n r+m3gzR0uWPWrb5qfABhTK0sRFlIbtMcTEGR4hg9PQkLRQqncQ4DWxCSLJVNk5FsIu7d/H fqN4pFl1YptohcJMO6LfT9sNEgVrNV4YPSuD9H2WGTejBLhAfUyBySUJti2RKsUrUY5agw nuHt3dG+GOQNxydIVZegBQFpSW3ULdgiU2JKvAvkGVBTrRK3JJrM80fXHNAHLK07AYYaVD PeClgIHQxDsMKx5f++gmR8aWDnNRzXXGnG/VsNq4HcvWVr4WP2ryn1YHSrUv2Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1663792042; a=rsa-sha256; cv=none; b=IL2vJGKTc4lhA1xgcafbri9VWDYXgvd9pEWZY6jL5FRiYWEKWbg+eit5TPRGSSaZZp3YUq vziJL9Ftmy+ZkaW064VcfOHA2ZihfY4CUksGns1M/Ep0PcPt9esW55G6euU2vf4WLXh3Fa sEtin9bOZnzv60FsAtb/28bez3LTIwlX/rkRRSRqNq44370RjvLPxe+M4sjhUHxAtzWznK lcghNFruWdo/RSt6nhKm90pWSO8h9sHsq67CSnnQv4Miv7CtjR658VbBnOthTM8aQNISkI SRRfitPYRofsl5dr0Qlz5hGUCArtRI0V6tPkKArcjwN0Na0TizwB+mTtrgpYew== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by dim (src committer): URL: https://cgit.FreeBSD.org/ports/commit/?id=8c69fc20e6c71c3c5e71c8c9fcfb08ea9d5eb48d commit 8c69fc20e6c71c3c5e71c8c9fcfb08ea9d5eb48d Author: Dimitry Andric AuthorDate: 2022-09-21 20:24:33 +0000 Commit: Dimitry Andric CommitDate: 2022-09-21 20:26:53 +0000 lang/perl5*: alternative workaround for lld 15 and dtrace enabled Modify the workaround committed in 4ae8ff941b29 by only adding -Wl,--allow-multiple-definition to the two link command lines that require it, instead of adding it to hints/freebsd.sh Otherwise, that linker flag is emitted into perl's global configuration (/usr/local/lib/perl5/5.xx/mach/Config_heavy.pl), and might be used by other ports which link in libperl, such as www/mod_perl2, which cannot correctly handle any unexpected linker flags, leading to errors. PR: 265516 Reported by: lev Approved by: maintainer timeout (1 month) Fixes: 4ae8ff941b29 MFH: 2022Q3 --- lang/perl5-devel/Makefile | 2 +- lang/perl5-devel/files/patch-Makefile.SH | 22 ++++++++++++++++++++-- lang/perl5-devel/files/patch-hints_freebsd.sh | 11 ----------- lang/perl5.32/Makefile | 2 +- lang/perl5.32/files/patch-Makefile.SH | 22 ++++++++++++++++++++-- lang/perl5.32/files/patch-hints_freebsd.sh | 11 ----------- lang/perl5.34/Makefile | 2 +- lang/perl5.34/files/patch-Makefile.SH | 22 ++++++++++++++++++++-- lang/perl5.34/files/patch-hints_freebsd.sh | 11 ----------- lang/perl5.36/Makefile | 2 +- lang/perl5.36/files/patch-Makefile.SH | 22 ++++++++++++++++++++-- lang/perl5.36/files/patch-hints_freebsd.sh | 11 ----------- 12 files changed, 84 insertions(+), 56 deletions(-) diff --git a/lang/perl5-devel/Makefile b/lang/perl5-devel/Makefile index e8a750695e78..b5327135ea98 100644 --- a/lang/perl5-devel/Makefile +++ b/lang/perl5-devel/Makefile @@ -4,7 +4,7 @@ PORTNAME= perl DISTVERSIONPREFIX= v DISTVERSION= ${GH_TAGNAME:C/^v//:C/-g[0-9a-f]*$//} DISTVERSIONSUFFIX= ${GH_TAGNAME:C/.*-g/-g/} -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= lang devel perl5 # XXX Leave only CPAN. MASTER_SITES= LOCAL/mat/perl \ diff --git a/lang/perl5-devel/files/patch-Makefile.SH b/lang/perl5-devel/files/patch-Makefile.SH index c65b5dfc7a30..b2a2691d922c 100644 --- a/lang/perl5-devel/files/patch-Makefile.SH +++ b/lang/perl5-devel/files/patch-Makefile.SH @@ -1,8 +1,8 @@ Allow customisation of shrpldflags. ---- Makefile.SH.orig 2015-09-08 05:21:36 UTC +--- Makefile.SH.orig 2022-06-19 19:29:35 UTC +++ Makefile.SH -@@ -40,7 +40,6 @@ esac +@@ -40,7 +40,6 @@ linklibperl_nonshr='' pwd="`pwd`" linklibperl='$(LIBPERL)' linklibperl_nonshr='' @@ -10,3 +10,21 @@ Allow customisation of shrpldflags. ldlibpth='' DPERL_EXTERNAL_GLOB='-DPERL_EXTERNAL_GLOB' DPERL_IS_MINIPERL='-DPERL_IS_MINIPERL' +@@ -924,7 +923,7 @@ $(LIBPERL): $& $(perllib_dep) $(DYNALOADER) $(LIBPERLE + true) + $spitshell >>$Makefile <<'!NO!SUBS!' + rm -f $@ +- $(LD) -o $@ $(SHRPLDFLAGS) $(perllib_objs) $(DYNALOADER) $(libs) ++ $(LD) -o $@ $(SHRPLDFLAGS) -Wl,--allow-multiple-definition $(perllib_objs) $(DYNALOADER) $(libs) + !NO!SUBS! + case "$osname" in + aix) +@@ -1015,7 +1014,7 @@ lib/buildcustomize.pl: $& $(miniperl_dep) write_buildc + $spitshell >>$Makefile <<'!NO!SUBS!' + lib/buildcustomize.pl: $& $(miniperl_dep) write_buildcustomize.pl + -@rm -f miniperl.xok +- $(CC) $(CLDFLAGS) -o $(MINIPERL_EXE) \ ++ $(CC) $(CLDFLAGS) -Wl,--allow-multiple-definition -o $(MINIPERL_EXE) \ + $(miniperl_objs) $(libs) + $(LDLIBPTH) ./miniperl$(HOST_EXE_EXT) -w -Ilib -Idist/Exporter/lib -MExporter -e '' || sh -c 'echo >&2 Failed to build miniperl. Please run make minitest; exit 1' + $(MINIPERL) -f write_buildcustomize.pl diff --git a/lang/perl5-devel/files/patch-hints_freebsd.sh b/lang/perl5-devel/files/patch-hints_freebsd.sh index 359ca12088c1..9907c745ded7 100644 --- a/lang/perl5-devel/files/patch-hints_freebsd.sh +++ b/lang/perl5-devel/files/patch-hints_freebsd.sh @@ -22,14 +22,3 @@ Remove libs that are not here on FreeBSD. ;; esac -@@ -142,8 +148,8 @@ case "$osvers" in - *) - libpth="/usr/lib /usr/local/lib" - glibpth="/usr/lib /usr/local/lib" -- ldflags="-Wl,-E " -- lddlflags="-shared " -+ ldflags="-Wl,-E,--allow-multiple-definition" -+ lddlflags="-shared -Wl,--allow-multiple-definition" - cccdlflags='-DPIC -fPIC' - ;; - esac diff --git a/lang/perl5.32/Makefile b/lang/perl5.32/Makefile index fb99eef6dae8..ab326d878717 100644 --- a/lang/perl5.32/Makefile +++ b/lang/perl5.32/Makefile @@ -1,6 +1,6 @@ PORTNAME= perl DISTVERSION= ${PERL_VERSION} -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= lang devel perl5 MASTER_SITES= CPAN/../../src/5.0 DIST_SUBDIR= perl diff --git a/lang/perl5.32/files/patch-Makefile.SH b/lang/perl5.32/files/patch-Makefile.SH index c65b5dfc7a30..d832116aa1fb 100644 --- a/lang/perl5.32/files/patch-Makefile.SH +++ b/lang/perl5.32/files/patch-Makefile.SH @@ -1,8 +1,8 @@ Allow customisation of shrpldflags. ---- Makefile.SH.orig 2015-09-08 05:21:36 UTC +--- Makefile.SH.orig 2020-12-18 12:43:54 UTC +++ Makefile.SH -@@ -40,7 +40,6 @@ esac +@@ -40,7 +40,6 @@ linklibperl_nonshr='' pwd="`pwd`" linklibperl='$(LIBPERL)' linklibperl_nonshr='' @@ -10,3 +10,21 @@ Allow customisation of shrpldflags. ldlibpth='' DPERL_EXTERNAL_GLOB='-DPERL_EXTERNAL_GLOB' DPERL_IS_MINIPERL='-DPERL_IS_MINIPERL' +@@ -932,7 +931,7 @@ $(LIBPERL): $& $(perllib_dep) $(DYNALOADER) $(LIBPERLE + true) + $spitshell >>$Makefile <<'!NO!SUBS!' + rm -f $@ +- $(LD) -o $@ $(SHRPLDFLAGS) $(perllib_objs) $(DYNALOADER) $(libs) ++ $(LD) -o $@ $(SHRPLDFLAGS) -Wl,--allow-multiple-definition $(perllib_objs) $(DYNALOADER) $(libs) + !NO!SUBS! + case "$osname" in + aix) +@@ -1038,7 +1037,7 @@ lib/buildcustomize.pl: $& $(miniperl_dep) write_buildc + $spitshell >>$Makefile <<'!NO!SUBS!' + lib/buildcustomize.pl: $& $(miniperl_dep) write_buildcustomize.pl + -@rm -f miniperl.xok +- $(CC) $(CLDFLAGS) -o $(MINIPERL_EXE) \ ++ $(CC) $(CLDFLAGS) -Wl,--allow-multiple-definition -o $(MINIPERL_EXE) \ + $(miniperl_objs) $(libs) + $(LDLIBPTH) ./miniperl$(HOST_EXE_EXT) -w -Ilib -Idist/Exporter/lib -MExporter -e '' || sh -c 'echo >&2 Failed to build miniperl. Please run make minitest; exit 1' + $(MINIPERL) -f write_buildcustomize.pl diff --git a/lang/perl5.32/files/patch-hints_freebsd.sh b/lang/perl5.32/files/patch-hints_freebsd.sh index 735ec399fc3d..d8904480b745 100644 --- a/lang/perl5.32/files/patch-hints_freebsd.sh +++ b/lang/perl5.32/files/patch-hints_freebsd.sh @@ -22,14 +22,3 @@ Remove libs that are not here on FreeBSD. ;; esac -@@ -142,8 +148,8 @@ case "$osvers" in - *) - libpth="/usr/lib /usr/local/lib" - glibpth="/usr/lib /usr/local/lib" -- ldflags="-Wl,-E " -- lddlflags="-shared " -+ ldflags="-Wl,-E,--allow-multiple-definition" -+ lddlflags="-shared -Wl,--allow-multiple-definition" - cccdlflags='-DPIC -fPIC' - ;; - esac diff --git a/lang/perl5.34/Makefile b/lang/perl5.34/Makefile index 69537f04f532..07f18903042c 100644 --- a/lang/perl5.34/Makefile +++ b/lang/perl5.34/Makefile @@ -1,6 +1,6 @@ PORTNAME= perl DISTVERSION= ${PERL_VERSION} -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= lang devel perl5 MASTER_SITES= CPAN/../../src/5.0 DIST_SUBDIR= perl diff --git a/lang/perl5.34/files/patch-Makefile.SH b/lang/perl5.34/files/patch-Makefile.SH index c65b5dfc7a30..94a9d7fc6812 100644 --- a/lang/perl5.34/files/patch-Makefile.SH +++ b/lang/perl5.34/files/patch-Makefile.SH @@ -1,8 +1,8 @@ Allow customisation of shrpldflags. ---- Makefile.SH.orig 2015-09-08 05:21:36 UTC +--- Makefile.SH.orig 2022-02-26 18:50:37 UTC +++ Makefile.SH -@@ -40,7 +40,6 @@ esac +@@ -40,7 +40,6 @@ linklibperl_nonshr='' pwd="`pwd`" linklibperl='$(LIBPERL)' linklibperl_nonshr='' @@ -10,3 +10,21 @@ Allow customisation of shrpldflags. ldlibpth='' DPERL_EXTERNAL_GLOB='-DPERL_EXTERNAL_GLOB' DPERL_IS_MINIPERL='-DPERL_IS_MINIPERL' +@@ -932,7 +931,7 @@ $(LIBPERL): $& $(perllib_dep) $(DYNALOADER) $(LIBPERLE + true) + $spitshell >>$Makefile <<'!NO!SUBS!' + rm -f $@ +- $(LD) -o $@ $(SHRPLDFLAGS) $(perllib_objs) $(DYNALOADER) $(libs) ++ $(LD) -o $@ $(SHRPLDFLAGS) -Wl,--allow-multiple-definition $(perllib_objs) $(DYNALOADER) $(libs) + !NO!SUBS! + case "$osname" in + aix) +@@ -1038,7 +1037,7 @@ lib/buildcustomize.pl: $& $(miniperl_dep) write_buildc + $spitshell >>$Makefile <<'!NO!SUBS!' + lib/buildcustomize.pl: $& $(miniperl_dep) write_buildcustomize.pl + -@rm -f miniperl.xok +- $(CC) $(CLDFLAGS) -o $(MINIPERL_EXE) \ ++ $(CC) $(CLDFLAGS) -Wl,--allow-multiple-definition -o $(MINIPERL_EXE) \ + $(miniperl_objs) $(libs) + $(LDLIBPTH) ./miniperl$(HOST_EXE_EXT) -w -Ilib -Idist/Exporter/lib -MExporter -e '' || sh -c 'echo >&2 Failed to build miniperl. Please run make minitest; exit 1' + $(MINIPERL) -f write_buildcustomize.pl diff --git a/lang/perl5.34/files/patch-hints_freebsd.sh b/lang/perl5.34/files/patch-hints_freebsd.sh index 5709b2f3358d..4730556d1e89 100644 --- a/lang/perl5.34/files/patch-hints_freebsd.sh +++ b/lang/perl5.34/files/patch-hints_freebsd.sh @@ -22,14 +22,3 @@ Remove libs that are not here on FreeBSD. ;; esac -@@ -142,8 +148,8 @@ case "$osvers" in - *) - libpth="/usr/lib /usr/local/lib" - glibpth="/usr/lib /usr/local/lib" -- ldflags="-Wl,-E " -- lddlflags="-shared " -+ ldflags="-Wl,-E,--allow-multiple-definition" -+ lddlflags="-shared -Wl,--allow-multiple-definition" - cccdlflags='-DPIC -fPIC' - ;; - esac diff --git a/lang/perl5.36/Makefile b/lang/perl5.36/Makefile index eacaa878d387..7cbaf029ae2c 100644 --- a/lang/perl5.36/Makefile +++ b/lang/perl5.36/Makefile @@ -1,6 +1,6 @@ PORTNAME= perl DISTVERSION= ${PERL_VERSION} -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= lang devel perl5 MASTER_SITES= CPAN/../../src/5.0 DIST_SUBDIR= perl diff --git a/lang/perl5.36/files/patch-Makefile.SH b/lang/perl5.36/files/patch-Makefile.SH index c65b5dfc7a30..2fd3f4a0b091 100644 --- a/lang/perl5.36/files/patch-Makefile.SH +++ b/lang/perl5.36/files/patch-Makefile.SH @@ -1,8 +1,8 @@ Allow customisation of shrpldflags. ---- Makefile.SH.orig 2015-09-08 05:21:36 UTC +--- Makefile.SH.orig 2022-05-21 21:27:09 UTC +++ Makefile.SH -@@ -40,7 +40,6 @@ esac +@@ -40,7 +40,6 @@ linklibperl_nonshr='' pwd="`pwd`" linklibperl='$(LIBPERL)' linklibperl_nonshr='' @@ -10,3 +10,21 @@ Allow customisation of shrpldflags. ldlibpth='' DPERL_EXTERNAL_GLOB='-DPERL_EXTERNAL_GLOB' DPERL_IS_MINIPERL='-DPERL_IS_MINIPERL' +@@ -924,7 +923,7 @@ $(LIBPERL): $& $(perllib_dep) $(DYNALOADER) $(LIBPERLE + true) + $spitshell >>$Makefile <<'!NO!SUBS!' + rm -f $@ +- $(LD) -o $@ $(SHRPLDFLAGS) $(perllib_objs) $(DYNALOADER) $(libs) ++ $(LD) -o $@ $(SHRPLDFLAGS) -Wl,--allow-multiple-definition $(perllib_objs) $(DYNALOADER) $(libs) + !NO!SUBS! + case "$osname" in + aix) +@@ -1015,7 +1014,7 @@ lib/buildcustomize.pl: $& $(miniperl_dep) write_buildc + $spitshell >>$Makefile <<'!NO!SUBS!' + lib/buildcustomize.pl: $& $(miniperl_dep) write_buildcustomize.pl + -@rm -f miniperl.xok +- $(CC) $(CLDFLAGS) -o $(MINIPERL_EXE) \ ++ $(CC) $(CLDFLAGS) -Wl,--allow-multiple-definition -o $(MINIPERL_EXE) \ + $(miniperl_objs) $(libs) + $(LDLIBPTH) ./miniperl$(HOST_EXE_EXT) -w -Ilib -Idist/Exporter/lib -MExporter -e '' || sh -c 'echo >&2 Failed to build miniperl. Please run make minitest; exit 1' + $(MINIPERL) -f write_buildcustomize.pl diff --git a/lang/perl5.36/files/patch-hints_freebsd.sh b/lang/perl5.36/files/patch-hints_freebsd.sh index 8401474feca7..cf2569284c62 100644 --- a/lang/perl5.36/files/patch-hints_freebsd.sh +++ b/lang/perl5.36/files/patch-hints_freebsd.sh @@ -22,14 +22,3 @@ Remove libs that are not here on FreeBSD. ;; esac -@@ -142,8 +148,8 @@ case "$osvers" in - *) - libpth="/usr/lib /usr/local/lib" - glibpth="/usr/lib /usr/local/lib" -- ldflags="-Wl,-E " -- lddlflags="-shared " -+ ldflags="-Wl,-E,--allow-multiple-definition" -+ lddlflags="-shared -Wl,--allow-multiple-definition" - cccdlflags='-DPIC -fPIC' - ;; - esac