ABI/architecture identification for packages
Konstantin Belousov
kostikbel at gmail.com
Tue Mar 20 10:20:16 UTC 2012
On Tue, Mar 20, 2012 at 10:19:36AM +0100, Baptiste Daroussin wrote:
> On Mon, Mar 19, 2012 at 10:35:08PM +0100, 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
> >
> > (I don't know how to get arm version or hardfp/softfp from the elf)
> >
> > for mips I don't know much.
> >
> > for ia64, I have strictly no idea what I should set.
> >
> > Everything is read from the elf file
> >
> > for example:
> > x86-64-freebsd-10
> > x86-32-freebsd-8
> > arm-32-freebsd-10-el_oabi
> >
> > Please help me to improve this to get the better identification to have the best
> > possible to determine which package can be installed where.
> >
> > while proposing information please tell me how to get the information
> > (dynamically)
> >
> > regards,
> > Bapt
>
> Another question (by rwatson) that comes here is should we keep the architecture
> names that freebsd uses to avoid confusion or should we try to use more accurate
> names?
>
> powerpc-64-freebsd-9 -> powerpc64-64-freebsd-9
> x86-32-freebsd-9 -> i386-32-freebsd-9
> x86-64-freebsd-9 -> amd64-64-freebsd-9
i386-32 and amd64-64 is weird and confusing.
IMO, you should go either with x86-{32,64} names, or with i386/amd64,
not with a mix.
> etc.
>
> An example of implementation can be find here:
> https://github.com/pkgng/pkgng/blob/master/libpkg/pkg_elf.c#L157
>
> PS: Feel free to submit fixes/improvements to the code :)
>
> regards,
> Bapt
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20120320/abca84e3/attachment.pgp
More information about the freebsd-current
mailing list