From debbugs-submit-bounces@debbugs.gnu.org Mon Oct 30 12:14:25 2017 Received: (at 28433) by debbugs.gnu.org; 30 Oct 2017 16:14:25 +0000 Received: from localhost ([127.0.0.1]:42443 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e9Chl-0005Vp-0W for submit@debbugs.gnu.org; Mon, 30 Oct 2017 12:14:25 -0400 Received: from dd1012.kasserver.com ([85.13.128.8]:43058) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e9Chj-0005Vf-0K for 28433@debbugs.gnu.org; Mon, 30 Oct 2017 12:14:23 -0400 Received: from localhost (77.118.206.212.wireless.dyn.drei.com [77.118.206.212]) by dd1012.kasserver.com (Postfix) with ESMTPSA id 9B3361CA1194; Mon, 30 Oct 2017 17:14:20 +0100 (CET) Date: Mon, 30 Oct 2017 17:14:15 +0100 From: Danny Milosavljevic To: ludo@gnu.org (Ludovic =?ISO-8859-1?Q?Court=E8s?=) Subject: Re: [bug#28433] [WIP] Rust update Message-ID: <20171030171415.0cf6c27d@scratchpost.org> In-Reply-To: <8760aw7ijp.fsf@gnu.org> References: <20170912185023.7de883ff@scratchpost.org> <873767cnsu.fsf@elephly.net> <20171026101728.6493ef46@scratchpost.org> <20171028124258.22553eee@scratchpost.org> <20171028133157.4dc52bd9@scratchpost.org> <20171028135726.76e5a14e@scratchpost.org> <87d1575dsw.fsf@gnu.org> <20171030123501.66cebab2@scratchpost.org> <8760aw7ijp.fsf@gnu.org> X-Mailer: Claws Mail 3.15.1-dirty (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 28433 Cc: Ricardo Wurmus , 28433@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) Hi Ludo, > Yes, I think -m32 is a no-op in this case. Yep. I just got rustc to build a bootstrap executable (which fails when executing it [*], but hey, progress) by making a union-build with all the i686 libs. Feels kinda icky, but it seems that propagated-inputs don't remember the #:system it was for, so for example if A propagates B and A specifies system i686, and X specifies system x86_64 and X depends on A, then X's B will be x86_64. Weird but understandable I guess... Details: A: propagated-inputs B arguments system i686 X: native-inputs A arguments system x86_64 Now X's B is x86_64... The workaround is this: A: arguments system i686 native-inputs B union-build out/lib from B (etc) X: native-inputs A arguments system x86_64 That works. In our specific case A = "rust-bootstrap", X = "rustc", B = "glibc", "gcc:lib" etc. [*] Tries to load libgcc_s.so.1 from the glibc store directory. WTF?