From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 4534B1381F3 for ; Fri, 12 Apr 2013 01:12:20 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id D4DB0E0B16; Fri, 12 Apr 2013 01:12:18 +0000 (UTC) Received: from vms173011pub.verizon.net (vms173011pub.verizon.net [206.46.173.11]) by pigeon.gentoo.org (Postfix) with ESMTP id 406FDE0B16 for ; Fri, 12 Apr 2013 01:12:17 +0000 (UTC) Received: from odin.tremily.us ([unknown] [72.68.100.81]) by vms173011.mailsrvcs.net (Sun Java(tm) System Messaging Server 7u2-7.02 32bit (built Apr 16 2009)) with ESMTPA id <0ML4002E7BBZHI60@vms173011.mailsrvcs.net> for gentoo-catalyst@lists.gentoo.org; Thu, 11 Apr 2013 20:12:00 -0500 (CDT) Received: by odin.tremily.us (Postfix, from userid 1000) id CAE4195DA0C; Thu, 11 Apr 2013 21:11:58 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=tremily.us; s=odin; t=1365729118; bh=vXBdR9BWX+vKaGf3Am7HUUvBtH6MaK/Yzw3LKO3IOWE=; h=Date:From:To:Subject:References:In-Reply-To; b=EKXU/1aW4JxHPczyxkYWfrRgSrOekPkUKss/noV18EIMs/GXUI0Gw6CBODh3dSLcJ HZfUcfBK4Rr7mOhKJ/K4X9q/t4FJJRVh5mWVHkDFdB4wk9Sy/SkMyq+Ww5xecWUScz GRyjf+ohNag62FHW5xPT88MexuwSL+jD4rpvAZ04= Date: Thu, 11 Apr 2013 21:11:58 -0400 From: "W. Trevor King" To: gentoo-catalyst@lists.gentoo.org Subject: Re: [gentoo-catalyst] Binary package dependencies and update_seed Message-id: <20130412011158.GB17116@odin.tremily.us> References: <6472ad55830b40f838356a1b083b3815a4112358.1362768301.git.wking@tremily.us> <20130309121023.GE26574@odin.tremily.us> <20130411170941.GA14224@odin.tremily.us> <516706A3.6000500@gentoo.org> <51670C69.1030801@gentoo.org> <20130411203412.GA15862@odin.tremily.us> 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 MIME-version: 1.0 Content-type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary=mxv5cy4qt+RJ9ypb Content-disposition: inline In-reply-to: <20130411203412.GA15862@odin.tremily.us> OpenPGP: id=39A2F3FA2AB17E5D8764F388FC29BDCDF15F5BE8; url=http://tremily.us/pubkey.txt User-Agent: Mutt/1.5.21 (2010-09-15) X-Archives-Salt: cfe9622b-5c22-422a-93db-8dfa1b86dc41 X-Archives-Hash: 9f6bfc08e7ebe3670075c88f8d0d7c03 --mxv5cy4qt+RJ9ypb Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Apr 11, 2013 at 04:34:12PM -0400, W. Trevor King wrote: > On Thu, Apr 11, 2013 at 01:24:19PM -0700, Matt Turner wrote: > > So, to make sure that I'm on the same page: is the the problem that > > we're using stale packages in stage1 and if so, where did they come > > from? A previous stage1 build that didn't do update-seed? >=20 > That's where mine (and presumably iamben's) came from. However, they > could also (I think) come from a stage1 build that used an older > snapshot. I'm testing now with a build from: >=20 > subarch: i686 > version_stamp: 2013.1 > target: stage1 > rel_type: default > profile: default/linux/x86/13.0/desktop > portage_confdir: /var/tmp/catalyst/portage-conf/default/ > snapshot: 20130208 > source_subpath: default/stage3-i686-20121213 > update_seed: yes >=20 > Followed by another build with the same version_stamp but using: >=20 > snapshot: 20130308 >=20 > The idea is that the first build might produce packages linking > libmpc.so.2, and the second build might reuse those packages, despite > the stabilization of mpc-1.0.1 in the tree. So I finished the build and I have a broken stage1 after the tree update (as I expected). Here's how it goes: Clear the caches: # rm -rf --one-file-system /tmp/*.log /var/tmp/catalyst/{kerncache,packag= es,tmp} Confirm the first spec (using the older tree) # cat /var/tmp/catalyst/spec/default-stage1-i686-test.1.spec subarch: i686 version_stamp: 2013.1 target: stage1 rel_type: default profile: default/linux/x86/13.0/desktop portage_confdir: /var/tmp/catalyst/portage-conf/default/ snapshot: 20130208 source_subpath: default/stage3-i686-20121213 update_seed: yes Build it: # python2.7 catalyst -c catalyst.conf -f /var/tmp/catalyst/spec/default-s= tage1-i686-test.1.spec 2>&1 | tee /tmp/stage1-i686-test.1.log =E2=80=A6 >>> Emerging (30 of 38) sys-devel/gcc-4.6.3 for /tmp/stage1root/ >>> Installing (30 of 38) sys-devel/gcc-4.6.3 to /tmp/stage1root/ =E2=80=A6 As expected, with a tree where mpc-0.8.2 is the latest stable version, we get dependencies on libmpc.so.2: # less /var/tmp/catalyst/tmp/default/stage1-i686-2013.1/tmp/stage1root/us= r/libexec/gcc/i686-pc-linux-gnu/4.6.3/cc1 | grep libmpc 0x00000001 (NEEDED) Shared library: [libmpc.so.2] # ls -l /var/tmp/catalyst/tmp/default/stage1-i686-2013.1/tmp/stage1root/u= sr/libexec/gcc/i686-pc-linux-gnu/4.6.3/cc1=20 -rwxr-xr-x 1 root root 10557140 Apr 11 21:24 /var/tmp/catalyst/tmp/defaul= t/stage1-i686-2013.1/tmp/stage1root/usr/libexec/gcc/i686-pc-linux-gnu/4.6.3= /cc1 # less /var/tmp/catalyst/packages/default/stage1-i686-2013.1/sys-devel/gc= c-4.6.3.tbz2 | grep '/cc1$' -rwxr-xr-x root/root 10557140 2013-04-11 21:24 ./usr/libexec/gcc/i686-pc= -linux-gnu/4.6.3/cc1 Let's shift that stage out of the way for safe keeping and build another with a new snapshot: # mv /var/tmp/catalyst/tmp/default/stage1-i686-{2013.1,test.1}/ # diff /var/tmp/catalyst/spec/default-stage1-i686-test.{1,2}.spec 7c7 < snapshot: 20130208 --- > snapshot: 20130308 # python2.7 catalyst -c catalyst.conf -f /var/tmp/catalyst/spec/default-s= tage1-i686-test.2.spec 2>&1 | tee /tmp/stage1-i686-test.2.log =E2=80=A6 >>> Emerging binary (10 of 75) sys-devel/gcc-config-1.7.3 for /tmp/stage1= root/ >>> Installing (10 of 75) sys-devel/gcc-config-1.7.3 to /tmp/stage1root/ =E2=80=A6 Looks like were using the out-of-date binary package. Let's check to see we're still linking against the old libmpc: # less /var/tmp/catalyst/tmp/default/stage1-i686-2013.1/tmp/stage1root/us= r/libexec/gcc/i686-pc-linux-gnu/4.6.3/cc1 | grep libmpc 0x00000001 (NEEDED) Shared library: [libmpc.so.2] # ls -l /var/tmp/catalyst/tmp/default/stage1-i686-2013.1/tmp/stage1root/u= sr/libexec/gcc/i686-pc-linux-gnu/4.6.3/cc1=20 -rwxr-xr-x 1 root root 10557140 Apr 11 21:24 /var/tmp/catalyst/tmp/defaul= t/stage1-i686-2013.1/tmp/stage1root/usr/libexec/gcc/i686-pc-linux-gnu/4.6.3= /cc1 Yup. And that mpc version isn't in the new stage1: # ls /var/tmp/catalyst/tmp/default/stage1-i686-2013.1/tmp/stage1root/usr/= lib/libmpc.so* /var/tmp/catalyst/tmp/default/stage1-i686-2013.1/tmp/stage1root/usr/lib/l= ibmpc.so /var/tmp/catalyst/tmp/default/stage1-i686-2013.1/tmp/stage1root/usr/lib/l= ibmpc.so.3 /var/tmp/catalyst/tmp/default/stage1-i686-2013.1/tmp/stage1root/usr/lib/l= ibmpc.so.3.0.0 So, while iamben (I think) and I (definitely) ran into this problem because we had just turned on update_seed (with out-of-date packeages =66rom a non-update_seed run), this problem can also crop up due to snapshot updates (even if you always have update_seed on). That means that the only reasonable fixes are: a. Clear the package cache whenever you update a spec (without bumping version_stamp). b. Migrate the toolchain packages to EAPI5 and use ABI sub-slotting. Since (b), even if it does happen, is likely to take a while, I think we should be pushing (a) for now. Cheers, Trevor --=20 This email may be signed or encrypted with GnuPG (http://www.gnupg.org). For more information, see http://en.wikipedia.org/wiki/Pretty_Good_Privacy --mxv5cy4qt+RJ9ypb Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (GNU/Linux) iQIcBAEBAgAGBQJRZ19dAAoJEEUbTsx0l5OMLNcP/jmYvdf/SLCmVF8mSXx3NtXh ZzVtvrzPYiSJKmJYXh/CiFvnnIVVB4RnpGBsSfh0mvqQvgIgs2iyDo6MmEW/eole E3nJPgQBLFt65fXQWXafCahBqWtj2IHEAqYpv5rerCNOiHFHc7YbajQ3hWw9Wsx8 UlEExQxC2MhVVtXRJDymAeF/04WTUwi7DWSzhRmQaKGm2DAC+NCaURW9lo4UzMo6 q/cD6E/tsJYxH2O3NGbwVGd0xXjTUd/y3DYjJV7oh8d16RyCSN06AzJrp/0VSH9z 48DWdItKJ1d+X2xqE9F424h2voLWmSZ96D8tupWHH7axg0xKbISjtv/Y72RY3Ha+ z6YOcccc3uiU5TPpxWG0ekUuely9OHCwVv1GgNIpVLFzEL17btWiYvQfKOTU99TV cntUKIw4GIiTdWJAVvB1kWU/wHD1ihWtqvpa2Yx604YHsu1rfuXnZHqyc5zJuPNM lBK3TiJxuApCedNfNqUGXJo3V/VFqtL7NP5YgdiRH3hmNKJXri+T4qNvnKOVB6tA Pg/ryGFijX/QL2Sdp+Yz+fOq/u+R2CIrk9+z8Q+kvmWlWoCM+P/oZ2mVMNPoKG1D EM1Fs9UjQ7WC+N7C7nXl6C8hbNx/eRUK4Iq3IcThw441SmcuXqgNgXMKteM4SI66 L14YDpRf+UAFGgjq153x =7y11 -----END PGP SIGNATURE----- --mxv5cy4qt+RJ9ypb--