[PING]^N Fix ppc64 bootstrap with a -m32 host compiler
Richard Guenther
rguenther@suse.de
Thu Jun 22 19:42:00 GMT 2006
On Thu, 22 Jun 2006, DJ Delorie wrote:
>
> > Right, but this isn't happening currently. Or I confuse what you mean
> > with "host" libiberty - libiberty is only build for the host, not for
> > the target, no?
>
> Build libiberty is used to link gen*, programs that *run* *during* the
> build.
>
> Host libiberty is used to link gcc et al, programs that run *after*
> the build, i.e. on the *host* you configured for.
>
> Target libiberty is used to link programs built by the new gcc,
> programs that will run on the *target* you configured for.
>
> Consider a canadian - I'm using my linux box to build a gcc.exe that
> will run under cygwin and produce m32c images. $build_cc is linux's
> native gcc, which builds gen*, which run on the linux box during the
> build. These have to link with a linux libiberty. $host_cc is going
> to be a linux-x-cygwin cross compiler, so that the resulting gcc.exe
> runs on cygwin. This gcc.exe needs to be linked with a cygwin
> libiberty. When I run that gcc.exe on cygwin, I'll also need an m32c
> libiberty for my rom image.
Thanks for the explanation.
> > The problem is that while host and target are ppc64, build is ppc32.
>
> The problem is that in stage2, build is *still* ppc32, but should
> build be ppc64 now? If build is still ppc32, we want 32-bit libiberty
> and 32-bit genfoo. If build is supposed to be ppc64, we want 64-bit
> *build* libiberty and 64-bit genfoo. In either case, we're building a
> 64-bit gcc.
Yes, we're building a 64bit gcc. And we definitely _start_ with a ppc32
build (actually, a ppc64 gcc that defaults to -m32). Now, build needs
to "change" if we want to bootstrap that ppc64 compiler, correct? Only
if we build it as a canadian cross ppc32 -> ppc64 x ppc64 then it need
not to change, but then we're not bootstrapping.
So, it would be nice to be able to bootstrap in this "semi-canadian-cross"
configuration in some way automatically. It's certainly useful on
any bi-arch system or for building a native i686 compiler on ia64
(ok, that's a joke ;))
Richard.
--
Richard Guenther <rguenther@suse.de>
Novell / SUSE Labs
More information about the Gcc-patches
mailing list