commit:     26076d3045581e597bfcd188e6964b04d45d6430
Author:     Florian Schmaus <flow <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 15 10:51:43 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Nov 24 21:31:56 2025 +0000
URL:        https://gitweb.gentoo.org/proj/portage.git/commit/?id=26076d30

Do not export profile-specific PMS variables in EAPI 9

First part of a two part commit set that makes portage stop exporting
further PMS variables. Those are the "static" PMS variables of the
list found at https://bugs.gentoo.org/948001#c2

Bug: https://bugs.gentoo.org/948001
Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>
Part-of: https://github.com/gentoo/portage/pull/1512
Signed-off-by: Sam James <sam <AT> gentoo.org>

 lib/portage/package/ebuild/doebuild.py | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/lib/portage/package/ebuild/doebuild.py 
b/lib/portage/package/ebuild/doebuild.py
index e83dfc0291..4fd399e97d 100644
--- a/lib/portage/package/ebuild/doebuild.py
+++ b/lib/portage/package/ebuild/doebuild.py
@@ -191,7 +191,7 @@ _vdb_use_conditional_keys = Package._dep_keys + (
     "RESTRICT",
 )
 
-# The following is a set of PMS § 11.1 and § 7.4 without
+# The following is a set of PMS § 11.1, § 7.4, and § 5.3.2 without
 # - TMPDIR
 # - HOME
 # because these variables are often assumed to be exported and
@@ -238,6 +238,17 @@ _unexported_pms_vars = frozenset(
         "ECLASS",
         "INHERITED",
         "DEFINED_PHASES",
+        # PMS § 5.3.2
+#        "ARCH",          # Not exported by Portage
+        "CONFIG_PROTECT",
+        "CONFIG_PROTECT_MASK",
+        "USE",            # N.B. this is not IUSE
+        "USE_EXPAND",
+        "USE_EXPAND_UNPREFIXED",
+        "USE_EXPAND_HIDDEN",
+        "USE_EXPAND_IMPLICIT",
+        "IUSE_IMPLICIT",
+        "ENV_UNSET",
     ]
     # fmt: on
 )

Reply via email to