From 7f2a437f0a4d5b79a644710e47425c2afe5c0040 Mon Sep 17 00:00:00 2001 From: Krzesimir Nowak Date: Wed, 3 Feb 2021 08:55:30 +0100 Subject: [PATCH] build_packages: Build all packages in the broken cycle Previously we broke the cycle caused by sys-apps/util-linux only, while disabling cryptsetup USE flag in systemd to avoid another cycle. That worked before, because the follow-up merge of the rest of packages built sys-fs/cryptsetup before sys-apps/systemd. After an update, the new portage is ordering the builds in different way and sys-apps/systemd ended up being built before sys-fs/cryptsetup and that failed during the configure phase because of unmet dependencies. Better build all the packages taking part in the loop (not counting the virtual packages), so we become less reliant on the package build ordering. It is going to take slightly more time as we build a couple of packages more. --- build_packages | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/build_packages b/build_packages index 4729f44ea8..c81eaccb8c 100755 --- a/build_packages +++ b/build_packages @@ -266,11 +266,18 @@ break_dep_loop() { } if [[ "${FLAGS_usepkgonly}" -eq "${FLAGS_FALSE}" ]]; then + # Breaking the following loops here: + # # util-linux[udev] -> virtual->udev -> systemd -> util-linux - break_dep_loop sys-apps/util-linux udev,systemd sys-apps/systemd cryptsetup - - # systemd[cryptsetup] -> cryptsetup -> lvm2 -> virtual/udev -> systemd - break_dep_loop sys-apps/systemd cryptsetup + # util-linux[systemd] -> systemd -> util-linux + # cryptsetup[udev] -> virtual/udev -> systemd[cryptsetup] -> cryptsetup + # lvm2[udev] -> virtual/udev -> systemd[cryptsetup] -> cryptsetup -> lvm2 + # lvm2[systemd] -> systemd[cryptsetup] -> cryptsetup -> lvm2 + # systemd[cryptsetup] -> cryptsetup[udev] -> virtual/udev -> systemd + break_dep_loop sys-apps/util-linux udev,systemd \ + sys-fs/cryptsetup udev \ + sys-fs/lvm2 udev,systemd \ + sys-apps/systemd cryptsetup fi export KBUILD_BUILD_USER="${BUILD_USER:-build}"