Provided by: dpkg-dev_1.19.7ubuntu3.2_all bug

NAAM

       dpkg-architecture - de architectuur voor het bouwen van pakketten instellen en vaststellen

OVERZICHT

       dpkg-architecture [optie...] [commando]

BESCHRIJVING

       dpkg-architecture  biedt een mogelijkheid om de bouw- en host-architectuur voor het bouwen
       van pakketten vast te stellen en in te stellen.

       De bouwarchitectuur wordt steeds bepaald door een externe aanroep van dpkg(1) en kan  niet
       ingesteld worden aan de commandoregel.

       U  kunt de host-architectuur specificeren door een van of allebei de opties --host-arch en
       --host-type op te geven. Wat de standaard is, wordt vastgesteld door een  externe  aanroep
       van   gcc(1)   of,  als  zowel  CC  als  gcc  onbeschikbaar  zijn,  gelijkgesteld  aan  de
       bouwarchitectuur. Een van beide, --host-arch of --host-type, volstaat.  De  andere  waarde
       zal op een gebruikelijke standaardwaarde ingesteld worden. Het is inderdaad dikwijls beter
       om slechts één waarde op te geven, vermits dpkg-architecture een  waarschuwing  zal  geven
       als de keuze die u maakt niet met de standaardwaarde overeenkomt.

COMMANDO'S

       -l, --list
              Geef   de   omgevingsvariabelen,   per   regel   één,   weer  volgens  de  indeling
              VARIABELE=waarde. Dit is de standaardactie.

       -e, --equal architectuur
              Ga na of de architecturen gelijk zijn  (sinds  dpkg  1.13.13).  Het  vergelijkt  de
              huidige  of opgegeven Debian host-architectuur met architectuur om na te gaan of ze
              gelijk zijn. Deze actie zal geen architectuurjokertekens  verwerken.  Het  commando
              sluit af met een afsluitstatus 0 bij gelijkheid en 1 bij ongelijkheid.

       -i, --is architectuurjokerteken
              Ga  na  of  de  architecturen  gelijk  zijn (sinds dpkg 1.13.13). Het vergelijkt de
              huidige of opgegeven Debian host-architectuur met architectuurjokerteken, nadat dit
              als  een  architectuurjokerteken verwerkt werd, om na te gaan of beide gelijk zijn.
              Het commando sluit af met een afsluitstatus 0 bij gelijkheid en 1 bij ongelijkheid.

       -q, --query variabelenaam
              Toon de waarde van één enkele variabele.

       -s, --print-set
              Toon een export-commando. Dit kan gebruikt worden  om  de  omgevingsvariabelen  met
              behulp van eval in te stellen.

       -u, --print-unset
              Toon  een  commando dat vergelijkbaar is met --print-unset, maar om alle variabelen
              leeg te maken.

       -c, --command commando-tekenreeks
              Voer een commando-tekenreeks uit in een omgeving waarin alle  variabelen  ingesteld
              zijn op de vastgelegde waarde.

       -L, --list-known
              Toon  een  lijst van geldige architectuurbenamingen. Kan eventueel ingeperkt worden
              met een of  meer  van  de  vergelijkingsopties  --match-wildcard,  --match-bits  of
              --match-endian (sinds dpkg 1.17.14).

       -?, --help
              Toon info over het gebruik en sluit af.

       --version
              Toon de versie en sluit af.

OPTIES

       -a, --host-arch architectuur
              Stel de Debian-architectuur in voor de host.

       -t, --host-type gnu-systeemtype
              Stel het GNU-systeemtype in voor de host.

       -A, --target-arch architectuur
              Stel de Debian-architectuur in voor het doel (sinds dpkg 1.17.14).

       -T, --target-type gnu-systeemtype
              Stel het GNU-systeemtype in voor het doel (sinds dpkg 1.17.14).

       -W, --match-wildcard architectuurjokerteken
              Beperk  de  architecturen  die  door  --list-known weergegeven worden tot die welke
              beantwoorden aan het opgegeven architectuurjokerteken (sinds dpkg 1.17.14).

       -B, --match-bits architectuur-bits
              Beperk de architecturen die door --list-known weergegeven worden  tot  die  met  de
              opgegeven CPU-bits (sinds dpkg 1.17.14). Ofwel 32 ofwel 64.

       -E, --match-endian architectuur-bytevolgorde
              Beperk  de  architecturen  die  door --list-known weergegeven worden tot die met de
              opgegeven bytevolgorde (endianness) (sinds dpkg 1.17.14). Ofwel little ofwel big.

       -f, --force
              Waarden die door bestaande omgevingsvariabelen ingesteld zijn en die dezelfde  naam
              hebben  als  die  welke door de scripts gebruikt worden, worden gehonoreerd (d.w.z.
              gebruikt door dpkg-architecture), behalve wanneer deze forceer-vlag gebruikt wordt.
              Dit  laat  de gebruiker toe om een waarde te vervangen, zelfs als het aanroepen van
              dpkg-architecture   ingebed    zit    in    een    ander    script    (bijvoorbeeld
              dpkg-buildpackage(1)).

TERMINOLOGIE

       bouwmachine
           De machine waarop het pakket gebouwd wordt.

       hostmachine
           De machine waarvoor het pakket gebouwd wordt.

       doelmachine
           De  machine  waarvoor  de  compiler  bouwt.  Dit is enkel nodig bij het bouwen van een
           kruisgereedschapskist (cross-toolchain), een gereedschapskist die gebouwd  zal  worden
           op  de  bouwarchitectuur  om  uitgevoerd te worden op de hostarchitectuur en code moet
           bouwen voor de doelarchitectuur.

       Debian-architectuur
           De  tekenreeks  waarmee  de  Debian-architectuur  aangeduid  wordt  en  die   ook   de
           boomstructuur  met  de binaire pakketten in het FTP-archief specificeert. Voorbeelden:
           i386, sparc, hurd-i386.

       Debian-architectuurtupel
           Een Debian-architectuurtupel is de volledige unieke architectuurnaam met de expliciete
           vermelding  van  alle  componenten.  Dit  verschilt  minstens  daarin  van  een Debian
           architectuur dat de component cpu niet de abi impliceert. Het huidige tupel heeft  als
           vorm abi-libc-os-cpu. Voorbeelden: base-gnu-linux-amd64, eabihf-musl-linux-arm.

       Debian-architectuurjokerteken
           Een  Debian-architectuurjokerteken  is  een  speciale  architectuurtekenreeks  die een
           overeenkomst oplevert met elke echte architectuur die er onder hoort. De algemene vorm
           is  een  Debian-architectuurtupel  met vier of minder elementen en waarvan er minstens
           een any is. Ontbrekende elementen van de tupel worden impliciet als  any  voorgevoegd,
           en dus zijn de volgende koppels equivalent:
               any-any-any-any = any
               any-any-os-any = os-any
               any-libc-any-any = libc-any-any
           Voorbeelden: linux-any, any-i386, hurd-any, eabi-any-any-arm, musl-any-any.

       GNU-systeemtype
           Een  tekenreeks die een architectuurspecificatie inhoudt en bestaat uit twee delen met
           daartussen   een   koppelteken:   cpu   en   systeem.   Voorbeelden:   i586-linux-gnu,
           sparc-linux-gnu, i686-gnu, x86_64-netbsd.

       multiarch-triplet
           Het  uitgezuiverde  GNU-systeemtype  dat voor bestandssysteempaden gebruikt wordt. Dit
           triplet verandert zelfs niet wanneer het referentie-ISA verhoogd  wordt,  waardoor  de
           resulterende  paden  stabiel  blijven  door  de  tijd.  Het  enige  verschil  met  het
           GNU-systeemtype is momenteel dat voor op i386  gebaseerde  systemen  het  CPU-gedeelte
           steeds  i386 is. Voorbeelden: i386-linux-gnu, x86_64-linux-gnu. Voorbeelden van paden:
           /lib/powerpc64le-linux-gnu/, /usr/lib/i386-kfreebsd-gnu/.

VARIABELEN

       De volgende variabelen worden door dpkg-architecture ingesteld (zie de sectie  TERMS  voor
       een beschrijving van het naamgevingsschema):

       DEB_BUILD_ARCH
           De Debian architectuur van de bouwmachine.

       DEB_BUILD_ARCH_ABI
           De Debian abi-naam van de bouwmachine (sinds dpkg 1.18.11).

       DEB_BUILD_ARCH_LIBC
           De Debian libc-naam van de bouwmachine (sinds dpkg 1.18.11).

       DEB_BUILD_ARCH_OS
           De Debian systeemnaam van de bouwmachine (sinds dpkg 1.13.2).

       DEB_BUILD_ARCH_CPU
           De Debian CPU-naam van de bouwmachine (sinds dpkg 1.13.2).

       DEB_BUILD_ARCH_BITS
           De pointergrootte van de bouwmachine (in bits; sinds dpkg 1.15.4).

       DEB_BUILD_ARCH_ENDIAN
           De bytevolgorde (endianness) van de bouwmachine (little / big; sinds dpkg 1.15.4).

       DEB_BUILD_GNU_CPU
           Het CPU-gedeelte van DEB_BUILD_GNU_TYPE.

       DEB_BUILD_GNU_SYSTEM
           Het systeemgedeelte van DEB_BUILD_GNU_TYPE.

       DEB_BUILD_GNU_TYPE
           Het GNU-systeemtype van de bouwmachine.

       DEB_BUILD_MULTIARCH
           Het  uitgezuiverde  GNU-systeemtype  van  de  bouwmachine,  dat  gebruikt  wordt  voor
           bestandssysteempaden (sinds dpkg 1.16.0).

       DEB_HOST_ARCH
           De Debian architectuur van de hostmachine.

       DEB_HOST_ARCH_ABI
           De Debian abi-naam van de hostmachine (sinds dpkg 1.18.11).

       DEB_HOST_ARCH_LIBC
           De Debian libc-naam van de hostmachine (sinds dpkg 1.18.11).

       DEB_HOST_ARCH_OS
           De Debian systeemnaam van de hostmachine (sinds dpkg 1.13.2).

       DEB_HOST_ARCH_CPU
           De Debian CPU-naam van de hostmachine (sinds dpkg 1.13.2).

       DEB_HOST_ARCH_BITS
           De pointergrootte van de hostmachine (in bits; sinds dpkg 1.15.4).

       DEB_HOST_ARCH_ENDIAN
           De bytevolgorde (endianness) van de hostmachine (little / big; sinds dpkg 1.15.4).

       DEB_HOST_GNU_CPU
           Het CPU-gedeelte van DEB_HOST_GNU_TYPE.

       DEB_HOST_GNU_SYSTEM
           The systeemgedeelte van DEB_HOST_GNU_TYPE.

       DEB_HOST_GNU_TYPE
           Het GNU-systeemtype van de hostmachine.

       DEB_HOST_MULTIARCH
           Het  uitgezuiverde  GNU-systeemtype  van  de  hostmachine,  dat  gebruikt  wordt  voor
           bestandssysteem-paden (sinds dpkg 1.16.0).

       DEB_TARGET_ARCH
           De Debian architectuur van de doelmachine (sinds dpkg 1.17.14).

       DEB_TARGET_ARCH_ABI
           De Debian abi-naam van de doelmachine (sinds dpkg 1.18.11).

       DEB_TARGET_ARCH_LIBC
           De Debian libc-naam van de doelmachine (sinds dpkg 1.18.11).

       DEB_TARGET_ARCH_OS
           De Debian systeemnaam van de doelmachine (sinds dpkg 1.17.14).

       DEB_TARGET_ARCH_CPU
           De Debian CPU-naam van de doelmachine (sinds dpkg 1.17.14).

       DEB_TARGET_ARCH_BITS
           De pointergrootte van de doelmachine (in bits; sinds dpkg 1.17.14).

       DEB_TARGET_ARCH_ENDIAN
           De bytevolgorde (endianness) van de doelmachine (little / big; sinds dpkg 1.17.14).

       DEB_TARGET_GNU_CPU
           Het CPU-gedeelte van DEB_TARGET_GNU_TYPE (sinds dpkg 1.17.14).

       DEB_TARGET_GNU_SYSTEM
           Het systeemgedeelte van DEB_TARGET_GNU_TYPE (sinds dpkg 1.17.14).

       DEB_TARGET_GNU_TYPE
           Het GNU-systeemtype van de doelmachine (sinds dpkg 1.17.14).

       DEB_TARGET_MULTIARCH
           Het  uitgezuiverde  GNU-systeemtype  van  de  doelmachine,  dat  gebruikt  wordt  voor
           bestandssysteempaden (sinds dpkg 1.17.14).

