From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id EO5qD+S8XV/bJQAA0tVLHw (envelope-from ) for ; Sun, 13 Sep 2020 06:32:04 +0000 Received: from aspmx2.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id IBSkCeS8XV++NwAAB5/wlQ (envelope-from ) for ; Sun, 13 Sep 2020 06:32:04 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx2.migadu.com (Postfix) with ESMTPS id AB45C680B7A for ; Sun, 13 Sep 2020 06:31:14 +0000 (UTC) Received: from localhost ([::1]:43978 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kHLWb-00038n-Ns for larch@yhetil.org; Sun, 13 Sep 2020 02:30:09 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:35404) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kHLWU-00038c-TO for bug-guix@gnu.org; Sun, 13 Sep 2020 02:30:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:37827) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kHLWU-0006Ep-Io for bug-guix@gnu.org; Sun, 13 Sep 2020 02:30:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kHLWU-00027H-Ej for bug-guix@gnu.org; Sun, 13 Sep 2020 02:30:02 -0400 X-Loop: help-debbugs@gnu.org Subject: bug#41669: Cross-compiled powerpc64-linux bootstrap-tarballs not reproducible Resent-From: Efraim Flashner Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Sun, 13 Sep 2020 06:30:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 41669 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: Chris Marusich Received: via spool by 41669-submit@debbugs.gnu.org id=B41669.15999785948101 (code B ref 41669); Sun, 13 Sep 2020 06:30:02 +0000 Received: (at 41669) by debbugs.gnu.org; 13 Sep 2020 06:29:54 +0000 Received: from localhost ([127.0.0.1]:49373 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kHLWL-00026b-Ip for submit@debbugs.gnu.org; Sun, 13 Sep 2020 02:29:53 -0400 Received: from flashner.co.il ([178.62.234.194]:40960) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kHLWJ-00026M-Iz for 41669@debbugs.gnu.org; Sun, 13 Sep 2020 02:29:52 -0400 Received: from localhost (unknown [31.210.181.177]) by flashner.co.il (Postfix) with ESMTPSA id 4DBF24000B; Sun, 13 Sep 2020 06:29:44 +0000 (UTC) Date: Sun, 13 Sep 2020 09:28:58 +0300 From: Efraim Flashner Message-ID: <20200913062858.GC1100@E5400> References: <874krtnvk8.fsf@gmail.com> <87y2p4mqe2.fsf@gmail.com> <87a6xu2xrj.fsf@gmail.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="Clx92ZfkiYIKRjnr" Content-Disposition: inline In-Reply-To: <87a6xu2xrj.fsf@gmail.com> X-PGP-Key-ID: 0x41AAE7DCCA3D8351 X-PGP-Key: https://flashner.co.il/~efraim/efraim_flashner.asc X-PGP-Fingerprint: A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Spam-Score: -1.0 (-) X-BeenThere: bug-guix@gnu.org List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: 41669@debbugs.gnu.org, =?UTF-8?Q?L=C3=A9o?= Le Bouter , Maxim Cournoyer , Vincent Legoll Errors-To: bug-guix-bounces+larch=yhetil.org@gnu.org Sender: "bug-Guix" X-Scanner: scn0 Authentication-Results: aspmx2.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx2.migadu.com: domain of bug-guix-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=bug-guix-bounces@gnu.org X-Spam-Score: -1.11 X-TUID: NtMNwBsL9Tbz --Clx92ZfkiYIKRjnr Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Sep 12, 2020 at 07:53:04PM -0700, Chris Marusich wrote: > Hi everyone, >=20 > Chris Marusich writes: >=20 > > If you examine the derivations and their inputs, you'll find that they > > depend upon each other in the following order: > > > > guix build --target=3Dpowerpc64-linux-gnu -d -e '(@ (gnu packages make-= bootstrap) %gcc-bootstrap-tarball)' > > /gnu/store/pygln3lr6qbxcps3kmn3w4bc0d0nlpd3-gcc-stripped-tarball-5.5.0.= drv > > > > guix build --target=3Dpowerpc64-linux-gnu -d -e '(@@ (gnu packages make= -bootstrap) %gcc-stripped)' > > /gnu/store/kcv3ja1rfr93hw6ly51878zjhdwpgv7z-gcc-stripped-5.5.0.drv > > > > guix build --target=3Dpowerpc64-linux-gnu -d -e '(@@ (gnu packages make= -bootstrap) %gcc-static)' > > /gnu/store/m9hfwppla8lph0vxa15lfkp81s2bbjjs-gcc-static-5.5.0.drv > > > > In other words, gcc-static-5.5.0.drv is an input of > > gcc-stripped-5.5.0.drv, which is an input of > > gcc-stripped-tarball-5.5.0.drv. Above, I've included example guix > > commands you can use to obtain each derivation. Using "guix build > > --check", I confirmed that all three of these derivations build > > reproducibly on my machine. >=20 > After further experimentation, I've discovered that %gcc-static, when > built as shown above (without the -d option, of course), produces > different output on Debian than on Fedora. >=20 > Specifically, the %gcc-static output contains a file named libstdc++.a. > This file is an archive file. Although its members are > content-identical in the case of Fedora and Debian, the order of the > members in the archive differs. Because the exact same inputs were > used, it seems very likely that a difference in the Guix build > environment caused the %gcc-static build logic to order the members of > libstdc++.a differently. >=20 > I built %gcc-static using Guix commit > a02b2f8b86c0227eb69aa24b4373aef456365334. Both Debian and Fedora were > x86_64-linux systems. I took the following steps to make absolutely > certain that the exact same inputs were used on Debian and Fedora: >=20 > - I provisioned two fresh EC2 instances (Debian and Fedora). >=20 > - I installed Guix on Debian. >=20 > - I did "guix pull" on Debian to get to the aforementioned commit. >=20 > - I built %gcc-static on Debian as indicated above. >=20 > - I manually copied the Guix store and the Guix database from Debian to > Fedora. >=20 > - I manually fixed up Fedora so it could run Guix (I created the guix > users, added a systemd unit file, disabled selinux, etc.). >=20 > - I manually verified the Guix version and the store contents were > identical on Fedora and Debian. >=20 > - I GC'd %gcc-static (and nothing else) on Fedora. >=20 > - I rebuilt %gcc-static on Fedora. >=20 > - I compared the Fedora %gcc-static output to the Debian %gcc-static > output. >=20 > The %gcc-static package uses GCC 5.5.0 as its source. I got a copy of > the GCC 5.5.0 source code, and I looked at it. However, it's complex. > I can't pinpoint where they actually build the libstdc++.a file. Can > anyone point me to the code that does this in the GCC 5.5.0 source? I > expected to find the logic hiding in a makefile or a configure script or > something, but I haven't found it yet. >=20 > Since this is an old GCC, it is possible that this was a known > reproducibility bug which has since been fixed. I haven't looked into > that possibility yet. If that's the case, though, it would be nice > because we could simply backport a fix. >=20 > --=20 > Chris Is this a file we actually need during the bootstrap process? Can we "work around it" by just deleting it? --=20 Efraim Flashner =D7=90=D7=A4=D7=A8=D7=99=D7=9D = =D7=A4=D7=9C=D7=A9=D7=A0=D7=A8 GPG key =3D A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351 Confidentiality cannot be guaranteed on emails sent or received unencrypted --Clx92ZfkiYIKRjnr Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEoov0DD5VE3JmLRT3Qarn3Mo9g1EFAl9dvCoACgkQQarn3Mo9 g1Ecbg//XfW6XzWsg5kVwdUW0cxO40TNaBumnuPBed5NGR92cCP1QibPEzbvpM2y Vol26ZUjFatN5REkuWnn4JCuTy6S4BUmzhV5UGwupioEuq2LdMeWGT2rpgB/f9pI E2RfT/PfAZSW2pEIASzVHzJyEL+fKX2LzByUWciIkmssYDRfbtYfpLNsgUGSxqLw mRMecqUW52UalRx7vKdqQOwbuF235hmHRx6JTlnoauq7KkYgx1qLqzwbty4VhkDR J3D8I40lVuEcaZ4rRdn4Ng33B3v6HR7VhMN+59f0amRc4D6c4HHfknxyvU8wXnI8 cT43E7k+ZlW9TsGyZXWiL1vxolcBnggPopJ6ZCIDhDllFpHVtCtrhTR0wDyqw3X8 TtpAXUFlqwI+ivPgzOrYs3cYqZp8VoHfp/COO5rEKOCdA4aWhh2XEpWPMBgUQ1oo 0EWJW7Fx+0RcOJd1Dd+QWDSWd9n4nUqp6NtTDtnU+LZGQvmS557v4q3ehBhvJJq+ ioGVpT1Z4HEHrwl0a6W9LQjKpj9k/KYD3nqhBoWaDAZKqYgikKlRR9vsgUwqszFr BsGrS/MRt9qsCZtxz0jgE4vSz5yB4Jet/LhOBaDr+DANuGv6fEJ3aciC3217PgYe yad0y9FRbHPuScohHrmk+b+SXKLxnZy68hDaUPXQDIb+H0kp6vU= =qHSj -----END PGP SIGNATURE----- --Clx92ZfkiYIKRjnr--