[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

dpkg-cross, dpkg-architecture and arch names



I noticed that dpkg-cross didn't automatically recognise armel when
provided with an updated dpkg-architecture.

This is because it has its own table of debian->gnu arch names:
        'i386' => 'i486-linux-gnu',                                     
        'sparc' => 'sparc-linux-gnu',                 
        'sparc64' => 'sparc-linux-gnu',                 
        'alpha' => 'alpha-linux-gnu', 
        'm68k' => 'm68k-linux-gnu',   
        'arm' => 'arm-linux-gnu',                    
        'armeb' => 'armeb-linux-gnueabi',     
        'armel' => 'arm-linux-gnueabi',                   
        'powerpc' => 'powerpc-linux-gnu',     
        'ppc' => 'powerpc-linux-gnu', 
        'mips' => 'mips-linux-gnu',   
        'mipsel' => 'mipsel-linux-gnu',                 
        'sh3' => 'sh3-linux-gnu',                                     
        'sh4' => 'sh4-linux-gnu',             
        'sh3eb' => 'sh3eb-linux-gnu',             
        'sh4eb' => 'sh4eb-linux-gnu', 
        'hppa' => 'hppa-linux-gnu',   
        'hurd-i386' => 'i386-gnu',              
        's390' => 's390-linux-gnu',                                     
        's390x' => 's390-linux-gnu',                
        'ia64' => 'ia64-linux-gnu',         
        'm32r' => 'm32r-linux-gnu',     
        'openbsd-i386' => 'i386-openbsd',           
        'freebsd-i386' => 'i386-freebsd',     
        'darwin-powerpc' => 'powerpc-darwin',     
        'darwin-i386' => 'i386-darwin',                 
        'win32-i386' => 'i386-cygwin',      
        'amd64' => 'x86_64-linux-gnu')

