* gcc multilib
@ 2016-02-18 20:01 Jonathan Richardson
2016-02-18 21:19 ` Richard Purdie
0 siblings, 1 reply; 4+ messages in thread
From: Jonathan Richardson @ 2016-02-18 20:01 UTC (permalink / raw)
To: poky
[-- Attachment #1: Type: text/plain, Size: 533 bytes --]
Hi,
We have a machine configured for hard floating point. This builds a hard fp
version of libgcc. We also have some bootloaders and other code that
require libgcc but use soft fp. I would prefer to keep the bootloaders
using soft fp. Is there a way to configure libgcc to produce both hard and
soft fp versions of libraries? There are multilib examples for 32 and 64
versions of libs but it’s not clear to me how to specify other compiler
options to produce multiple versions of the libraries.
Thanks,
Jon
[-- Attachment #2: Type: text/html, Size: 1720 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: gcc multilib
2016-02-18 20:01 gcc multilib Jonathan Richardson
@ 2016-02-18 21:19 ` Richard Purdie
[not found] ` <CAHrpVsXD-FhB1pNkZqwLwWzY9L1R29LPvzUuWpz-U36hrmsZVQ@mail.gmail.com>
0 siblings, 1 reply; 4+ messages in thread
From: Richard Purdie @ 2016-02-18 21:19 UTC (permalink / raw)
To: Jonathan Richardson, poky
On Thu, 2016-02-18 at 12:01 -0800, Jonathan Richardson wrote:
> We have a machine configured for hard floating point. This builds a
> hard fp version of libgcc. We also have some bootloaders and other
> code that require libgcc but use soft fp. I would prefer to keep the
> bootloaders using soft fp. Is there a way to configure libgcc to
> produce both hard and soft fp versions of libraries? There are
> multilib examples for 32 and 64 versions of libs but it’s not clear
> to me how to specify other compiler options to produce multiple
> versions of the libraries.
The bigger question you face is where these binaries expect your libgcc
and perhaps dynamic loader to reside. Its straight forward enough to
configure the system to build two versions with different tunes but one
would need to live in /lib and the other in /lib32 or some other /libXX
location. The way the multilib setup works, it doesn't really care
which configuration you use for a given location.
Cheers,
Richard
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: gcc multilib
[not found] ` <CAHrpVsXD-FhB1pNkZqwLwWzY9L1R29LPvzUuWpz-U36hrmsZVQ@mail.gmail.com>
@ 2016-02-19 1:58 ` Jonathan Richardson
2016-02-25 21:12 ` Jonathan Richardson
1 sibling, 0 replies; 4+ messages in thread
From: Jonathan Richardson @ 2016-02-19 1:58 UTC (permalink / raw)
To: Richard Purdie, poky
[-- Attachment #1: Type: text/plain, Size: 1722 bytes --]
Resending to include mailing list.
I can change the binaries makefiles/recipes easily enough to take an
alternate path to the soft fp libs (ie- /lib-softfp) or whatever it turns
out to be, as long as it's some oddball location that isn't included in the
standard CFLAGS search path. I'd want the regular machine configuration to
have /lib/libgcc.so with hard fp and then some other location can have the
soft fp versions, I don't really care where that is as long as it exists
and I can point to it. I assume it would be under the same sysroot. Are
there any examples of this?
Thanks.
On Thu, Feb 18, 2016 at 1:19 PM, Richard Purdie <
richard.purdie@linuxfoundation.org> wrote:
On Thu, 2016-02-18 at 12:01 -0800, Jonathan Richardson wrote:
> We have a machine configured for hard floating point. This builds a
> hard fp version of libgcc. We also have some bootloaders and other
> code that require libgcc but use soft fp. I would prefer to keep the
> bootloaders using soft fp. Is there a way to configure libgcc to
> produce both hard and soft fp versions of libraries? There are
> multilib examples for 32 and 64 versions of libs but it’s not clear
> to me how to specify other compiler options to produce multiple
> versions of the libraries.
The bigger question you face is where these binaries expect your libgcc
and perhaps dynamic loader to reside. Its straight forward enough to
configure the system to build two versions with different tunes but one
would need to live in /lib and the other in /lib32 or some other /libXX
location. The way the multilib setup works, it doesn't really care
which configuration you use for a given location.
Cheers,
Richard
[-- Attachment #2: Type: text/html, Size: 3388 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: gcc multilib
[not found] ` <CAHrpVsXD-FhB1pNkZqwLwWzY9L1R29LPvzUuWpz-U36hrmsZVQ@mail.gmail.com>
2016-02-19 1:58 ` Jonathan Richardson
@ 2016-02-25 21:12 ` Jonathan Richardson
1 sibling, 0 replies; 4+ messages in thread
From: Jonathan Richardson @ 2016-02-25 21:12 UTC (permalink / raw)
To: Richard Purdie, poky
[-- Attachment #1: Type: text/plain, Size: 2812 bytes --]
Hi,
I enabled multilib like below in my conf file and named it ‘softfp’. I
didn’t realize it was going to create a separate sysroot for it and also
that I could just enable it with a different tuning, which makes it much
easier.
require conf/multilib.conf
MULTILIB_GLOBAL_VARIANTS = "lib32 lib64 libx32 softfp"
MULTILIBS = "multilib:softfp"
DEFAULTTUNE_virtclass-multilib-softfp = "cortexa9"
It works fine if I run my recipe as ‘bitbake softp-recipe’. I added
BBCLASSEXTEND_append = " multilib:softfp" to the recipe but when I run it
as ‘bitbake recipe’ it doesn’t pick up multilib. It looks like the
BBCLASSEXTEND is doing nothing. Is there anything else I need to add to the
recipe so that I don’t have to prefix the recipe name with softfp to get
multilib? Or can I only get multilib by prefixing it?
Thanks.
*From:* Jonathan Richardson [mailto:jonathan.richardson@broadcom.com]
*Sent:* Thursday, February 18, 2016 5:58 PM
*To:* 'Richard Purdie'; 'poky@yoctoproject.org'
*Subject:* RE: [poky] gcc multilib
Resending to include mailing list.
I can change the binaries makefiles/recipes easily enough to take an
alternate path to the soft fp libs (ie- /lib-softfp) or whatever it turns
out to be, as long as it's some oddball location that isn't included in the
standard CFLAGS search path. I'd want the regular machine configuration to
have /lib/libgcc.so with hard fp and then some other location can have the
soft fp versions, I don't really care where that is as long as it exists
and I can point to it. I assume it would be under the same sysroot. Are
there any examples of this?
Thanks.
On Thu, Feb 18, 2016 at 1:19 PM, Richard Purdie <
richard.purdie@linuxfoundation.org> wrote:
On Thu, 2016-02-18 at 12:01 -0800, Jonathan Richardson wrote:
> We have a machine configured for hard floating point. This builds a
> hard fp version of libgcc. We also have some bootloaders and other
> code that require libgcc but use soft fp. I would prefer to keep the
> bootloaders using soft fp. Is there a way to configure libgcc to
> produce both hard and soft fp versions of libraries? There are
> multilib examples for 32 and 64 versions of libs but it’s not clear
> to me how to specify other compiler options to produce multiple
> versions of the libraries.
The bigger question you face is where these binaries expect your libgcc
and perhaps dynamic loader to reside. Its straight forward enough to
configure the system to build two versions with different tunes but one
would need to live in /lib and the other in /lib32 or some other /libXX
location. The way the multilib setup works, it doesn't really care
which configuration you use for a given location.
Cheers,
Richard
[-- Attachment #2: Type: text/html, Size: 6787 bytes --]
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2016-02-25 21:12 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-18 20:01 gcc multilib Jonathan Richardson
2016-02-18 21:19 ` Richard Purdie
[not found] ` <CAHrpVsXD-FhB1pNkZqwLwWzY9L1R29LPvzUuWpz-U36hrmsZVQ@mail.gmail.com>
2016-02-19 1:58 ` Jonathan Richardson
2016-02-25 21:12 ` Jonathan Richardson
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.