From b736fab642e5f3ce519c3b4618595126160e436b Mon Sep 17 00:00:00 2001 From: Matt Jolly Date: Tue, 28 May 2024 13:36:52 +1000 Subject: bootstrap-prefix: use full path for `do_emerge_pkgs` In the stage3 bootstrap we always prefer to use tools that have been built for stage3; to accomplish this we ensure that it is the first thing evaluated in PATH. Unfortunately, Portage, Python, and Python-exec are often pulled into the depgraph at some point before we're fully boostrapped. To ensure that we don't try and execute ${EPREFIX}/usr/bin/emerge before we're ready, always provide the full path to the bootstrap Python interpreter and emerge script. Signed-off-by: Matt Jolly Closes: https://github.com/gentoo/prefix/pull/37 Signed-off-by: Sam James --- scripts/bootstrap-prefix.sh | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'scripts') diff --git a/scripts/bootstrap-prefix.sh b/scripts/bootstrap-prefix.sh index 741f6e6cde..92c3ad1869 100755 --- a/scripts/bootstrap-prefix.sh +++ b/scripts/bootstrap-prefix.sh @@ -1785,10 +1785,16 @@ do_emerge_pkgs() { && export CFLAGS="${OVERRIDE_CFLAGS}" [[ -n ${OVERRIDE_CXXFLAGS} ]] \ && export CXXFLAGS="${OVERRIDE_CXXFLAGS}" + # In the stage3 bootstrap we always prefer to use tools that have been built for + # stage3; to accomplish this we ensure that it is the first thing evaluated in PATH. + # Unfortunately, Portage, Python, and Python-exec are often pulled into the depgraph + # at some point before we're fully boostrapped. To ensure that we don't try and execute + # ${EPREFIX}/usr/bin/emerge before we're ready, always provide the full path to the + # bootstrap Python interpreter and emerge script. PORTAGE_SYNC_STALE=0 \ FEATURES="-news ${FEATURES}" \ USE="${myuse[*]}" \ - emerge "${eopts[@]}" "${pkg}" + "${EPREFIX}"/tmp/bin/python "${EPREFIX}"/tmp/usr/bin/emerge "${eopts[@]}" "${pkg}" ) || return 1 done } @@ -3021,7 +3027,7 @@ EOF exit 1 fi fi - + if ! [[ -e ${EPREFIX}/.stage1-finished ]] && ! bootstrap_stage1_log ; then # stage 1 fail cat << EOF -- cgit v1.2.3-65-gdbad