commit:     be5d7fe2ce9ed9fa6065646b2416dc92a4830f94
Author:     Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Tue May  2 21:48:40 2017 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue May 16 17:18:03 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=be5d7fe2

python-utils-r1.eclass: support PYTHON_COMPAT_NO_STRICT variable

This is intended to be set by the user when using ebuilds that may
have unknown implementations in PYTHON_COMPAT. The assumption is
that the ebuilds are intended to be used within multiple contexts
which can involve revisions of this eclass that support different
Python implementations.

 eclass/python-utils-r1.eclass | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/eclass/python-utils-r1.eclass b/eclass/python-utils-r1.eclass
index 1a9f6ed171d..c1349ff277b 100644
--- a/eclass/python-utils-r1.eclass
+++ b/eclass/python-utils-r1.eclass
@@ -47,6 +47,18 @@ _PYTHON_ALL_IMPLS=(
 )
 readonly _PYTHON_ALL_IMPLS
 
+# @ECLASS-VARIABLE: PYTHON_COMPAT_NO_STRICT
+# @INTERNAL
+# @DESCRIPTION:
+# Set to a non-empty value in order to make eclass tolerate (ignore)
+# unknown implementations in PYTHON_COMPAT.
+#
+# This is intended to be set by the user when using ebuilds that may
+# have unknown (newer) implementations in PYTHON_COMPAT. The assumption
+# is that the ebuilds are intended to be used within multiple contexts
+# which can involve revisions of this eclass that support a different
+# set of Python implementations.
+
 # @FUNCTION: _python_impl_supported
 # @USAGE: <impl>
 # @INTERNAL
@@ -79,6 +91,7 @@ _python_impl_supported() {
                        fi
                        ;;
                *)
+                       [[ ${PYTHON_COMPAT_NO_STRICT} ]] && return 1
                        die "Invalid implementation in PYTHON_COMPAT: ${impl}"
        esac
 }

Reply via email to