From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 51B131382C5 for ; Mon, 18 Jan 2021 20:22:06 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 769EFE0826; Mon, 18 Jan 2021 20:22:05 +0000 (UTC) Received: from mail-qt1-f173.google.com (mail-qt1-f173.google.com [209.85.160.173]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 6EAFEE0826 for ; Mon, 18 Jan 2021 20:22:05 +0000 (UTC) Received: by mail-qt1-f173.google.com with SMTP id r9so12180331qtp.11 for ; Mon, 18 Jan 2021 12:22:05 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=r/qsK/Dt5XCT8Z2vKZBgs+RXldc1EIeje0IHlHMAt3U=; b=uiid74C4v0hFMEiald3yn+MVIEMdULkhMZsUV+d5SiL/MFlkBs3krktLM8gS23wIAz XPG9t+bxjm6i9CzODV/BB8v0EpTSTNztkZtCocHB9KJyRN9BOwFom7l8njhPcBhpKamJ o6opm178amnCCnOF90MyvmjWuukHUkg+7nzmh8Bey9AXzuDK2H3+96AuIgHEv58o63bg jR8+Y+UAChK+xlEy5xnBuwBzW9C1iMaBkCscgsCwlrXinRZIo3EO+fiew24nrXJ9IwOV rn3pM31Xioh9GhbpQ03MICd21+DBMmD+TGlykXkHTO+RSR9q3E8zuzcts4GcxX9sVU6S sN/g== X-Gm-Message-State: AOAM533HPrK55JrE6Zd82SEcsGarJhZu5lTMvRUbqyy3g2fNyLZhHLzZ 262cUdSQNniGpWFLVJq6ksG4ounSGcE= X-Google-Smtp-Source: ABdhPJyQ0KSFboaLkUvbSJmh4YmknU20FAIe67R+yYWqNKuTvdVFLZBkG4vWHndK0AERVIajpIJrFw== X-Received: by 2002:ac8:c87:: with SMTP id n7mr1349473qti.24.1611001324436; Mon, 18 Jan 2021 12:22:04 -0800 (PST) Received: from localhost ([208.104.103.123]) by smtp.gmail.com with ESMTPSA id q50sm2670991qtb.32.2021.01.18.12.22.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 18 Jan 2021 12:22:03 -0800 (PST) From: Matt Turner To: gentoo-catalyst@lists.gentoo.org Cc: Matt Turner Subject: [gentoo-catalyst] [PATCH 05/11] targets: Update the @changed-subslot set by default Date: Mon, 18 Jan 2021 15:21:46 -0500 Message-Id: <20210118202152.374078-5-mattst88@gentoo.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210118202152.374078-1-mattst88@gentoo.org> References: <20210118202152.374078-1-mattst88@gentoo.org> Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-catalyst@lists.gentoo.org Reply-to: gentoo-catalyst@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Archives-Salt: ef9efcce-ba80-4e1f-8d7b-6c36ae237bb9 X-Archives-Hash: 7e93ce196dc1d39b82912bc5495de728 In portage commit 1789fdf2ee81 (Add @changed-subslot package set) I added this: the set of upgradable packages for which the highest visible version has a different subslot than the currently installed version. Updating the entire stage is expensive and unnecessary (since we're going to build the latest packages in stage1 and then rebuild everything in stage3). What we definitely do need to update in the original stage3 however, is any package that would trigger a subslot rebuild. For example: gcc links with libmpfr.so from dev-libs/mpfr. mpfr's SONAME changes from libmpfr.so.4 (SLOT="0/4") to libmpfr.so.6 (SLOT="0/6"). If the seed stage's dev-libs/mpfr is not updated before emerging gcc, gcc will link with libmpfr.so.4, but the latest version of dev-libs/mpfr will be built and libmpfr.so.6 included into the stage1. Since the old libmpfr.so.4 is not included in the stage1, gcc will not work, breaking subsequent stage builds. Our current options to update the seed are too large a hammer (e.g., "--update --deep --newuse @world" or "--update --deep --newuse --complete-graph --rebuild-if-new-ver gcc") and spend too much time updating seed stages for no gain beyond updating only packages for whom the subslot has changed. Bug: https://bugs.gentoo.org/739004 Signed-off-by: Matt Turner --- targets/stage1/chroot.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/targets/stage1/chroot.sh b/targets/stage1/chroot.sh index e5a3e0b0..a1818425 100755 --- a/targets/stage1/chroot.sh +++ b/targets/stage1/chroot.sh @@ -40,6 +40,8 @@ if [ -n "${clst_update_seed}" ]; then if [ -n "${clst_update_seed_command}" ]; then ROOT=/ run_merge --buildpkg=n "${clst_update_seed_command}" + elif grep -q '^\[changed-subslot\]' /usr/share/portage/config/sets/portage.conf; then + ROOT=/ run_merge --ignore-built-slot-operator-deps y @changed-subslot else ROOT=/ run_merge --update --deep --newuse --complete-graph --rebuild-if-new-ver gcc fi -- 2.26.2