From: ludo@gnu.org (Ludovic Courtès)
To: Mark H Weaver <mhw@netris.org>
Cc: 24832-done@debbugs.gnu.org
Subject: bug#24832: Hydra generates faulty derivation for gettext-boot0
Date: Fri, 20 Jan 2017 23:17:48 +0100 [thread overview]
Message-ID: <87fukdml4j.fsf@gnu.org> (raw)
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")
ludo@gnu.org (Ludovic Courtès) skribis:
> Hi Mark,
>
> Mark H Weaver <mhw@netris.org> skribis:
>
>> ludo@gnu.org (Ludovic Courtès) writes:
>>> The bug stems from ‘ld-wrapper-boot0’ and was introduced in
>>> d75acc293dd3e63db8739aa04c021df917aa1b80. The problem is that
>>> ‘ld-wrapper-boot0’ uses the value of (%current-system) on the machine
>>> that builds the derivation i.e., hydra.gnu.org.
>>>
>>> Instead, it should use the value of the system we’re building for, so
>>> its evaluation should be delayed, as is the case for ‘inputs’ fields.
>>>
>>> The result of this bug is that ‘ld-wrapper-boot0’ is bogus on all arches
>>> except x86_64. However, this is harmless: we don’t need this ld wrapper
>>> anyway, except for GNU/Hurd.
>>>
>>> So, a short-term hack might be this:
>>>
>>> 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 libhurduser
>>> ;; 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"))))
>>>
>>> That way, we would not have to rebuild anything (it temporarily breaks
>>> GNU/Hurd though, but that’s the cost we’d have to pay.)
>>>
>>> How does that sound?
>>
>> Ah, nice! Could be avoid breaking GNU/Hurd by delaying evaluation of
>> ‘ld-wrapper-boot0’ 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’ll have to remove the workaround on the next cycle.
Done in 168c400045bda767e9921789d93562c737b7b147 in ‘core-updates’.
Ludo’.
prev parent reply other threads:[~2017-01-20 22:18 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-10-31 5:33 bug#24832: Hydra generates faulty derivation for gettext-boot0 on MIPS Mark H Weaver
2016-10-31 5:58 ` bug#24832: Hydra generates faulty derivation for gettext-boot0 Mark H Weaver
2016-10-31 12:01 ` Ludovic Courtès
2016-10-31 12:49 ` Mark H Weaver
2016-10-31 15:13 ` Ludovic Courtès
2017-01-20 22:17 ` Ludovic Courtès [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87fukdml4j.fsf@gnu.org \
--to=ludo@gnu.org \
--cc=24832-done@debbugs.gnu.org \
--cc=mhw@netris.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.