Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 7 May 2002 13:59:57 -0700
From:      "David O'Brien" <obrien@FreeBSD.ORG>
To:        Nathan Hawkins <utsl@quic.net>
Cc:        arch@FreeBSD.ORG
Subject:   Re: syscall changes to deal with 32->64 changes.
Message-ID:  <20020507135957.A30027@dragon.nuxi.com>
In-Reply-To: <3CD823E8.2010809@quic.net>; from utsl@quic.net on Tue, May 07, 2002 at 02:58:48PM -0400
References:  <XFMail.20020507103320.jhb@FreeBSD.org> <3CD7FE57.1000508@quic.net> <20020507110901.F23330@dragon.nuxi.com> <3CD823E8.2010809@quic.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, May 07, 2002 at 02:58:48PM -0400, Nathan Hawkins wrote:
> >>I'd like to see FreeBSD start using ELF .note.ABI-tag sections to handle 
> >>the binary OS type/versioning. I know that at least NetBSD, Linux and 
> >>Hurd do it this way, and I think most others do too.
> >
> >Why?  Just to follow the NIH herd?  The EI_OSABI and EI_ABIVERSION fields
> >were in the gABI spec before anyone started using .note sections for
> >this.
> >
> Because AFAICS, it's a defacto, unwritten standard. Even if it violates 
> spec.

Your response is mostly content free.  But I honestly interested in your
response.  Could you reread what I said and address it?

What is the defacto, unwritten standard?  I assume you mean .note
sections.
    > Even if it violates spec.
What is "it" and how does it violate the gABI spec?

 
> NIH is a matter of perspective. FreeBSD could be considered to be in NIH 
> mode, because the other ELF based systems use a different method.

FreeBSD was the first to have a need to "brand" binaries.  So there was
nothing to follow, so no NIH.  

    [The need was to be able to run static Linux binaries.  Note that if
    Linux was strictly gABI compliant there would (1) be no static
    binaries; and (2) we could not use the dynamic linker's name as a key
    to know the binary is a Linux one.]

 
> this from a field in the ELF header. But you also use the .interp 
> section in the emulation selector code.

Not really.  We do, but that is because few are strictly compliant with
the psABI's.   For i386 FreeBSD and Linux should be using
"/usr/lib/libc.so.1".  For Alpha "/usr/lib/ld.so", and for Sparc64
"/usr/libexec/ld-elf.so.1".

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-arch" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020507135957.A30027>