BESTANDEN

   Architectuurtabellen
       Al deze bestanden moeten aanwezig zijn, wil dpkg-architecture kunnen werken.  Hun  locatie
       kan  veranderd  worden  bij de programmauitvoering met de omgevingsvariabele DPKG_DATADIR.
       Deze tabellen bevatten op hun eerste regel een pseudo-veld format Version om hun  indeling
       aan  te  geven,  zodat  ontleders  kunnen  nagaan  of  zij  ermee  kunnen omgaan, zoals "#
       Version=1.0".

       /usr/share/dpkg/cputable
              Tabel met gekende CPU-namen en hun omzetting naar een GNU-naam. Indeling versie 1.0
              (sinds dpkg 1.13.2).

       /usr/share/dpkg/ostable
              Tabel  van gekende namen van besturingssystemen en hun omzetting naar een GNU-naam.
              Indeling versie 2.0 (sinds dpkg 1.18.11).

       /usr/share/dpkg/tupletable
              Omzetting tussen Debian architectuurtupels en  Debian  architectuurnamen.  Indeling
              versie 1.0 (sinds dpkg 1.18.11).

       /usr/share/dpkg/abitable
              Tabel van Debian architectuur-ABI-attribuutvervangingen. Indeling versie 2.0 (sinds
              dpkg 1.18.11).

   Ondersteuning bij het maken van een pakket
       /usr/share/dpkg/architecture.mk
              Makefile-fragment dat alle variabelen die  dpkg-architecture  uitvoert,  behoorlijk
              instelt en exporteert (sinds dpkg 1.16.1).

VOORBEELDEN

       dpkg-buildpackage   kan   gebruikt   worden  met  de  optie  -a  en  geeft  die  door  aan
       dpkg-architecture. Andere voorbeelden:

              CC=i386-gnu-gcc dpkg-architecture -c debian/rules build

              eval `dpkg-architecture -u`

       Verifieer of de huidige of opgegeven hostarchitectuur gelijk is aan een architectuur:

              dpkg-architecture -elinux-alpha

              dpkg-architecture -amips -elinux-mips

       Verifieer of de huidige of opgegeven hostarchitectuur een Linux-systeem is:

              dpkg-architecture -ilinux-any

              dpkg-architecture -ai386 -ilinux-any

   Het gebruik in debian/rules
       De omgevingsvariabelen die door dpkg-architecture ingesteld worden, worden doorgegeven aan
       debian/rules als variabelen voor make (zie de documentatie van make). U mag er echter niet
       op vertrouwen, aangezien dit het handmatig uitvoeren van  het  script  verhindert.  In  de
       plaats  daarvan  zou  u  ze  altijd moeten initialiseren met door dpkg-architecture met de
       optie -q te gebruiken. Hier volgen enkele voorbeelden die ook  illustreren  hoe  u  in  uw
       pakket ondersteuning voor cross-compilatie kunt verbeteren:

       Het opvragen van het GNU-systeemtype en dit doorgeven aan ./configure:

           DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
           DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
           [...]
           ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
             confflags += --build=$(DEB_HOST_GNU_TYPE)
           else
             confflags += --build=$(DEB_BUILD_GNU_TYPE) \
                          --host=$(DEB_HOST_GNU_TYPE)
           endif
           [...]
           ./configure $(confflags)

       Iets enkel voor een specifieke architectuur doen:

           DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)

           ifeq ($(DEB_HOST_ARCH),alpha)
             [...]
           endif

       of  indien  u  enkel  dient  te controleren wat het type CPU of OS is, moet u de variabele
       DEB_HOST_ARCH_CPU of DEB_HOST_ARCH_OS gebruiken.

       Merk op dat u ook kunt betrouwen op een  extern  Makefile-fragment  om  al  de  variabelen
       behoorlijk in te stellen die door dpkg-architecture kunnen aangeleverd worden:

           include /usr/share/dpkg/architecture.mk

           ifeq ($(DEB_HOST_ARCH),alpha)
             [...]
           endif

       In  ieder geval moet u nooit dpkg --print-architecture gebruiken om architectuurinformatie
       te bekomen tijdens het bouwen van een pakket.

OMGEVING

       DPKG_DATADIR
              Indien deze variabele een waarde heeft, zal ze gebruikt worden als de data-map  van
              dpkg  waarin  zich  de  architectuurtabellen  bevinden  (sinds dpkg 1.14.17). Staat
              standaard ingesteld op «/usr/share/dpkg».

       DPKG_COLORS
              Stelt de kleurmodus in (sinds dpkg 1.18.5). Waarden die  momenteel  gebruikt  mogen
              worden zijn: auto (standaard), always en never.

       DPKG_NLS
              Indien dit ingesteld is, zal het gebruikt worden om te beslissen over het activeren
              van moedertaalondersteuning, ook gekend als internationaliseringsondersteuning  (of
              i18n) (sinds dpkg 1.19.0). Geldige waarden zijn: 0 and 1 (standaard).

OPMERKINGEN

       Alle lange commando- en optienamen kunnen slechts sinds dpkg 1.17.17 gebruikt worden.

ZIE OOK

       dpkg-buildpackage(1).