From: Herbert Poetzl <herbert@13thfloor.at>
To: davidm@hpl.hp.com
Cc: linux-kernel@vger.kernel.org, linux-gcc@vger.kernel.org,
wilson@specifixinc.com
Subject: Re: Kernel Cross Compiling
Date: Sat, 14 Feb 2004 02:08:41 +0100 [thread overview]
Message-ID: <20040214010841.GA1755@MAIL.13thfloor.at> (raw)
In-Reply-To: <16429.29392.529575.21798@napali.hpl.hp.com>
On Fri, Feb 13, 2004 at 04:58:56PM -0800, David Mosberger wrote:
> >>>>> On Fri, 13 Feb 2004 22:44:20 +0100, Herbert Poetzl <herbert@13thfloor.at> said:
>
> >> A recipe for building ia32->ia64 cross-toolchain on Debian can be
> >> found here:
>
> >> http://www.gelato.unsw.edu.au/IA64wiki/CrossCompilation
>
> Herbert> that might work with the ia64 libraries and headers, but it
> Herbert> seems to fail, with the headers included in the gcc
> Herbert> tarball, for cross compiling, if you get it to compile
> Herbert> without (g)libc which should not be required to build the
> Herbert> crossgcc and the kernel, I would be very interested ...
>
> Ah, I see now what you mean. I suspect that's a setup that's rarely
> tested, so I'm not surprised to see some breakage.
>
> Having said that, I got gcc v3.3.3 20031212 (prerelease) to build with
> minor tweaks (see patch below). I'm no GCC-built-environment expert
> and I'm quite certain that the patch isn't totally correct, but all
> the unwind-related stuff isn't really needed in your case, because
> that code only comes into play for exception-handling and C cleanup
> handlers.
>
> The unwind-sjlj.c problem should occur on most other platforms too, so
> I don't think that problem is ia64-specific.
ah, thanks, will test it, and maybe upgrade to 3.3.3
if this seems necessary ...
best,
Herbert
> --david
>
> Index: gcc/unwind-sjlj.c
> ===================================================================
> RCS file: /cvs/gcc/gcc/gcc/unwind-sjlj.c,v
> retrieving revision 1.11.2.2
> diff -u -r1.11.2.2 unwind-sjlj.c
> --- gcc/unwind-sjlj.c 2 May 2003 21:01:21 -0000 1.11.2.2
> +++ gcc/unwind-sjlj.c 14 Feb 2004 00:50:33 -0000
> @@ -22,7 +22,9 @@
> #include "tconfig.h"
> #include "tsystem.h"
> #include "unwind.h"
> +#ifndef inhibit_libc
> #include "gthr.h"
> +#endif
>
> #ifdef __USING_SJLJ_EXCEPTIONS__
>
> Index: gcc/unwind.h
> ===================================================================
> RCS file: /cvs/gcc/gcc/gcc/unwind.h,v
> retrieving revision 1.7.2.6
> diff -u -r1.7.2.6 unwind.h
> --- gcc/unwind.h 4 Sep 2003 09:39:44 -0000 1.7.2.6
> +++ gcc/unwind.h 14 Feb 2004 00:50:33 -0000
> @@ -195,7 +195,9 @@
> compatible with the standard ABI for IA-64, we inline these. */
>
> #ifdef __ia64__
> -#include <stdlib.h>
> +# ifndef inhibit_libc
> +# include <stdlib.h>
> +# endif
>
> static inline _Unwind_Ptr
> _Unwind_GetDataRelBase (struct _Unwind_Context *_C)
> Index: gcc/config/ia64/fde-glibc.c
> ===================================================================
> RCS file: /cvs/gcc/gcc/gcc/config/ia64/fde-glibc.c,v
> retrieving revision 1.5
> diff -u -r1.5 fde-glibc.c
> --- gcc/config/ia64/fde-glibc.c 15 Dec 2001 11:46:51 -0000 1.5
> +++ gcc/config/ia64/fde-glibc.c 14 Feb 2004 00:50:34 -0000
> @@ -31,6 +31,9 @@
> #ifndef _GNU_SOURCE
> #define _GNU_SOURCE
> #endif
> +
> +#ifndef inhibit_libc
> +
> #include "config.h"
> #include <stddef.h>
> #include <stdlib.h>
> @@ -162,3 +165,5 @@
>
> return data.ret;
> }
> +
> +#endif
> Index: gcc/config/ia64/linux.h
> ===================================================================
> RCS file: /cvs/gcc/gcc/gcc/config/ia64/linux.h,v
> retrieving revision 1.23
> diff -u -r1.23 linux.h
> --- gcc/config/ia64/linux.h 3 Sep 2002 21:09:54 -0000 1.23
> +++ gcc/config/ia64/linux.h 14 Feb 2004 00:50:34 -0000
> @@ -58,7 +58,7 @@
> /* Do code reading to identify a signal frame, and set the frame
> state data appropriately. See unwind-dw2.c for the structs. */
>
> -#ifdef IN_LIBGCC2
> +#ifdef x_IN_LIBGCC2
> #include <signal.h>
> #include <sys/ucontext.h>
>
next prev parent reply other threads:[~2004-02-14 1:08 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-02-13 20:57 Kernel Cross Compiling Herbert Poetzl
2004-02-13 21:31 ` David Mosberger
2004-02-13 21:44 ` Herbert Poetzl
2004-02-14 0:58 ` David Mosberger
2004-02-14 1:08 ` Herbert Poetzl [this message]
2004-02-14 2:35 ` Herbert Poetzl
2004-02-14 2:51 ` David Mosberger
2004-02-16 22:50 ` Jim Wilson
2004-02-16 0:03 ` Peter Chubb
2004-02-14 8:32 ` Timothy D. Witham
2004-02-14 13:03 ` Herbert Poetzl
2004-02-14 19:25 ` Timothy D. Witham
2004-02-14 22:08 ` Herbert Poetzl
2004-02-16 21:41 ` cliff white
2004-02-16 22:10 ` Herbert Poetzl
2004-02-17 13:26 ` Maciej W. Rozycki
[not found] <20040213205743.GA30245@MAIL.13thfloor.at.suse.lists.linux.kernel>
2004-02-13 21:25 ` Andi Kleen
2004-02-13 21:46 ` Herbert Poetzl
2004-02-13 23:45 ` Herbert Poetzl
2004-02-15 11:16 ` Geert Uytterhoeven
2004-02-15 17:38 ` Herbert Poetzl
2004-02-16 13:51 ` Keith Owens
-- strict thread matches above, loose matches on Subject: below --
2004-02-14 3:26 Stephen M. Kenton
2004-02-14 14:21 ` Herbert Poetzl
2004-02-15 23:28 ` Robert Schwebel
2004-02-15 23:59 ` William Lee Irwin III
2004-02-14 21:03 Dan Kegel
2004-02-14 22:07 ` Herbert Poetzl
2004-02-15 3:51 ` Dan Kegel
2004-02-17 21:51 Judith Lebzelter
2004-02-18 7:19 ` Herbert Poetzl
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=20040214010841.GA1755@MAIL.13thfloor.at \
--to=herbert@13thfloor.at \
--cc=davidm@hpl.hp.com \
--cc=linux-gcc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=wilson@specifixinc.com \
/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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox