public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
Search results ordered by [date|relevance]  view[summary|nested|Atom feed]
thread overview below | download mbox.gz: |
* [gentoo-commits] repo/proj/prefix:master commit in: scripts/
@ 2020-01-28 15:51 99% Michael Haubenwallner
  0 siblings, 0 replies; 1+ results
From: Michael Haubenwallner @ 2020-01-28 15:51 UTC (permalink / raw
  To: gentoo-commits

commit:     5d5525ff57e9f0e28a17ea63aac19739cb5e77de
Author:     Michael Haubenwallner <haubi <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 28 15:43:29 2020 +0000
Commit:     Michael Haubenwallner <haubi <AT> gentoo <DOT> org>
CommitDate: Tue Jan 28 15:51:10 2020 +0000
URL:        https://gitweb.gentoo.org/repo/proj/prefix.git/commit/?id=5d5525ff

bootstrap-prefix.sh: fix circular deps in stage3

In prefix guest, when about to "with_stack_emerge_pkgs sys-apps/grep",
portage fails with circular dependencies potentially breakable with
USE=-berkdb, although we do set the USE=-berkdb environment variable.
The problem here is that USE=-berkdb does apply to the stacked prefix
only, not the base prefix, so we need to persist the base prefix' USE
flags when we are about to do "with_stack_emerge_pkgs", even if this is
not a problem with RAP right now, maybe because of a different tree.

Signed-off-by: Michael Haubenwallner <haubi <AT> gentoo.org>

 scripts/bootstrap-prefix.sh | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/scripts/bootstrap-prefix.sh b/scripts/bootstrap-prefix.sh
index 2c26201141..7bb3e9df35 100755
--- a/scripts/bootstrap-prefix.sh
+++ b/scripts/bootstrap-prefix.sh
@@ -1556,6 +1556,17 @@ do_emerge_pkgs() {
 			clang
 			internal-glib
 		)
+		if [[ " ${USE} " == *" prefix-stack "* ]] &&
+		   [[ ${PORTAGE_OVERRIDE_EPREFIX} == */tmp ]] &&
+		   ! grep -q '^USE=".*" # by bootstrap-prefix.sh$' "${PORTAGE_OVERRIDE_EPREFIX}/etc/portage/make.conf"
+		then
+			# With prefix-stack, the USE env var does apply to the stacked
+			# prefix only, not the base prefix (any more? since some portage
+			# version?), so we have to persist the base USE flags into the
+			# base prefix - without the additional incoming USE flags.
+			echo "USE=\"\${USE} ${myuse[*]}\" # by bootstrap-prefix.sh" \
+				>> "${PORTAGE_OVERRIDE_EPREFIX}/etc/portage/make.conf"
+		fi
 		myuse=" ${myuse[*]} "
 		local use
 		for use in ${USE} ; do


^ permalink raw reply related	[relevance 99%]

Results 1-1 of 1 | reverse | options above
-- pct% links below jump to the message on this page, permalinks otherwise --
2020-01-28 15:51 99% [gentoo-commits] repo/proj/prefix:master commit in: scripts/ Michael Haubenwallner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox