commit:     23727e2b902b2352aeed3ded659f19d5aa65898a
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed May 12 16:21:33 2021 +0000
Commit:     Zac Medico <zmedico <AT> gentoo <DOT> org>
CommitDate: Mon May 24 04:47:49 2021 +0000
URL:        https://gitweb.gentoo.org/proj/portage.git/commit/?id=23727e2b

Disallow options in PATCHES in EAPI 8

Bug: https://bugs.gentoo.org/752486
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
Signed-off-by: Zac Medico <zmedico <AT> gentoo.org>

 bin/phase-functions.sh |  6 ++++++
 bin/phase-helpers.sh   | 11 +++++++++++
 2 files changed, 17 insertions(+)

diff --git a/bin/phase-functions.sh b/bin/phase-functions.sh
index db30fdefa..a6837390f 100644
--- a/bin/phase-functions.sh
+++ b/bin/phase-functions.sh
@@ -926,6 +926,12 @@ __ebuild_phase_funcs() {
                                declare -F src_prepare >/dev/null || \
                                        src_prepare() { default; }
                        fi
+
+                       # defaults starting with EAPI 8
+                       if ! has ${eapi} 2 3 4 4-python 4-slot-abi 5 5-progress 
6 7; then
+                               [[ ${phase_func} == src_prepare ]] && \
+                                       default_src_prepare() { 
__eapi8_src_prepare; }
+                       fi
                        ;;
        esac
 }

diff --git a/bin/phase-helpers.sh b/bin/phase-helpers.sh
index 6c9e4424e..3f53e6c57 100644
--- a/bin/phase-helpers.sh
+++ b/bin/phase-helpers.sh
@@ -871,6 +871,17 @@ __eapi6_src_install() {
        einstalldocs
 }
 
+__eapi8_src_prepare() {
+       local f
+       if ___is_indexed_array_var PATCHES ; then
+               [[ ${#PATCHES[@]} -gt 0 ]] && eapply -- "${PATCHES[@]}"
+       elif [[ -n ${PATCHES} ]]; then
+               eapply -- ${PATCHES}
+       fi
+
+       eapply_user
+}
+
 ___best_version_and_has_version_common() {
        local atom root root_arg
        local -a cmd=()

Reply via email to