This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: EI_ABIVERSION usage


> Date: Tue, 7 May 2002 15:30:56 -0700
> From: "David O'Brien" <obrien@FreeBSD.org>

> On Tue, May 07, 2002 at 11:24:53AM -0700, Geoff Keating wrote:
> > > Date: Tue, 7 May 2002 10:54:19 -0700
> > > From: "David O'Brien" <obrien@FreeBSD.org>
> > 
> > > But then why are conforming applications required to use a 0 value?
> > 
> > Because conforming applications use the SVR4 ABI,
> 
> There is not a single OS out there on sale that is compliant with the
> SVR4 ABI.  Unixware 1.1 was the last one that was compliant.

I expect that SCO OpenServer complies with the ABI, otherwise what's
the point (of SCO OpenServer, not the ABI)?

The specification was written from the point of view of defining an
ABI.  It has nothing to say about OSs or executables that _don't_
comply with the specification.

So, if you're not planning to produce a fully conforming OS, then you
need to decide which parts of the specification to follow, and what to
do otherwise.

> > which is fully
> > described in the ABI document including all the shared library names
> > and their exported public interfaces,
> 
> Other than the $10k SVR4 i386 ABI document that back in '91 or so, one
> had to be a member of Unix International; where is the ABI documented to
> the level of detail you elude to?

I didn't specify any level of detail.  You can get the ABI documents
for free from <http://www.caldera.com/developers/devspecs/> (for x86
and mips), and they refer to other documents, including X/Open and
SVID.  I presume that anything that is still undefined shouldn't be
used by an ABI-compliant application.

> > and which (among other things)
> > disallows explicit system calls in executables.
> 
> Is there actually an ELF system in the world that does explicit system
> calls in [dynamic] executables?

I didn't use the word "dynamic".  Lots of ELF systems do explicit
system calls in static executables; such executables are not SVR4 ABI
compliant.

-- 
- Geoffrey Keating <geoffk@geoffk.org> <geoffk@redhat.com>


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]