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>
index | next in thread | previous in thread | raw e-mail
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
help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020507135957.A30027>
