commit: a6f69ff45bbbb8b7207569220060a2662c0cb9a7 Author: Benda Xu <heroxbd <AT> gentoo <DOT> org> AuthorDate: Sat Dec 22 13:43:53 2018 +0000 Commit: Benda XU <heroxbd <AT> gentoo <DOT> org> CommitDate: Sun Dec 23 10:32:02 2018 +0000 URL: https://gitweb.gentoo.org/repo/proj/prefix.git/commit/?id=a6f69ff4
scripts/bootstrap-prefix.sh: move portage from stage2 to 3. AS a rework of 8207d9c59468ff32600463033, this is only applied to prefix-standalone. Bug: https://bugs.gentoo.org/655414 Signed-off-by: Benda Xu <heroxbd <AT> gentoo.org> scripts/bootstrap-prefix.sh | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/scripts/bootstrap-prefix.sh b/scripts/bootstrap-prefix.sh index 24dfac2e61..95b884ec6b 100755 --- a/scripts/bootstrap-prefix.sh +++ b/scripts/bootstrap-prefix.sh @@ -1664,9 +1664,17 @@ bootstrap_stage3() { # stage3 tools should be used first. # PORTAGE_TMPDIR, EMERGE_LOG_DIR, FEATURES=force-prefix are # needed with host portage. + # + # After the introduction of EAPI-7, eclasses now + # strictly distinguish between build dependencies that + # are binary compatible with the native build system + # (CBUILD, BDEPEND) and with the system being built + # (CHOST, RDEPEND). To correctly bootstrap stage3, + # PORTAGE_OVERRIDE_EPREFIX as BROOT is needed. PREROOTPATH="${ROOT}"$(echo /{,tmp/}{usr/,}{,lib/llvm/{10,9,8,7,6,5}/}{s,}bin | sed "s, ,:${ROOT},g") \ EPREFIX="${ROOT}" PORTAGE_TMPDIR="${PORTAGE_TMPDIR}" \ - FEATURES="${FEATURES} force-prefix stacked-prefix" \ + PORTAGE_OVERRIDE_EPREFIX="$(rapx "${ROOT}" "${ROOT}/tmp")" \ + FEATURES="${FEATURES} force-prefix $(rapx "" stacked-prefix)" \ EMERGE_LOG_DIR="${ROOT}"/var/log \ do_emerge_pkgs "$@" } @@ -1690,6 +1698,13 @@ bootstrap_stage3() { export INSTALL_INFO="${ROOT}"/usr/bin/makeinfo if is-rap ; then + # Bug 655414. Copy portage global config from stage2 + # to stage3. + if [[ ! -d "${ROOT}"/usr/share/portage ]]; then + mkdir -p "${ROOT}"/usr/share + cp -a "${ROOT}"{/tmp,}/usr/share/portage + fi + # We need ${ROOT}/usr/bin/perl to merge glibc. if [[ ! -x "${ROOT}"/usr/bin/perl ]]; then # trick "perl -V:apiversion" check of glibc-2.19.
