Re: [PATCH] Add @changed-subslot package set
Zac Medico <[email protected]> Sun, 17 Jan 2021 02:54:07 -0800
| Newsgroups | gmane.linux.gentoo.portage.devel |
|---|---|
| Message-ID | <[email protected]> |
On 1/15/21 6:47 PM, Matt Turner wrote: > This set is the upgradable packages for which the highest visible > version has a different subslot than the currently installed version. > > The primary purpose of this feature is for use in catalyst builds. We > update the "seed" stage3 before using it to build a new stage1. > > 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. > > With this set, catalyst will likely use > > emerge @changed-subslot --ignore-built-slot-operator-deps y > > to update the seed stage. > > Thank you to Zac Medico for showing me how to do this. > > Bug: https://bugs.gentoo.org/739004 > Signed-off-by: Matt Turner <[email protected]> > --- > cnf/sets/portage.conf | 5 +++++ > lib/portage/_sets/dbapi.py | 39 +++++++++++++++++++++++++++++++++++++- > 2 files changed, 43 insertions(+), 1 deletion(-) Look good. Thanks! Merged: https://gitweb.gentoo.org/proj/portage.git/commit/?id=6c70596d6d6382160490bb16ef559ccfdd982fae -- Thanks, Zac
signature.asc
(application/pgp-signature, 981 B)
-----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQKTBAEBCgB9FiEE8OgXaltWzqgSupCu0HX7jBBKPSAFAmAEF1BfFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEYw RTgxNzZBNUI1NkNFQTgxMkJBOTBBRUQwNzVGQjhDMTA0QTNEMjAACgkQ0HX7jBBK PSBfkg//Yrof8WVBq/RTEOx4Kspp+XUXW1TaNzfFFmQoMOuh5qQRx8IFztaxN3xW FtdBw8wmKL8f/tlqan3n14j2N1O+S3y613QLK/v21uz8+J7QXsyA+8KLcZhStXb6 g9xGx+dWSpIZm2+y8gduuAXljlfgUp1z/1PdjVt9t2CcnY7LrfzmEDsHkcFc7Crx n0O89WNrWYeLESqOBoQgSuDm5/eT/Ou78aKQolUXw2AKJ4ttsrEo7kMs+RMZZZTd MM+2BBzN00SaWsV8CnwxldTYCmibX1txDEflnziEFEfZxOyqpQqzf/nEQWThndFJ JOpLFXM+8YNbV8ODsdTKjVyY4qq05bkzOZpCrkKen0yFtM+fWWw+S99jvQyIv1In CiOHEMxGRYpxYqxnNM1c0Q6s5tR8VC9XmtXzOKswI0NWon+8DxhZZvyNFFNHqyaf lN+3sAv7z1sx0ImoDyYNJrJ2XCJwTs5uSTrAlNE8Mo8drfDzvyHYVk5F9yYAmqMP EmSdL/+G6D9SOaJ020dDaGLgxAISRsDzU/AFzrUtgJwwO/ACRHB4fKSIroa7oWKc nvxlKkIp1uWUoqrz9ygCA5C2icuApiW7dziAfSHxNTK0s4N3RaX7Gg0y30gZzRv4 lomBVGSkIEuyYNWd6MwhElbdrCVhcKq/cGQ7IEeNYWXFGmhE13Y= =S7h7 -----END PGP SIGNATURE-----