From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Subject: bug#24832: Hydra generates faulty derivation for gettext-boot0 Date: Fri, 20 Jan 2017 23:17:48 +0100 Message-ID: <87fukdml4j.fsf@gnu.org> References: <87d1igral2.fsf@gnu.org> <87lgx4d6om.fsf@netris.org> <87shrcpn4z.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:33080) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cUhVW-0003Y2-CG for bug-guix@gnu.org; Fri, 20 Jan 2017 17:18:07 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cUhVT-0006bj-7R for bug-guix@gnu.org; Fri, 20 Jan 2017 17:18:06 -0500 Received: from debbugs.gnu.org ([208.118.235.43]:38518) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1cUhVT-0006bK-4e for bug-guix@gnu.org; Fri, 20 Jan 2017 17:18:03 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1cUhVS-0005ba-VT for bug-guix@gnu.org; Fri, 20 Jan 2017 17:18:02 -0500 Sender: "Debbugs-submit" Resent-To: bug-guix@gnu.org Resent-Message-ID: In-Reply-To: <87shrcpn4z.fsf@gnu.org> ("Ludovic \=\?utf-8\?Q\?Court\=C3\=A8s\=22'\?\= \=\?utf-8\?Q\?s\?\= message of "Mon, 31 Oct 2016 16:13:32 +0100") List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+gcggb-bug-guix=m.gmane.org@gnu.org Sender: "bug-Guix" To: Mark H Weaver Cc: 24832-done@debbugs.gnu.org ludo@gnu.org (Ludovic Court=C3=A8s) skribis: > Hi Mark, > > Mark H Weaver skribis: > >> ludo@gnu.org (Ludovic Court=C3=A8s) writes: >>> The bug stems from =E2=80=98ld-wrapper-boot0=E2=80=99 and was introduce= d in >>> d75acc293dd3e63db8739aa04c021df917aa1b80. The problem is that >>> =E2=80=98ld-wrapper-boot0=E2=80=99 uses the value of (%current-system) = on the machine >>> that builds the derivation i.e., hydra.gnu.org. >>>=20 >>> Instead, it should use the value of the system we=E2=80=99re building f= or, so >>> its evaluation should be delayed, as is the case for =E2=80=98inputs=E2= =80=99 fields. >>>=20 >>> The result of this bug is that =E2=80=98ld-wrapper-boot0=E2=80=99 is bo= gus on all arches >>> except x86_64. However, this is harmless: we don=E2=80=99t need this l= d wrapper >>> anyway, except for GNU/Hurd. >>>=20 >>> So, a short-term hack might be this: >>>=20 >>> diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.= scm >>> index 53ba718..0a8e608 100644 >>> --- a/gnu/packages/commencement.scm >>> +++ b/gnu/packages/commencement.scm >>> @@ -424,8 +424,8 @@ the bootstrap environment." >>> (define ld-wrapper-boot0 >>> ;; We need this so binaries on Hurd will have libmachuser and libhur= duser >>> ;; in their RUNPATH, otherwise validate-runpath will fail. >>> - (make-ld-wrapper (string-append "ld-wrapper-" (boot-triplet)) >>> - #:target (boot-triplet) >>> + (make-ld-wrapper (string-append "ld-wrapper-" "x86_64-guix-linux-gnu= ") >>> + #:target "x86_64-guix-linux-gnu" >>> #:binutils binutils-boot0 >>> #:guile %bootstrap-guile >>> #:bash (car (assoc-ref %boot0-inputs "bash")))) >>>=20 >>> That way, we would not have to rebuild anything (it temporarily breaks >>> GNU/Hurd though, but that=E2=80=99s the cost we=E2=80=99d have to pay.) >>>=20 >>> How does that sound? >> >> Ah, nice! Could be avoid breaking GNU/Hurd by delaying evaluation of >> =E2=80=98ld-wrapper-boot0=E2=80=99 right now, but temporarily rigging it= so that on all >> _non-Hurd_ platforms, the hard-coded value "x86_64-guix-linux-gnu" is >> used? > > Good idea. I committed something along these lines as > 5bde4503eeaa1d772744abcf87afc29eb0e9329d. > > We=E2=80=99ll have to remove the workaround on the next cycle. Done in 168c400045bda767e9921789d93562c737b7b147 in =E2=80=98core-updates= =E2=80=99. Ludo=E2=80=99.