Now it seems to me that it would be more sensible to use
dpkg-architecture to make this table. However dpkg-architecture (with
guillem's triplet patch ported forward to 1.13.25) has a somewhat
different table of arches. (See below - it's rather long).

Is there a definitive list of debian arches somewhere?

The default list (on both patched and unpatched versions) includes a
lot of arches that make little sense (like bsd-darwin-sh3,
kfreebsd-s390) and doesn't include at least one that is useful for
cross-building: win32-i386. (for use with mingw32 I think).

And all the bsd-based arches have different names, prefixed by bsd. So
openbsd-i386 is bsd-openbsd-i386. I think this amounts to a bug
introduced in the triplet patch (it doesn't happen in the old version)
and should be changed to be implied in the debian arch name, as linux
is on many arches.

There are also a load of gnuaebi-linux-foo arches which are clearly
bollocks and need removing. And armel appearing twice is supicious
too. Not sure where that is coming from.

And another datapoint is that the gcc built allows a target of avr
which isn't in the list at all.

I thought I should check before trying to work out how to fix things.
Guillem's post just now suggesting that we merge dpkg-cross into dpkg
is part of the answer, but we still need a definitive list somewhere.
Should dpkg support all possible arches or just ones that really exist
to some degree (and if so what degree).

Here is the output: dpkg-architecture -L with dpkg 1.13.25 with
guillem 'triplet' patch:
gnueabi-linux-i386
gnueabi-linux-ia64
gnueabi-linux-alpha
gnueabi-linux-amd64
gnueabi-linux-armeb
armel
gnueabi-linux-armel
gnueabi-linux-hppa
gnueabi-linux-m32r
gnueabi-linux-m68k
gnueabi-linux-mips
gnueabi-linux-mipsel
gnueabi-linux-powerpc
gnueabi-linux-ppc64
gnueabi-linux-s390
gnueabi-linux-s390x
gnueabi-linux-sh3
gnueabi-linux-sh3eb
gnueabi-linux-sh4
gnueabi-linux-sh4eb
gnueabi-linux-sparc
i386
ia64
alpha
amd64
armeb
arm
armel
hppa
m32r
m68k
mips
mipsel
powerpc
ppc64
s390
s390x
sh3
sh3eb
sh4
sh4eb
sparc
hurd-i386
hurd-ia64
hurd-alpha
hurd-amd64
hurd-armeb
hurd-arm
hurd-armel
hurd-hppa
hurd-m32r
hurd-m68k
hurd-mips
hurd-mipsel
hurd-powerpc
hurd-ppc64
hurd-s390
hurd-s390x
hurd-sh3
hurd-sh3eb
hurd-sh4
hurd-sh4eb
hurd-sparc
kfreebsd-i386
kfreebsd-ia64
kfreebsd-alpha
kfreebsd-amd64
kfreebsd-armeb
kfreebsd-arm
kfreebsd-armel
kfreebsd-hppa
kfreebsd-m32r
kfreebsd-m68k
kfreebsd-mips
kfreebsd-mipsel
kfreebsd-powerpc
kfreebsd-ppc64
kfreebsd-s390
kfreebsd-s390x
kfreebsd-sh3
kfreebsd-sh3eb
kfreebsd-sh4
kfreebsd-sh4eb
kfreebsd-sparc
knetbsd-i386
knetbsd-ia64
knetbsd-alpha
knetbsd-amd64
knetbsd-armeb
knetbsd-arm
knetbsd-armel
knetbsd-hppa
knetbsd-m32r
knetbsd-m68k
knetbsd-mips
knetbsd-mipsel
knetbsd-powerpc
knetbsd-ppc64
knetbsd-s390
knetbsd-s390x
knetbsd-sh3
knetbsd-sh3eb
knetbsd-sh4
knetbsd-sh4eb
knetbsd-sparc
bsd-darwin-i386
bsd-darwin-ia64
bsd-darwin-alpha
bsd-darwin-amd64
bsd-darwin-armeb
bsd-darwin-arm
bsd-darwin-armel
bsd-darwin-hppa
bsd-darwin-m32r
bsd-darwin-m68k
bsd-darwin-mips
bsd-darwin-mipsel
bsd-darwin-powerpc
bsd-darwin-ppc64
bsd-darwin-s390
bsd-darwin-s390x
bsd-darwin-sh3
bsd-darwin-sh3eb
bsd-darwin-sh4
bsd-darwin-sh4eb
bsd-darwin-sparc
bsd-freebsd-i386
bsd-freebsd-ia64
bsd-freebsd-alpha
bsd-freebsd-amd64
bsd-freebsd-armeb
bsd-freebsd-arm
bsd-freebsd-armel
bsd-freebsd-hppa
bsd-freebsd-m32r
bsd-freebsd-m68k
bsd-freebsd-mips
bsd-freebsd-mipsel
bsd-freebsd-powerpc
bsd-freebsd-ppc64
bsd-freebsd-s390
bsd-freebsd-s390x
bsd-freebsd-sh3
bsd-freebsd-sh3eb
bsd-freebsd-sh4
bsd-freebsd-sh4eb
bsd-freebsd-sparc
bsd-netbsd-i386
bsd-netbsd-ia64
bsd-netbsd-alpha
bsd-netbsd-amd64
bsd-netbsd-armeb
bsd-netbsd-arm
bsd-netbsd-armel
bsd-netbsd-hppa
bsd-netbsd-m32r
bsd-netbsd-m68k
bsd-netbsd-mips
bsd-netbsd-mipsel
bsd-netbsd-powerpc
bsd-netbsd-ppc64
bsd-netbsd-s390
bsd-netbsd-s390x
bsd-netbsd-sh3
bsd-netbsd-sh3eb
bsd-netbsd-sh4
bsd-netbsd-sh4eb
bsd-netbsd-sparc
bsd-openbsd-i386
bsd-openbsd-ia64
bsd-openbsd-alpha
bsd-openbsd-amd64
bsd-openbsd-armeb
bsd-openbsd-arm
bsd-openbsd-armel
bsd-openbsd-hppa
bsd-openbsd-m32r
bsd-openbsd-m68k
bsd-openbsd-mips
bsd-openbsd-mipsel
bsd-openbsd-powerpc
bsd-openbsd-ppc64
bsd-openbsd-s390
bsd-openbsd-s390x
bsd-openbsd-sh3
bsd-openbsd-sh3eb
bsd-openbsd-sh4
bsd-openbsd-sh4eb
bsd-openbsd-sparc

dpkg-architecture -L 1.13.25 standard:
i386
ia64
alpha
amd64
armeb
arm
hppa
m32r
m68k
mips
mipsel
powerpc
ppc64
s390
s390x
sh3
sh3eb
sh4
sh4eb
sparc
darwin-i386
darwin-ia64
darwin-alpha
darwin-amd64
darwin-armeb
darwin-arm
darwin-hppa
darwin-m32r
darwin-m68k
darwin-mips
darwin-mipsel
darwin-powerpc
darwin-ppc64
darwin-s390
darwin-s390x
darwin-sh3
darwin-sh3eb
darwin-sh4
darwin-sh4eb
darwin-sparc
freebsd-i386
freebsd-ia64
freebsd-alpha
freebsd-amd64
freebsd-armeb
freebsd-arm
freebsd-hppa
freebsd-m32r
freebsd-m68k
freebsd-mips
freebsd-mipsel
freebsd-powerpc
freebsd-ppc64
freebsd-s390
freebsd-s390x
freebsd-sh3
freebsd-sh3eb
freebsd-sh4
freebsd-sh4eb
freebsd-sparc
kfreebsd-i386
kfreebsd-ia64
kfreebsd-alpha
kfreebsd-amd64
kfreebsd-armeb
kfreebsd-arm
kfreebsd-hppa
kfreebsd-m32r
kfreebsd-m68k
kfreebsd-mips
kfreebsd-mipsel
kfreebsd-powerpc
kfreebsd-ppc64
kfreebsd-s390
kfreebsd-s390x
kfreebsd-sh3
kfreebsd-sh3eb
kfreebsd-sh4
kfreebsd-sh4eb
kfreebsd-sparc
knetbsd-i386
knetbsd-ia64
knetbsd-alpha
knetbsd-amd64
knetbsd-armeb
knetbsd-arm
knetbsd-hppa
knetbsd-m32r
knetbsd-m68k
knetbsd-mips
knetbsd-mipsel
knetbsd-powerpc
knetbsd-ppc64
knetbsd-s390
knetbsd-s390x
knetbsd-sh3
knetbsd-sh3eb
knetbsd-sh4
knetbsd-sh4eb
knetbsd-sparc
netbsd-i386
netbsd-ia64
netbsd-alpha
netbsd-amd64
netbsd-armeb
netbsd-arm
netbsd-hppa
netbsd-m32r
netbsd-m68k
netbsd-mips
netbsd-mipsel
netbsd-powerpc
netbsd-ppc64
netbsd-s390
netbsd-s390x
netbsd-sh3
netbsd-sh3eb
netbsd-sh4
netbsd-sh4eb
netbsd-sparc
openbsd-i386
openbsd-ia64
openbsd-alpha
openbsd-amd64
openbsd-armeb
openbsd-arm
openbsd-hppa
openbsd-m32r
openbsd-m68k
openbsd-mips
openbsd-mipsel
openbsd-powerpc
openbsd-ppc64
openbsd-s390
openbsd-s390x
openbsd-sh3
openbsd-sh3eb
openbsd-sh4
openbsd-sh4eb
openbsd-sparc
hurd-i386
hurd-ia64
hurd-alpha
hurd-amd64
hurd-armeb
hurd-arm
hurd-hppa
hurd-m32r
hurd-m68k
hurd-mips
hurd-mipsel
hurd-powerpc
hurd-ppc64
hurd-s390
hurd-s390x
hurd-sh3
hurd-sh3eb
hurd-sh4
hurd-sh4eb
hurd-sparc


Wookey
-- 
Aleph One Ltd, Bottisham, CAMBRIDGE, CB5 9BA, UK  Tel +44 (0) 1223 811679
work: http://www.aleph1.co.uk/                 play: http://wookware.org/

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.



Reply to: