commit: de0b9ff858352a9278a8f000627eb970c0f80ed3 Author: Ulrich Müller <ulm <AT> gentoo <DOT> org> AuthorDate: Sat Feb 15 09:57:48 2025 +0000 Commit: Ulrich Müller <ulm <AT> gentoo <DOT> org> CommitDate: Sat Feb 22 07:57:49 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=de0b9ff8
dev-lang/perl: Fix incorrect REPLACING_VERSIONS usage Closes: https://bugs.gentoo.org/949735 Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org> dev-lang/perl/perl-5.40.0-r1.ebuild | 17 ++++++++++------- dev-lang/perl/perl-5.40.1_rc1.ebuild | 17 ++++++++++------- 2 files changed, 20 insertions(+), 14 deletions(-) diff --git a/dev-lang/perl/perl-5.40.0-r1.ebuild b/dev-lang/perl/perl-5.40.0-r1.ebuild index 5cdfd028245b..135515a28648 100644 --- a/dev-lang/perl/perl-5.40.0-r1.ebuild +++ b/dev-lang/perl/perl-5.40.0-r1.ebuild @@ -109,12 +109,14 @@ dual_scripts() { check_rebuild() { # Fresh install - if [[ -z "${REPLACING_VERSIONS}" ]]; then - return 0; + if [[ -z ${REPLACING_VERSIONS} ]]; then + return 0 + fi + # Major Upgrade - # doesn't matter if there's multiple copies, it still needs a rebuild - # if the string is anything other than "5.CURRENTMAJOR" - elif [[ "${REPLACING_VERSIONS%.*}" != "${PV%.*}" ]]; then + local v + for v in ${REPLACING_VERSIONS}; do + [[ ${v%.*} == "${SHORT_PV}" ]] && continue echo "" ewarn "UPDATE THE PERL MODULES:" ewarn "After updating dev-lang/perl the installed Perl modules" @@ -130,10 +132,11 @@ check_rebuild() { ewarn "You should then call perl-cleaner to clean up any old files and trigger any" ewarn "remaining rebuilds portage may have missed." ewarn "Use: perl-cleaner --all" - return 0; + return 0 + done # Reinstall w/ USE Change - elif + if ( use perl_features_ithreads && ( has_version '<dev-lang/perl-5.38.2-r3[-ithreads]' || has_version '>=dev-lang/perl-5.38.2-r3[-perl_features_ithreads]' ) ) || \ ( ! use perl_features_ithreads && ( has_version '<dev-lang/perl-5.38.2-r3[ithreads]' || has_version '>=dev-lang/perl-5.38.2-r3[perl_features_ithreads]' ) ) || \ ( use perl_features_quadmath && ( has_version '<dev-lang/perl-5.38.2-r3[-quadmath]' || has_version '>=dev-lang/perl-5.38.2-r3[-perl_features_quadmath]' ) ) || \ diff --git a/dev-lang/perl/perl-5.40.1_rc1.ebuild b/dev-lang/perl/perl-5.40.1_rc1.ebuild index 49d74632e547..760c17c59b15 100644 --- a/dev-lang/perl/perl-5.40.1_rc1.ebuild +++ b/dev-lang/perl/perl-5.40.1_rc1.ebuild @@ -104,12 +104,14 @@ dual_scripts() { check_rebuild() { # Fresh install - if [[ -z "${REPLACING_VERSIONS}" ]]; then - return 0; + if [[ -z ${REPLACING_VERSIONS} ]]; then + return 0 + fi + # Major Upgrade - # doesn't matter if there's multiple copies, it still needs a rebuild - # if the string is anything other than "5.CURRENTMAJOR" - elif [[ "${REPLACING_VERSIONS%.*}" != "${PV%.*}" ]]; then + local v + for v in ${REPLACING_VERSIONS}; do + [[ ${v%.*} == "${SHORT_PV}" ]] && continue echo "" ewarn "UPDATE THE PERL MODULES:" ewarn "After updating dev-lang/perl the installed Perl modules" @@ -125,10 +127,11 @@ check_rebuild() { ewarn "You should then call perl-cleaner to clean up any old files and trigger any" ewarn "remaining rebuilds portage may have missed." ewarn "Use: perl-cleaner --all" - return 0; + return 0 + done # Reinstall w/ USE Change - elif + if ( use perl_features_ithreads && ( has_version '<dev-lang/perl-5.38.2-r3[-ithreads]' || has_version '>=dev-lang/perl-5.38.2-r3[-perl_features_ithreads]' ) ) || \ ( ! use perl_features_ithreads && ( has_version '<dev-lang/perl-5.38.2-r3[ithreads]' || has_version '>=dev-lang/perl-5.38.2-r3[perl_features_ithreads]' ) ) || \ ( use perl_features_quadmath && ( has_version '<dev-lang/perl-5.38.2-r3[-quadmath]' || has_version '>=dev-lang/perl-5.38.2-r3[-perl_features_quadmath]' ) ) || \
