Provided by: dpkg-dev_1.22.21ubuntu3.1_all 

NAAM
dpkg-buildpackage - binaire of broncodepakketten bouwen uit de broncode
OVERZICHT
dpkg-buildpackage [optie...] [--] [bestandsnaam.dsc|map]
BESCHRIJVING
dpkg-buildpackage is een programma dat het proces van het bouwen van een Debian pakket automatiseert.
De argumenten bestandsnaam.dsc en map worden ondersteund sinds dpkg 1.22.7. Hun semantiek is
experimenteel.
Het bestaat uit de volgende stappen:
1. Het voert de uitbreiding (hook) preinit uit voordat een bronbestand wordt gelezen. Als een
.dsc-bestand werd opgegeven, pakt het dit opnieuw uit en gaat het naar de map ervan. Als een map werd
opgegeven, wordt er naar die map gegaan. Anders wordt verwacht dat de huidige map de broncodeboom
bevat. Het bereidt de bouwomgeving voor door verschillende omgevingsvariabelen in te stellen(zie
OMGEVING), voert de uitbreiding init uit en roept dpkg-source --before-build aan (tenzij -T of
--target gebruikt werd).
2. Het controleert of voldaan is aan de bouw-vereisten en de bouw-tegenstrijdigheden (tenzij -d of
--no-check-builddeps opgegeven werd).
3. Indien met de optie -T of --target een of meer specifieke doelen geselecteerd werden, roept het deze
doelen aan en stopt dan. Anders voert het de uitbreiding (hook) preclean uit en roept het fakeroot
debian/rules clean aan om de bouwboom zuiver te maken (tenzij -nc of --no-pre-clean opgegeven werd).
4. Het voert de uitbreiding (hook) source uit en roept dpkg-source -b aan om het broncodepakket te
genereren (indien het bouwen van source aangevraagd werd met --build of gelijkwaardige opties en als
geen .dsc werd opgegeven).
5. Het voert de uitbreiding (hook) build uit en roept debian/rules build-target aan. Het voert
vervolgens de uitbreiding (hook) binary uit, gevolgd door fakeroot debian/rules binary-target (tenzij
enkel de bouw van het broncodepakket gevraagd werd met --build=source of gelijkwaardige opties). Merk
op dat build-target en binary-target ofwel build en binary zijn (de standaardsituatie, of indien een
bouw van het type any en all aangevraagd werd met --build of gelijkwaardige opties), ofwel build-arch
en binary-arch (indien een bouw van het type any maar niet all aangevraagd werd met --build of
gelijkwaardige opties), ofwel build-indep en binary-indep (indien een bouw van het type all maar niet
any aangevraagd werd met --build of gelijkwaardige opties).
6. Het voert de uitbreiding (hook) buildinfo uit en roept dpkg-genbuildinfo aan om een bestand
.buildinfo aan te maken. Verschillende opties van dpkg-buildpackage worden aan dpkg-genbuildinfo
overgemaakt. Als er een .dsc werd opgegeven, wordt hiernaar verwezen in het gegenereerde
.buildinfo-bestand, zodat we de herkomst van de broncodeboom kunnen vaststellen.
7. Het voert de uitbreiding (hook) changes uit en roept dpkg-genchanges aan om een .changes-bestand te
genereren. De naam van het bestand .changes zal afhangen van het type bouw en zal zo specifiek zijn
als nodig, maar niet meer dan dat; de naam zal als volgt zijn:
broncode-naam_binaire-versie_arch.changes
voor een bouw die any bevat
broncode-naam_binaire-versie_all.changes
voor een bouw die daarentegen all bevat
broncode-naam_broncode-versie_source.changes.
voor een bouw die daarentegen source bevat
Veel dpkg-buildpackage-opties worden doorgestuurd naar dpkg-genchanges.
8. Het voert de uitbreiding (hook) postclean uit en als -tc of --post-clean werd opgegeven zal het
nogmaals fakeroot debian/rules clean aanroepen.
9. Het roept dpkg-source --after-build aan.
10. Het voert de uitbreiding (hook) check uit en roept een pakketcontroleprogramma aan voor nazicht van
het bestand .changes (indien er in DEB_CHECK_COMMAND of met --check-command een commando opgegeven
werd).
11. Het voert de uitbreiding (hook) sign uit en ondertekent met behulp van de OpenPGP-backend (voor zover
het geen bouw van het type UNRELEASED is of tenzij --no-sign werd opgegeven) voor het ondertekenen
van het bestand .dsc (als dat bestaat, tenzij -us of --unsigned-source opgegeven werden), van het
bestand .buildinfo (tenzij -ui, --unsigned-buildinfo, -uc of --unsigned-changes opgegeven werden) en
van het bestand .changes (tenzij -uc of --unsigned-changes opgegeven werden).
12. Als een .dsc-bestand werd opgegeven, wordt de uitgepakte broncodemap verwijderd.
13. Het voert de uitbreiding (hook) done uit.
OPTIES
Alle opties kunnen zowel opgegeven worden aan de commandoregel als in de systeem- en
gebruikersconfiguratiebestanden voor dpkg-buildpackage. Elke regel in het configuratiebestand is ofwel
een optie (exact hetzelfde als de commandoregeloptie, maar zonder de verbindingsstreepjes aan het begin)
of commentaar (als hij begint met een ‘#’).
--build=type
Geeft het bouw-type op vanuit een lijst van door komma's gescheiden componenten (sinds dpkg 1.18.5).
Alle opgegeven componenten worden gecombineerd om het enige te gebruiken bouwtype uit te kiezen, wat
inhoudt dat één enkele compilatie wordt uitgevoerd met één enkel .changes-bestand. Wordt doorgegeven
aan dpkg-genchanges.
De waarden die gebruikt mogen worden zijn:
source
Bouwt het broncodepakket.
Opmerking: Indien u deze waarde op zichzelf staand gebruikt en indien uw enige bedoeling is om
het bronpakket gewoon (opnieuw) te bouwen vanuit een zuivere broncodeboom, dan is het altijd
beter om rechtstreeks dpkg-source te gebruiken, aangezien dat niet vereist dat eventuele
bouwvereisten geïnstalleerd worden, welke anders nodig zijn om in staat te zijn het doelwit clean
te aanroepen.
any Bouwt de architectuurspecifieke binaire pakketten.
all Bouwt de architectuuronafhankelijke binaire pakketten.
binary
Bouwt de architectuurspecifieke en de architectuuronafhankelijke binaire pakketten. Dit is een
alias voor any,all.
full
Bouwt alles. Dit is een alias voor source,any,all en identiek aan de standaardsituatie wanneer
geen bouwoptie opgegeven werd..
-g Het equivalent van --build=source,all (sinds dpkg 1.17.11).
-G Het equivalent van --build=source,any (sinds dpkg 1.17.11).
-b Het equivalent van --build=binary of --build=any,all.
-B Het equivalent van --build=any.
-A Het equivalent van --build=all.
-S Het equivalent van --build=source.
-F Het equivalent van --build=full, --build=source,binary of --build=source,any,all (sinds dpkg 1.15.8).
--target=target[,...]
--target doel[,...]
-T, --rules-target=target[,...]
Roept na het opzetten van de bouwomgeving per opgegeven target eenmaal debian/rules doel aan en stopt
het proces van het bouwen van het pakket hier (sinds dpkg 1.15.0, de lange optie sinds dpkg 1.18.8,
de ondersteuning voor meerdere targets sinds dpkg 1.18.16). Indien ook --as-root opgegeven werd, dan
wordt het commando als systeembeheerder uitgevoerd (zie --root-command). Merk op dat gekende targets
die verplicht als systeembeheerder moeten uitgevoerd worden, deze optie niet nodig hebben (d.w.z. de
targets clean, binary, binary-arch en binary-indep).
--as-root
Enkel zinvol in samenhang met --target (sinds dpkg 1.15.0). Vereist dat het doel met
systeembeheerdersrechten uitgevoerd wordt.
-si
-sa
-sd
-vversie
-Cbeschrijving-van-de-wijzigingen
-madres-van-de-beheerder
-eadres-van-de-beheerder
Wordt ongewijzigd doorgegeven aan dpkg-genchanges. Zie de man-pagina ervan.
--build-by=adres-van-de-beheerder
--source--by=adres-van-de-beheerder (sinds dpkg 1.21.10)
Doorgeven als -m aan dpkg-genchanges. Zie de man-pagina ervan.
--release-by=adres-van-de-beheerder
--changed-by=adres-van-de-beheerder (sinds dpkg 1.21.10)
Doorgeven als -e aan dpkg-genchanges. Zie de man-pagina ervan.
-a, --host-arch architectuur
De Debian-architectuur waarvoor we bouwen specificeren (lange optie sinds dpkg 1.17.17). De
architectuur van de machine waarop we bouwen, wordt automatisch vastgesteld en ze wordt ook als
standaard genomen voor de hostmachine.
-t, --host-type gnu-systeemtype
Het GNU-systeemtype waarvoor we bouwen specificeren (lange optie sinds dpkg 1.17.17). Het kan
gebruikt worden in de plaats van --host-arch of als een aanvulling om het standaard GNU-systeemtype
voor de Debian-architectuur van de host aan te passen.
--target-arch architectuur
De Debian-architectuur specificeren waarvoor de gebouwde programma's gebouwd zullen worden (sinds
dpkg 1.17.17). De standaardwaarde is de hostmachine.
--target-type gnu-systeemtype
Het GNU-systeemtype specificeren waarvoor de gebouwde programma's gebouwd zullen worden (sinds dpkg
1.17.17). Het kan gebruikt worden in de plaats van --target-arch of als een aanvulling om het
standaard GNU-systeemtype voor de Debian doelarchitectuur aan te passen.
-P, --build-profiles=profiel[,...]
Het/de profiel(en) welke we bouwen specificeren in een lijst met een komma als scheidingsteken (sinds
dpkg 1.17.2, de lange optie sinds dpkg 1.18.8). Het standaardgedrag is om niet voor een specifiek
profiel te bouwen. Stelt ze ook in (als een lijst met een spatie als scheidingsteken) als de
omgevingsvariabele DEB_BUILD_PROFILES, hetgeen bijvoorbeeld toelaat aan debian/rules-bestanden om
gebruik te maken van deze informatie bij voorwaardelijke bouwoperaties.
-j, --jobs[=taken|auto]
Geeft het aantal taken aan dat gelijktijdig mag worden uitgevoerd (sinds dpkg 1.14.7, lange optie
sinds dpkg 1.18.8). Waarbij het aantal taken overeenkomt met het aantal online-processors indien auto
werd opgegeven (sinds dpkg 1.17.10), of een onbeperkt aantal indien taken niet werd opgegeven. Het
standaardgedrag is auto (sinds dpkg 1.18.11) in niet-opgelegde modus (sinds dpkg 1.21.10), en als
zodanig is het altijd veiliger om dit te gebruiken voor elk pakket, inclusief voor pakketten die niet
op een veilige manier parallel kunnen worden gebouwd. Als u het aantal taken instelt op 1, wordt de
seriële uitvoering hersteld.
Het voegt parallel=taken of parallel toe aan de omgevingsvariabele DEB_BUILD_OPTIONS, hetgeen
debian/rules-bestanden in staat stelt van deze informatie gebruik te maken voor eigen doeleinden
(opt-in modus genaamd). De waarde taken heeft voorrang op de optie parallel=taken of parallel in de
omgevingsvariabele DEB_BUILD_OPTIONS. Merk op dat de waarde auto zal vervangen worden door het
effectieve aantal momenteel actieve processoren en ze dus als zodanig naar geen enkel onderliggend
proces doorgegeven zal worden. Indien het aantal beschikbare online-processoren niet afgeleid kan
worden, dan zal de code terugvallen op het gebruiken van seriële uitvoering (sinds dpkg 1.18.15),
hoewel dit enkel zou mogen gebeuren op exotische en niet-ondersteunde systemen.
-J, --jobs-try[=taken|auto]
Deze optie (sinds dpkg 1.18.2, lange optie sinds dpkg 1.18.8) is gelijkwaardig aan de optie -j
hierboven.
Aangezien het gedrag van -j in dpkg 1.21.10 veranderde naar de opt-in modus, kunt u in plaats daarvan
deze optie gebruiken als u over de verschillende uitgaven van dpkg heen eenzelfde betekenis moet
kunnen garanderen.
--jobs-force[=taken|auto]
Deze optie (sinds dpkg 1.21.10) is gelijkwaardig aan de optie --jobs behalve dat ze de opgelegde
parallelle modus zal activeren door de optie -j voor make met het berekende aantal parallelle taken
toe te voegen aan de omgevingsvariabele MAKEFLAGS.
Dit zou ertoe moeten leiden dat alle volgende aanroepen van make die optie overerven, waardoor de
parallelle instelling voor het verpakken (en mogelijk voor het bovenstroomse bouwsysteem als dat
make(1) gebruikt) wordt opgelegd, ongeacht hun ondersteuning voor een parallelle bouw, wat bouwfouten
zou kunnen veroorzaken.
Opmerking: elke Makefile die niet parallel-aangepast is, moet als een fouten bevattende Makefile
beschouwd worden. Deze zouden ofwel parallel-aangepast moeten gemaakt worden of als niet veilig
gemarkeerd worden met het target make(1) .NOTPARALLEL.
-D, --check-builddeps
Bouwvereisten en tegenstrijdigheden controleren en afbreken als er niet aan voldaan is (de lange
optie sinds dpkg 1.18.8). Dit is het standaardgedrag.
-d, --no-check-builddeps
Bouwvereisten en tegenstrijdigheden niet controleren (de lange optie sinds dpkg 1.18.8).
--ignore-builtin-builddeps
Ingebouwde bouwvereisten en tegenstrijdigheden niet controleren (sinds dpkg 1.18.2). Dit zijn de
distributiespecifieke impliciete bouwvereisten die gewoonlijk noodzakelijk zijn in een bouwomgeving,
de zogenaamde set van pakketten van het type Build-Essential.
--rules-requires-root
Het veld Rules-Requires-Root niet honoreren; er wordt teruggevallen op zijn verouderde
standaardwaarde binary-targets (since dpkg 1.19.1).
-nc, --no-pre-clean
Voor het bouwen de broncodeboom niet opschonen (de lange optie sinds dpkg 1.18.8). Impliceert -b
indien geen van de opties -F, -g, -G, -B, -A of -S gekozen werd. Gecombineerd met -S impliceert dit
-d (sinds dpkg 1.18.0).
--pre-clean
Voor het bouwen de broncodeboom opschonen (sinds dpkg 1.18.8). Dit is het standaardgedrag.
-tc, --post-clean
De broncodeboom opschonen (met commando-om-root-te-worden debian/rules clean) nadat het pakket
gebouwd werd (de lange optie sinds dpkg 1.18.8).
--no-post-clean
De broncodeboom niet opschonen na het bouwen van het pakket (sinds dpkg 1.19.1). Dit is het
standaardgedrag.
--sanitize-env
De bouwomgeving saneren (sinds dpkg 1.20.0). Dit houdt het verwijderen of opnieuw instellen in van
omgevingsvariabelen, van umask en van eventuele andere procesattributen welke anders de bouw van
pakketten negatief zouden kunnen beïnvloeden. Omdat het officiële startpunt voor het bouwen van
pakketten debian/rules is, kunnen pakketten er niet op vertrouwen dat deze instellingen aanwezig zijn
en moeten ze dus werken indien dat niet het geval is. Wat gesaneerd moet worden is
leverancierspecifiek.
-r, --root-command=commando-om-root-te-worden
Wanneer dpkg-buildpackage een deel van het bouwproces in de hoedanigheid van root (systeembeheerder)
moet uitvoeren, laat het het commando dat het uitvoert voorafgaan door commando-om-root-te-worden
indien er een opgegeven werd (de lange optie sinds dpkg 1.18.8). Anders, als er geen opgegeven werd,
wordt standaard fakeroot gebruikt als het beschikbaar is. commando-om-root-te-worden moet beginnen
met de naam van een programma in het PATH en krijgt als argumenten de naam van het echte commando dat
uitgevoerd moet worden en de argumenten die het moet krijgen. commando-om-root-te-worden kan
parameters bevatten (ze moeten met spaties van elkaar gescheiden worden) maar geen shell-metatekens.
Doorgaans is commando-om-root-te-worden fakeroot, sudo, super of really. su is niet geschikt,
aangezien het enkel de shell van de gebruiker kan aanroepen met -c in plaats van afzonderlijke
argumenten door te geven aan het uit te voeren commando.
-R, --rules-file=rules-bestand
Een Debian-pakket bouwen houdt meestal het aanroepen van debian/rules in als een commando met
verschillende standaardparameters (sinds dpkg 1.14.17, de lange optie sinds dpkg 1.18.8). Met deze
optie is het mogelijk om een andere programma-aanroep te gebruiken om het pakket te bouwen (ze kan
parameters bevatten die onderling door spaties gescheiden worden). Anderzijds kan de optie ook
gebruikt worden om het standaard rules-bestand uit te voeren met een ander make-programma
(bijvoorbeeld door /usr/local/bin/make -f debian/rules te gebruiken als rules-bestand).
--check-command=controlecommando
Commando dat gebruikt wordt om het bestand .changes zelf en eventuele gebouwde artefacten waarnaar in
het bestand verwezen wordt, te controleren (sinds dpkg 1.17.6). Het commando moet als argument de
padnaam van .changes krijgen. Gewoonlijk is dit commando lintian.
--check-option=optie
Optie optie doorgeven aan het controlecommando dat gespecificeerd werd met DEB_CHECK_COMMAND of met
--check-command (sinds dpkg 1.17.6). Kan meermaals gebruikt worden.
--hook-hook-naam=hook-commando
Stelt de opgegeven shell-code hook-commando in als de uitbreiding (hook) hook-naam, die zal
uitgevoerd worden op de momenten die in de uitvoeringsstappen gepreciseerd worden (sinds dpkg
1.17.6). De uitbreidingen (hooks) zullen steeds uitgevoerd worden, zelfs als de volgende actie niet
uitgevoerd wordt (met uitzondering voor de uitbreiding (hook) binary). Alle uitbreidingen (hooks)
zullen uitgevoerd worden in de map van de uitgepakte broncode.
Sommige uitbreidingen (hooks) kunnen aanvullende informatie ontvangen via omgevingsvariabelen (sinds
dpkg 1.22.0). Alle hooks krijgen hun hooknaam in de omgevingsvariabele DPKG_BUILDPACKAGE_HOOK_NAME
(sinds dpkg 1.22.0).
Opmerking: uitbreidingen (hooks) kunnen het bouwproces beïnvloeden en leiden tot het mislukken van de
bouw als hun commando's falen. Wees dus alert voor onbedoelde consequenties.
Momenteel worden de volgende hook-namen ondersteund:
preinit
init
preclean
source
Haalt DPKG_BUILDPACKAGE_HOOK_SOURCE_OPTIONS op met de door spaties gescheiden lijsten met opties
die worden doorgegeven aan de dpkg-source-aanroep.
build
Haalt DPKG_BUILDPACKAGE_HOOK_BUILD_TARGET op met de naam van het aangeroepen bouwdoel uit
debian/rules. Vóór dpkg 1.22.7 werd de variabele alleen ingesteld als het doel werd aangeroepen.
binary
Haalt DPKG_BUILDPACKAGE_HOOK_BINARY_TARGET op met de naam van het aangeroepen binaire doel uit
debian/rules, maar alleen als het wordt aangeroepen.
buildinfo
Haalt DPKG_BUILDPACKAGE_HOOK_BUILDINFO_OPTIONS op met de door spaties gescheiden lijsten met
opties die worden doorgegeven aan de dpkg-genbuildinfo-aanroep.
changes
Haalt DPKG_BUILDPACKAGE_HOOK_CHANGES_OPTIONS op met de door spaties gescheiden lijsten met opties
die worden doorgegeven aan de dpkg-genchanges-aanroep.
postclean
check
Haalt DPKG_BUILDPACKAGE_HOOK_CHECK_OPTIONS op met de door spaties gescheiden lijsten met opties
die worden doorgegeven aan het aangeroepen controlecommando.
sign
done
Het hook-commando ondersteunt de volgende substitutie-indelingstekenreeksen, die er voorafgaand aan
de uitvoering op toegepast zullen worden:
%% Eén enkel %-teken.
%a Een booleaanse waarde (0 of 1), die aangeeft of de volgende actie uitgevoerd wordt of niet.
%p De naam van het broncodepakket.
%v De versie van het broncodepakket.
%s De versie van het broncodepakket (zonder de epoch).
%u Het bovenstroomse versienummer (toeleveraarsversie).
--buildinfo-file=bestandsnaam
De bestandsnaam instellen voor het gegenereerde .buildinfo-bestand (sinds dpkg 1.21.0).
--buildinfo-option=optie
Optie optie doorgeven aan dpkg-genbuildinfo (sinds dpkg 1.18.11). Kan meermaals gebruikt worden.
--sign-backend=ondertekeningsbackend
Een OpenPGP-backendinterface opgeven welke gebruikt moet worden bij het aanroepen van het
ondertekeningscommando (sinds dpkg 1.21.10).
De standaardinstelling is auto, waarbij de beste beschikbare backend wordt gebruikt. De specifieke
ondersteunde OpenPGP-backends in volgorde van voorkeur zijn:
sop (elke conforme Stateless OpenPGP-implementatie)
sq (van Sequoia-PGP)
gpg (van GnuPG)
-p, --sign-command=ondertekeningscommando
Als dpkg-buildpackage een OpenPGP backend-commando moet uitvoeren om een controlebestand (.dsc) van
de broncode, een .buildinfo-bestand of een .changes-bestand te ondertekenen, zal het
ondertekeningscommando uitvoeren (en indien nodig daarbij het PATH doorzoeken) in plaats van het
standaard of automatisch gedetecteerde backend-commando (de lange optie sinds dpkg 1.18.8). Aan
ondertekeningscommando zullen alle backend-specifieke argumenten meegegeven worden volgens de
geselecteerde --sign-backend. ondertekeningscommando mag geen spaties bevatten en geen andere shell-
metatekens.
-k, --sign-keyid=sleutel-id
--sign-key=sleutel-id
Een OpenPGP sleutel-ID (hetzij een vingerafdruk of een gebruikers-ID) opgeven voor de geheime sleutel
die moet worden gebruikt bij het ondertekenen van pakketten (--sign-key sinds dpkg 1.18.8,
--sign-keyid sinds dpkg 1.21.10).
--sign-keyfile=sleutel-bestand
Een OpenPGP sleutel-bestand opgeven dat de geheime sleutel bevat die moet worden gebruikt bij het
ondertekenen van pakketten (sinds dpkg 1.21.10).
Opmerking: uit veiligheidsoverwegingen kan het sleutel-bestand best met een wachtwoord vergrendeld
worden gehouden.
-us, --unsigned-source
Het broncodepakket niet ondertekenen (de lange optie sinds dpkg 1.18.8).
-ui, --unsigned-buildinfo
Het bestand .buildinfo niet ondertekenen (sinds dpkg 1.18.19).
-uc, --unsigned-changes
De bestanden .buildinfo en .changes niet ondertekenen (de lange optie sinds dpkg 1.18.8).
--no-sign
Geen enkel bestand ondertekenen; dit omvat het broncodepakket, het bestand .buildinfo en het bestand
.changes (sinds dpkg 1.18.20).
--force-sign
Het ondertekenen van de resulterende bestanden afdwingen (sinds dpkg 1.17.0), ongeacht -us,
--unsigned-source, -ui, --unsigned-buildinfo, -uc, --unsigned-changes of overige interne heuristiek.
-sn
-ss
-sA
-sk
-su
-sr
-sK
-sU
-sR
-i, --diff-ignore[=regex]
-I, --tar-ignore[=patroon]
-z, --compression-level=niveau
-Z, --compression=compressor
Wordt ongewijzigd doorgegeven aan dpkg-source. Zie de man-pagina ervan.
--source-option=optie
Optie optie doorgeven aan dpkg-source (sinds dpkg 1.15.6). Kan meermaals gebruikt worden.
--changes-file=bestandsnaam
De bestandsnaam instellen voor het gegenereerde .changes-bestand (sinds dpkg 1.21.0).
--changes-option=optie
Optie optie doorgeven aan dpkg-genchanges (sinds dpkg 1.15.6). Kan meermaals gebruikt worden.
--admindir=map
--admindir map
Een andere locatie opgeven voor de database van dpkg (sinds dpkg 1.14.0). De standaardlocatie is
/var/lib/dpkg.
-?, --help
Info tonen over het gebruik en afsluiten.
--version
De versie tonen en afsluiten.
OMGEVING
Externe omgeving
DEB_CHECK_COMMAND
Indien dit ingesteld werd, zal het gebruikt worden als het commando waarmee het bestand .changes
gecontroleerd wordt (sinds dpkg 1.17.6). De optie --check-command heeft hierop voorrang.
DEB_SIGN_KEYID
Indien dit ingesteld werd, zal het gebruikt worden om de bestanden .changes, .buildinfo en .dsc te
ondertekenen (sinds dpkg 1.17.2). De optie --sign-keyid heeft hierop voorrang.
DEB_SIGN_KEYFILE
Indien dit ingesteld werd, zal het gebruikt worden om de bestanden .changes, .buildinfo en .dsc te
ondertekenen (sinds dpkg 1.21.10). De optie --sign-key heeft hierop voorrang.
DEB_BUILD_OPTIONS
Indien dit ingesteld werd, zal het een door spaties gescheiden lijst met opties bevatten die het
gedrag beïnvloeden van sommige dpkg-gereedschappen die betrokken zijn bij het bouwen van pakketten,
en die het bouwproces van pakketten kunnen beïnvloeden als de code in debian/rules deze opties
erkent. Deze opties kunnen parameters hebben die direct na een gelijkheidsteken ('=') worden
opgegeven. Bij opties die meerdere parameters ondersteunen, worden deze niet gescheiden door spaties,
omdat die gereserveerd zijn voor het scheiden van opties.
Hieronder volgen de opties die bekend zijn en worden ondersteund door dpkg-gereedschappen; andere
opties die worden erkend door debian/rules kunnen worden gedefinieerd door distributiespecifiek
beleid.
parallel=N
In het verpakkingsproces kan men in het bestand debian/rules deze optie gebruiken om het
bouwproces zo in te stellen dat N parallelle taken worden gebruikt. Deze optie wordt overschreven
door de opties --jobs en --jobs-force.
nocheck
dpkg-buildpackage negeert de variabele DEB_CHECK_COMMAND. In het verpakkingsproces wordt van
debian/rules niet verwacht dat het testsuites uitvoert tijdens het bouwen.
noopt
Als debian/rules dpkg-buildflags aanroept om de bouwvlaggen in te stellen, dan zullen deze zo
worden ingesteld dat er geen optimalisaties mogelijk zijn.
nostrip
In het verpakkingsproces moet debian/rules ervoor zorgen dat geen foutopsporingsinformatie wordt
verwijderd van objecten. Als debian/rules het make-fragment mk/buildtools.mk bevat, zal de make-
variabele STRIP deze optie respecteren.
terse
dpkg-buildpackage zal de make(1)-vlag --no-print-directory toevoegen aan de omgevingsvariabele
MAKEFLAGS. In het verpakkingsproces moet debian/rules de breedsprakigheid beperken, maar niet
helemaal stil zijn.
hardening=functie-spec
reproducible=functie-spec
abi=functie-spec
future=functie-spec
qa=functie-spec
optimize=functie-spec
sanitize=functie-spec
Dit zijn functiegebieden die de bouwvlagfuncties regelen. Zie dpkg-buildflags(1) voor verdere
details.
DEB_BUILD_PROFILES
Indien dit ingesteld werd, zal het gebruikt worden als het/de actieve bouwprofiel(en) voor het pakket
dat gebouw wordt (sinds dpkg 1.17.2). Het is een lijst van profielnamen die onderling door een spatie
gescheiden zijn. De optie -P heeft hierop voorrang.
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).
Interne omgeving
Zelfs al exporteert dpkg-buildpackage sommige variabelen, toch mag debian/rules er niet op rekenen dat ze
aanwezig zijn en moet het in de plaats daarvan gebruik maken van de desbetreffende interface om de
benodigde variabelen op te halen, aangezien dat bestand.het belangrijkste aanspreekpunt is voor het
bouwen van pakketten en de op zichzelf staande uitvoering ervan ondersteund moet zijn.
DEB_BUILD_*
DEB_HOST_*
DEB_TARGET_*
dpkg-architecture wordt aangeroepen met de doorgegeven parameters -a en -t. Eventuele variabelen die
zijn optie -s als uitvoer geeft, worden in de bouwomgeving geïntegreerd.
DEB_RULES_REQUIRES_ROOT
Deze variabele wordt ingesteld op de waarde die verkregen wordt uit het veld Rules-Requires-Root, het
niveau van dpkg-build-api of vanuit de commandoregel. Indien ze ingesteld is, zal ze een geldige
waarde zijn voor het veld Rules-Requires-Root. Ze wordt gebruikt om debian/rules te informeren of de
specificatie rootless-builds.txt ondersteund wordt.
DEB_GAIN_ROOT_CMD
Deze variabele wordt ingesteld op gain-root-command wanneer het veld Rules-Requires-Root ingesteld
staat op een andere waarde dan no of binary-targets.
SOURCE_DATE_EPOCH
Deze variabele wordt ingesteld op de Unix-tijd (timestamp) sinds het tijdstip (de epoch) van het
laatste item in debian/changelog, voor zover hij niet reeds gedefinieerd is.
BESTANDEN
/etc/dpkg/buildpackage.conf
Configuratiebestand dat voor het hele systeem geldt
$XDG_CONFIG_HOME/dpkg/buildpackage.conf of
$HOME/.config/dpkg/buildpackage.conf
Configuratiebestand dat gebruikersafhankelijk is.
OPMERKINGEN
Compileervlaggen worden niet langer geëxporteerd
Tussen dpkg 1.14.17 en 1.16.1 exporteerde dpkg-buildpackage compileervlaggen (CFLAGS, CXXFLAGS, FFLAGS,
CPPFLAGS en LDFLAGS) met de waarden die door dpkg-buildflags teruggegeven werden. Dit is niet langer het
geval.
Standaard bouwtargets
dpkg-buildpackage gebruikt de targets build-arch en build-indep sinds dpkg 1.16.2. Vóór dpkg 1.22.7 was
er code om te proberen de ontbrekende targets te detecteren en terug te vallen op de build target. Die
targets zijn dus verplicht.
BEVEILIGING
Het bouwen van binaire of bronpakketten mag alleen worden uitgevoerd op basis van vertrouwde
brongegevens.
BUGS
Het zou mogelijk moeten zijn om spaties en shell-metatekens en initiële argumenten op te geven voor
commando-om-root-te-worden en ondertekeningscommando.
ZIE OOK
/usr/share/doc/dpkg/spec/rootless-builds.txt, dpkg-source(1), dpkg-architecture(1), dpkg-buildflags(1),
dpkg-genbuildinfo(1), dpkg-genchanges(1), fakeroot(1), lintian(1),
<https://datatracker.ietf.org/doc/draft-dkg-openpgp-stateless-cli/>, sq(1), gpg(1).
1.22.21 2025-10-16 dpkg-buildpackage(1)