[PATCH] ARM: Use different linker path for hardfloat ABI

Paulo César Pereira de Andrade paulo.cesar.pereira.de.andrade@gmail.com
Wed Apr 4 00:56:00 GMT 2012


Em 3 de abril de 2012 20:48, Michael Hope <michael.hope@linaro.org> escreveu:
> On 4 April 2012 11:11, Jakub Jelinek <jakub@redhat.com> wrote:
>> On Wed, Apr 04, 2012 at 09:18:59AM +1200, Michael Hope wrote:
>>> >> The subdirectories could be called fred and jim and it would still work.
>>> >>  The only thing required is that this part of the naming scheme be
>>> >> agreed amongst the distros.
>>> >>
>>> >> This looks to me like it's turning into a bike-shed painting excerise
>>> >> between the distros out there.  That's really sad.
>>> >
>>> > I don't think we ever even had the discussion: Debian invented their
>>> > Debian-internal scheme for managing multiple ABIs.  They have in the past
>>> > used patched versions of gcc, as in the case of x86_64.
>>>
>>> (cc'ed cross-distro as the discussion is also going on there[1].  This
>>> patch continues that)
>>>
>>> I like the idea of incompatible binaries having different loaders.
>>> The path doesn't matter but the concept does.  Like i686/x86_64, it
>>> gives distros the option to install different binaries alongside each
>>> other for compatibility, performance, or upgrade reasons.  The
>>> compatibility cost is nice and low and lets Debian do some interesting
>>> cross development things.
>>
>> Does the dynamic linker itself contain any routines that depend on the
>> soft/hard ABI?  That would quite surprise me, so I don't see the point of
>> having different dynamic linkers for those ABIs.  One dynamic linker should
>> handle both just fine.
>>
>>> No one has released a hard float based distro yet.  We have time to
>>> discuss and fix this so we don't get in the crazy situation where a
>>> third party binary only runs on some distros.
>>
>> Isn't e.g. Fedora 17/armv7hl a hard float based distro?
>
> Yip, as is Ubuntu Precise, Debian unstable, and a skew of Gentoo.
> None have been released yet.  Here's my understanding:
>
> Fedora 17:
>  * ARM is a secondary architecture
>  * Alpha 1 release is out
>  * Has both a ARMv5 soft float and ARMv7 hard float build
>
> Ubuntu Precise:
>  * ARM is a primary architecture
>  * Beta 2 is out
>  * ARMv7 hard float by default with ARMv7 softfp being community supported
>
> Debian:
>  * ARM is a primary architecture
>  * Has a ARMv4T soft float and in-development ARMv7 hard float
>
> openSUSE:
>  * Kicked off at a hackfest in September 2011
>  * Have a ARMv5T soft float and ARMv7 hard float build
>
> Gentoo:
>  * I'm unsure (help?)
>  * The Gentoo manual suggests ARMv7 softfp is the default

  I did two ports of Mandriva to armv7. One of my choice to use softfp,
and another hardfp port to be compatible with other distros. But other
than a previous armv5 port, there is not much else of Mandriva arm,
so, it would be "good to have" to be able to run binaries for either
without resorting to a chroot, and only testing purposes.

  Bumping major or calling it ld-linux-foo.so.3 is out of question?

> -- Michael
>
> _______________________________________________
> cross-distro mailing list
> cross-distro@lists.linaro.org
> http://lists.linaro.org/mailman/listinfo/cross-distro

Paulo



More information about the Gcc-patches mailing list