Mailing List Archive

crossdev & multilib
I want to build cross powerpc gcc which supports both soft and hard float and
a its supporting libs(glibc etc.) using crossdev.

searched a while on the net but I can't make out if crossdev supports this
and how to do it so:
- is it possible?
- how do I do it?

Jocke
Re: crossdev & multilib [ In reply to ]
On Thursday 24 November 2011 08:13:02 Joakim Tjernlund wrote:
> I want to build cross powerpc gcc which supports both soft and hard float
> and a its supporting libs(glibc etc.) using crossdev.
>
> searched a while on the net but I can't make out if crossdev supports this
> and how to do it so:
> - is it possible?
> - how do I do it?

the latest crossdev should support the --abis flag for specifying all the ABI's
you want built. but for ABI's portage doesn't know about, you'll probably
have to add a bit more plumbing to multilib.eclass.
-mike
Re: crossdev & multilib [ In reply to ]
Mike Frysinger <vapier@gentoo.org> wrote on 2011/11/25 07:35:45:
>
> On Thursday 24 November 2011 08:13:02 Joakim Tjernlund wrote:
> > I want to build cross powerpc gcc which supports both soft and hard float
> > and a its supporting libs(glibc etc.) using crossdev.
> >
> > searched a while on the net but I can't make out if crossdev supports this
> > and how to do it so:
> > - is it possible?
> > - how do I do it?
>
> the latest crossdev should support the --abis flag for specifying all the ABI's

latest stable or unstable?

> you want built. but for ABI's portage doesn't know about, you'll probably
> have to add a bit more plumbing to multilib.eclass.

hmm, looking at multilib.eclass, this part looks like it need extension:

# This is for the toolchain to setup profile variables when pulling in
# a crosscompiler (and thus they aren't set in the profile)
multilib_env() {
local CTARGET=${1:-${CTARGET}}

case ${CTARGET} in
...
powerpc64*)
export CFLAGS_ppc=${CFLAGS_ppc--m32}
export CHOST_ppc=${CTARGET/powerpc64/powerpc}
export CTARGET_ppc=${CHOST_ppc}
export LIBDIR_ppc="lib"

export CFLAGS_ppc64=${CFLAGS_ppc64--m64}
export CHOST_ppc64=${CTARGET}
export CTARGET_ppc64=${CHOST_ppc64}
export LIBDIR_ppc64="lib64"

: ${MULTILIB_ABIS=ppc64 ppc}
: ${DEFAULT_ABI=ppc64}

Anything more?

Jocke
Re: crossdev & multilib [ In reply to ]
On Friday 25 November 2011 08:05:56 Joakim Tjernlund wrote:
> Mike Frysinger wrote on 2011/11/25 07:35:45:
> > On Thursday 24 November 2011 08:13:02 Joakim Tjernlund wrote:
> > > I want to build cross powerpc gcc which supports both soft and hard
> > > float and a its supporting libs(glibc etc.) using crossdev.
> > >
> > > searched a while on the net but I can't make out if crossdev supports
> > > this and how to do it so:
> > > - is it possible?
> > > - how do I do it?
> >
> > the latest crossdev should support the --abis flag for specifying all the
> > ABI's
>
> latest stable or unstable?

i generally only track latest unstable in my head

> > you want built. but for ABI's portage doesn't know about, you'll
> > probably have to add a bit more plumbing to multilib.eclass.
>
> hmm, looking at multilib.eclass, this part looks like it need extension:

that's the place

> Anything more?

*shrug* maybe, but multilib.eclass is the only place off the top of my head
-mike