Skip to content

Commit 715db69

Browse files
committed
scripts/bootstrap-prefix: use DISABLE_USE for circular deps
Use set of USE-flags that are necessary to break circular deps, and reduce more to just weed unnecessary dependencies. Use DISABLE_USE for the circular ones so they can be properly reused. Bug: https://bugs.gentoo.org/936629 Signed-off-by: Fabian Groffen <[email protected]>
1 parent 1c92fe1 commit 715db69

File tree

1 file changed

+20
-18
lines changed

1 file changed

+20
-18
lines changed

scripts/bootstrap-prefix.sh

+20-18
Original file line numberDiff line numberDiff line change
@@ -1805,11 +1805,26 @@ do_emerge_pkgs() {
18051805
done
18061806
[[ -n ${pvdb} ]] && continue
18071807

1808+
# avoid many deps at this stage which aren't necessary, e.g.
1809+
# having a bash without readline is OK, we're not using the
1810+
# shell interactive
18081811
local myuse=(
18091812
"${DISABLE_USE[@]}"
1810-
bootstrap
1811-
clang
1812-
internal-glib
1813+
"-acl"
1814+
"-berkdb"
1815+
"-fortran" # gcc
1816+
"-gdbm"
1817+
"-libcxx"
1818+
"-nls"
1819+
"-pcre"
1820+
"-python"
1821+
"-qmanifest" # portage-utils
1822+
"-qtegrity" # portage-utils
1823+
"-readline" # bash
1824+
"-sanitize"
1825+
"bootstrap"
1826+
"clang"
1827+
"internal-glib"
18131828
)
18141829
local override_make_conf_dir="${PORTAGE_OVERRIDE_EPREFIX}${MAKE_CONF_DIR#"${ROOT}"}"
18151830

@@ -2450,8 +2465,7 @@ bootstrap_stage3() {
24502465
# e.g. bug #901101, this is a reduced (e.g. as minimal as possible)
24512466
# set of DISABLE_USE, to set the stage for solving circular
24522467
# dependencies, such as:
2453-
# - nghttp2 -> cmake -> curl -> nghttp2
2454-
export USE="-git -crypt -http2"
2468+
export USE="${DISABLE_USE[*]}"
24552469

24562470
# Portage should figure out itself what it needs to do, if anything.
24572471
local eflags=( "--deep" "--update" "--changed-use" "@system" )
@@ -2561,28 +2575,16 @@ set_helper_vars() {
25612575

25622576
# USE-flags to disable during bootstrap for they produce
25632577
# unnecessary, or worse: circular deps #901101, #936629
2578+
# - nghttp2 -> cmake -> curl -> nghttp2 (http2)
25642579
DISABLE_USE=(
2565-
"-acl"
2566-
"-berkdb"
25672580
"-crypt"
25682581
"-curl_quic_openssl" # curl
2569-
"-fortran" # gcc
2570-
"-gdbm"
25712582
"-git"
25722583
"-http2" # curl
25732584
"-http3" # curl
2574-
"-libcxx"
2575-
"-nls"
2576-
"-pcre"
2577-
"-python"
2578-
"-qmanifest" # portage-utils
2579-
"-qtegrity" # portage-utils
25802585
"-quic" # curl
2581-
"-readline" # bash
2582-
"-sanitize"
25832586
)
25842587

2585-
25862588
export MAKE CONFIG_SHELL
25872589
}
25882590

0 commit comments

Comments
 (0)