all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: ludo@gnu.org (Ludovic Courtès)
To: Andreas Enge <andreas@enge.fr>
Cc: guix-devel@gnu.org
Subject: Re: Cross-compilation from armhf to mips64el
Date: Tue, 06 Oct 2015 21:45:35 +0200	[thread overview]
Message-ID: <87pp0rbx28.fsf@gnu.org> (raw)
In-Reply-To: <20151005190838.GA5006@debian> (Andreas Enge's message of "Mon, 5 Oct 2015 21:08:38 +0200")

Andreas Enge <andreas@enge.fr> skribis:

> currently, we get lots of failed jobs for armhf coming from cross-compilation,
> such as
>    http://hydra.gnu.org/job/gnu/master/mips64el-linux-gnu.grep-2.21.armhf-linux

The problem in question is this:

--8<---------------cut here---------------start------------->8---
gcc   -D_RPC_THREAD_SAFE_ -D_GNU_SOURCE -DIS_IN_build -include /tmp/nix-build-glibc-cross-mips64el-linux-gnu-2.22.drv-0/build/config.h rpc_main.c \
	-o /tmp/nix-build-glibc-cross-mips64el-linux-gnu-2.22.drv-0/build/sunrpc/cross-rpc_main.o -MMD -MP -MF /tmp/nix-build-glibc-cross-mips64el-linux-gnu-2.22.drv-0/build/sunrpc/cross-rpc_main.o.dt -MT /tmp/nix-build-glibc-cross-mips64el-linux-gnu-2.22.drv-0/build/sunrpc/cross-rpc_main.o -c
In file included from /gnu/store/j3rpssxbamdarpqxsljxi9r28hl3zhzm-glibc-2.22/include/signal.h:326:0,
                 from /gnu/store/j3rpssxbamdarpqxsljxi9r28hl3zhzm-glibc-2.22/include/sys/param.h:28,
                 from rpc_main.c:45:
/gnu/store/j3rpssxbamdarpqxsljxi9r28hl3zhzm-glibc-2.22/include/sys/ucontext.h:107:16: error: field ?uc_mcontext? has incomplete type
     mcontext_t uc_mcontext;
                ^
Makefile:165: recipe for target '/tmp/nix-build-glibc-cross-mips64el-linux-gnu-2.22.drv-0/build/sunrpc/cross-rpc_main.o' failed
--8<---------------cut here---------------end--------------->8---

Before disabling cross-builds from armhf to mips64el like you suggest,
we should check whether the problem is on our side or note.

Here this is a cross-build of libc where we’re building a cross-rpcgen.
The cross-rpcgen is natively compiled, so GCC must have the native (arm)
kernel and libc headers in CPATH, not the mips headers.

I checked
/gnu/store/j3rpssxbamdarpqxsljxi9r28hl3zhzm-glibc-2.22/include/sys/ucontext.h
and I confirm that it’s an ARM header.

Long story short: everything is alright.  :-)

> I would think that the problem comes from build-aux/hydra/guix.scm, in this
> function:
>     (define (from-32-to-64? target)
>       ;; Return true if SYSTEM is 32-bit and TARGET is 64-bit.  This hack
>       ;; prevents known-to-fail cross-builds from i686-linux or armhf-linux to
>       ;; mips64el-linux-gnuabi64.
>       (and (or (string-prefix? "i686-" system)
>                (string-prefix? "armhf-" system))
>            (string-suffix? "64" target)))
> since target seems to be mips64el-linux-gnu and not mips64el-linux-gnuabi64.
> Then I would replace "string-suffix?" by "string-contains".

Or should we define a black list of pairs?

Ludo’.

  reply	other threads:[~2015-10-06 19:45 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-05 19:08 Cross-compilation from armhf to mips64el Andreas Enge
2015-10-06 19:45 ` Ludovic Courtès [this message]
2015-10-08 18:48   ` Andreas Enge
2015-10-09  0:47     ` Mark H Weaver
2015-10-09  8:33       ` Ludovic Courtès
2015-10-09  9:10       ` Andreas Enge

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=87pp0rbx28.fsf@gnu.org \
    --to=ludo@gnu.org \
    --cc=andreas@enge.fr \
    --cc=guix-devel@gnu.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.