Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 19 Mar 2012 17:41:15 -0700
From:      Nathan Whitehorn <nwhitehorn@freebsd.org>
To:        Baptiste Daroussin <bapt@FreeBSD.org>
Cc:        current@FreeBSD.org
Subject:   Re: ABI/architecture identification for packages
Message-ID:  <4F67D22B.2040003@freebsd.org>
In-Reply-To: <20120319213508.GA1692@azathoth.lan>
References:  <20120319213508.GA1692@azathoth.lan>

next in thread | previous in thread | raw e-mail | index | archive | help
On 03/19/12 14:35, Baptiste Daroussin wrote:
> Hi all,
>
> In order to identify architectures I need to find a uniq id for every
> possibilities (for pkgng)
>
> here is the identification I propose:
>
> arch-class-os-majorversion(-archi_specific_extension)
>
> arch can be one of the following:
>
> - x86 for i386 and amd64 (discussed with kib)
> - powerpc for powerpc and powerpc64
> - arm
> - mips
> - sparc
>
> class may be:
> - 32 bits
> - 64 bits
>
> os will always be freebsd :) (lower case)
>
> majorversion the freebsd major version (10 9 8)
>
> achi_specific_extension currently only mips and arm are concerned,
> for arm could be:
> el_oabi
> eb_oabi
> el_eabi
> eb_eabi
>

One brief comment here: the output of uname -p (arm, armeb, etc.) is 
meant to encode the ABI completely. All platforms with the same uname -p 
should be able to execute each other's binaries. Why not just a sequence 
of `uname -p`-`uname -s`-`uname -r` (or some subset of uname -r)? That 
should be enough to completely encode compatibility information on 
almost any operating system.
-Nathan



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