dpkg-buildpackage - Binär- oder Quellpakete aus Quellen bauen
dpkg-buildpackage [
Option …]
dpkg-buildpackage ist ein Programm, das den Prozess des Bauens eines
Debian-Paketes automatisiert. Der Bauprozess besteht aus den folgenden
Schritten:
- 1.
- Die Bauumgebung wird vorbereitet, indem verschiedene
Umgebungsvariablen gesetzt werden (siehe UMGEBUNG), führt
den init-Hook aus und ruft dpkg-source --before-build auf
(es sei denn, -T oder --target wurde verwandt).
- 2.
- Es wird geprüft, dass Bauabhängigkeiten und
-konflikte erfüllt sind (falls -d oder
--no-check-builddeps nicht angegeben ist).
- 3.
- Falls eines oder mehrere spezielle Ziele mit der Option
-T oder --target ausgewählt wurden, werden diese
Ziele aufgerufen und es wird hier beendet. Andernfalls wird der Hook
preclean ausgeführt und fakeroot debian/ rules clean
aufgerufen, um den Bau-Baum zu bereinigen (falls -nc oder
--no-pre-clean nicht angegeben ist).
- 4.
- Der Hook source wird ausgeführt und
dpkg-source -b aufgerufen, um das Quellpaket zu erstellen (falls
mit --build oder äquivalenten Optionen ein source
(Quell-)Bau erbeten wurde).
- 5.
- Es führt den Hook build aus und ruft
debian/rules Bauziel auf. Dann führt es den Hook
binary aus, gefolgt von fakeroot debian/rules
Binärziel auf (falls nicht ein reiner Quellbau mit
--build=source oder äquivalenten Optionen erbeten wurde).
Beachten Sie, dass Bauziel und Binärziel entweder
build und binary (Standardfall, oder falls any- und
all-Bau mit --build oder äquivalenten Optionen
erbeten wurde) oder build-arch und binary-arch (falls ein
any- und nicht all-Bau mit --build oder
äquivalenten Optionen erbeten wurde) oder build-indep und
binary-indep (falls ein all- und nicht any-Bau mit
--build oder äquivalenten Optionen erbeten wurde).
- 6.
- Der Hook buildinfo wird ausgeführt und
dpkg-genbuildinfo aufgerufen, um eine .buildinfo-Datei zu
erstellen. Viele Optionen von dpkg-buildpackage werden an
dpkg-genbuildinfo weitergeleitet.
- 7.
- Die changes-Hooks werden ausgeführt und
dpkg-genchanges aufgerufen, um eine .changes-Datei zu
erstellen. Der Name der .changes-Datei wird von der Art des Baus
abhängen und wird so spezifisch wie notwendig sein, aber nicht
mehr; für einen Bau, der any enthält, wird der Name
Quellname_Binärversion_Arch.changes
oder andernfalls für einen Bau, der all enthält, wird
der Name
Quellname_Binärversion_all.changes
oder andernfalls für einen Bau, der source enthält,
wird der Name
Quellname_Quellversion_source.changes
lauten. Viele Optionen von dpkg-buildpackage werden an
dpkg-genchanges weitergegeben.
- 8.
- Der Hook postclean wird ausgeführt und, falls
-tc oder --post-clean angegeben ist, erneut fakeroot
debian/rules clean aufgerufen.
- 9.
-
dpkg-source --after-build wird aufgerufen.
- 10.
- Der Hook check wird ausgeführt und ein
Paketprüfprogramm für die Datei .changes aufgerufen
(falls ein Befehl in DEB_CHECK_COMMAND oder mit
--check-command angegeben ist).
- 11.
- Der Hook sign wird ausgeführt und mittels
eines OpenPGP-Backends signiert (so lange es sich nicht um einen
„UNRELEASED“-Bau handelt oder --no-sign angegeben
wurde), um die .dsc-Datei (falls vorhanden und -us oder
--unsigned-source nicht angegeben wurde), die
.buildinfo-Datei (falls -ui, --unsigned-buildinfo,
-uc oder --unsigned-changes nicht angegeben wurden) und die
.changes-Datei (falls -uc oder --unsigned-changes
nicht angegeben wurde) zu signieren.
- 12.
- Der Hook done wird ausgeführt.
Alle langen Optionen können auf der Befehlszeile oder im
dpkg-buildpackage-System und Benutzerkonfigurationsdateien angegeben
werden. Jede Zeile in der Konfigurationsdatei ist entweder eine Option (exakt
die gleiche wie die Befehlszeilenoption, nur ohne führende
Bindestriche) oder ein Kommentar (falls sie mit ‚
#’)
beginnt).
-
--build=Typ
- Spezifiziert den Bau-Typ aus einer
Kommata-getrennten Liste von Komponenten (seit Dpkg 1.18.5). Alle
angegebenen Komponenten werden kombiniert, umn den einzigen zu verwendenen
Bautyp auszuwählen. Dies impliziert einen einzelnen Baudurchlauf,
wodurch eine einzelne Datei .changes erstellt wird. Wird an
dpkg-genchanges weitergegeben.
Die erlaubten Werte sind:
- source
- Baut das Quellpaket.
Hinweis: Falls Sie diesen Wert alleine verwenden und falls Sie
einfach das Quellpaket aus einem sauberen Quellbaum (neu) bauen
möchten, ist die Verwendung von dpkg-source immer die
bessere Option, da dafür keine Bauabhängigkeiten installiert
sein müssen, die ansonsten benötigt werden, um das Ziel
clean aufzurufen.
- any
- Baut das architekturspezifische Binärpaket.
- all
- Baut die architekturunabhängigen
Binärpakete.
- binary
- Baut die architekturspezifischen und -unabhängigen
Binärpakete. Dies ist ein Alias für any,all.
- full
- Baut alles. Dies ist ein Alias für
source,any,all und identisch zum Standardfall, wenn keine
Bauoptionen festgelegt werden.
- -g
- Äquivalent zu --build=source,all (seit Dpkg
1.17.11).
- -G
- Äquivalent zu --build=source,any (seit Dpkg
1.17.11).
- -b
- Äquivalent zu --build=binary oder
--build=any,all.
- -B
- Äquivalent zu --build=any.
- -A
- Äquivalent zu --build=all.
- -S
- Äquivalent zu --build=source.
- -F
- Äquivalent zu --build=full,
--build=source,binary oder --build=source,any,all (seit Dpkg
1.15.8).
-
--target=Ziel[,…]
-
--target Ziel[,…]
-
-T,
--rules-target=Ziel[,…]
- Ruft debian/rules Ziel einmal pro angegebenem
Ziel auf, nachdem die Bauumgebung eingerichtet wurde (außer dass
dpkg-source --before-build aufgerufen wird) und beendet den
Paketbauprozess hier (seit Dpkg 1.15.0, lange Optionen seit Dpkg 1.18.8,
Unterstützung für mehrere Ziele seit Dpkg 1.18.16). Falls
auch --as-root angegeben wurde, wird der Befehl mit root-Rechten
ausgeführt (siehe --root-command). Beachten Sie, dass
bekannte Ziele, die als Root ausgeführt werden müssen, diese
Option nicht benötigen (d.h. die Ziele clean, binary,
binary-arch und binary-indep).
- --as-root
- Ergibt nur mit --target einen Sinn (seit Dpkg
1.15.0). Erfordert, dass das Ziel mit Root-Rechten ausgeführt
wird.
- -si
- -sa
- -sd
-
-vVersion
-
-CÄnderungsbeschreibung
-
-mBetreueradresse
-
-eBetreueradresse
- Wird unverändert an dpkg-genchanges
weitergegeben. Lesen Sie dessen Handbuchseite.
-
--build-by=Betreueradresse
-
--source-by=Betreueradresse (seit Dpkg
1.21.10)
- Wird als -m unverändert an
dpkg-genchanges weitergegeben. Lesen Sie dessen Handbuchseite.
-
--release-by=Betreueradresse
-
--changed-by=Betreueradresse (seit Dpkg
1.21.10)
- Wird unverändert als -e an
dpkg-genchanges weitergegeben. Lesen Sie dessen Handbuchseite.
-
-a, --host-arch Architektur
- Gibt die Debian-Architektur, für die gebaut wird, an
(lange Option seit Dpkg 1.17.17). Die Architektur der Maschine, auf der
gebaut wird, wird automatisch bestimmt, und ist auch die Voreinstellung
für die Wirtmaschine („host machine“).
-
-t, --host-type GNU-Systemtyp
- Gibt den GNU-Systemtyp, für den wir bauen, an (lange
Option seit Dpkg 1.17.17). Er kann anstelle von --host-arch oder
als Ergänzung verwandt werden, um den Standard-GNU-Systemtyp der
Host-Debian-Architektur außer Kraft zu setzen.
-
--target-arch Architektur
- Gibt die Debian-Architektur, für die die gebauten
Programme bauen werden, an (seit Dpkg 1.17.17). Die Voreinstellung ist die
Host-Maschine.
-
--target-type GNU-Systemtyp
- Gibt den GNU-Systemtyp, für den die gebauten
Programme bauen werden, an (seit Dpkg 1.17.17). Er kann anstelle von
--target-arch oder als Ergänzung verwandt werden, um den
Standard-GNU-Systemtyp der Ziel-Debian-Architektur zu
überschreiben.
-
-P,
--build-profiles=Profil[,…]
- Gibt als Kommata-getrennte Liste die zu bauenden Profile an
(seit Dpkg 1.17.2, lange Optionen seit Dpkg 1.18.8).
Standardmäßig wird für kein bestimmtes Profil gebaut.
Setzt sie auch (als durch Leerzeichen getrennte Liste) in die
Umgebungsvariable DEB_BUILD_PROFILES. Dies erlaubt beispielsweise
debian/rules-Dateien, diese Information für den Bau unter
bestimmten Bedingungen zu nutzen.
-
-j,
--jobs[=Aufträge|auto]
- Gibt die Anzahl an Aufträgen, die simultan laufen
dürfen, an (seit Dpkg 1.14.7, lange Option seit Dpkg 1.18.8). Die
Anzahl von Aufträgen, die zur Anzahl der verfügbaren
Prozessoren passt, falls auto angegeben ist (seit Dpkg 1.17.10)
oder eine unbegrenzte Anzahl, falls Aufträge nicht angegeben
ist. Das Vorgabeverhalten ist auto (seit Dpkg 1.18.11) im nicht
erzwungenen Modus (seit Dpkg 1.21.10) und daher ist es immer sicherer,
dies mit jedem Paket zu verwenden, einschließlich solchen, die kein
sicheres paralleles Bauen ermöglichen. Durch Setzen von
Aufträgen auf 1 wird die serielle Ausführung
wiederhergestellt.
Wird parallel=Aufträge oder parallel zu der
Umgebungsvariablen DEB_BUILD_OPTIONS hinzufügen, was
debian/rules-Dateien die Zustimmung erlaubt, diese Information für
eigene Zwecke zu verwenden. Der Wert Aufträge setzt die
Option parallel=Aufträge oder die Option
parallel in der Umgebungsvariable DEB_BUILD_OPTIONS
außer Kraft. Beachten Sie, dass der Wert auto durch die
tatsächliche Anzahl der derzeitig aktiven Prozessoren ersetzt wird
und somit nicht an irgendeinen Kindprozess weitergereicht wird. Falls die
Anzahl der verfügbaren Prozessoren nicht ermittelt werden kann,
fällt der Code auf eine serielle Abarbeitung zurück (seit
Dpkg 1.18.15). Dies sollte aber nur auf exotischen und nicht
unterstützten Systemen passieren.
-
-J,
--jobs-try[=Aufträge|auto]
- Diese Option (seit Dpkg 1.18.2, lange Option seit Dpkg
1.18.8) ist äquivalent zu der obigen -j.
Da das Verhalten von -j in Dpkg 1.21.10 auf den Opt-In-Modus
geändert wurde, können Sie diese Option stattdessen
verwenden, falls Sie die Semantik über die
Dpkg-Veröffentlichungsserie hinweg garantieren müssen.
-
--jobs-force[=Aufträge|auto]
- Diese Option (seit Dpkg 1.21.10) ist zu der Option
--jobs äquivalent, außer dass der erzwungene
parallele Modus aktivieren wird, indem die Option make -j
mit der berechneten Anzahl an parallelen Aufträgen zu der
Umgebungsvariablen MAKEFLAGS hinzugefügt wird.
Dies sollte dazu führen, dass alle nachfolgenden Aufrufe von Make
diese Option erben, und daher die parallele Einstellung für die
Paketierung erzwingen (und möglicherweise für das Bausystem
der Originalautoren, falls dieses make(1) nutzt), unabhängig
von ihrer Einstellung für paralleles Bauen. Dies kann zu Baufehlern
führen.
Hinweis: Jedes Makefile, das kein sicheres paralleles Bauen
unterstützt, sollte als fehlerhaft betrachtet werden. Entweder
sollte es korrigiert werden, so dass sicheres paralleles Bauen
ermöglicht wird, oder es sollte mit dem Ziel .NOTPARALLEL
von make(1) als unsicher markiert werden.
-
-D, --check-builddeps
- Prüft Bauabhängigkeiten und -konflikte;
Abbruch, falls diese nicht erfüllt sind (lange Option seit Dpkg
1.18.8). Dies ist das Standardverhalten.
-
-d, --no-check-builddeps
- Überprüft Bauabhängigkeiten und
-konflikte nicht (lange Option seit Dpkg 1.18.8).
- --ignore-builtin-builddeps
- Prüft die eingebauten Bauabhängigkeiten und
-konflikte nicht (seit Dpkg 1.18.2). Es gibt distributionsabhängige
spezifische implizite Abhängigkeiten, die normalerweise in der
Bauumgebung benötigt werden, die sogenannte
„Build-Essential“-Paketgruppe.
- --rules-requires-root
- Berücksichtigt das Feld Rules-Requires-Root
nicht, sondern fällt auf den alten Vorgabewert zurück (seit
Dpkg 1.19.1).
-
-nc, --no-pre-clean
- Bereinigt den Quellbaum vor dem Bau nicht (lange Option
seit Dpkg 1.18.8). Impliziert -b, falls ansonsten nichts aus
-F, -g, -G, -B, -A oder -S
gewählt wurde. Impliziert -d mit -S (seit Dpkg
1.18.0).
- --pre-clean
- Bereinigt den Quellbaum vor dem Bau (seit Dpkg 1.18.8).
Dies ist das Standardverhalten.
-
-tc, --post-clean
- Bereinigt den Quellbaum (verwendet root-werde-Befehl
debian/rules clean), nachdem das Paket gebaut wurde (lange Option
seit Dpkg 1.18.8).
- --no-post-clean
- Bereinigt den Quellbaum nicht, nachdem das Paket gebaut
wurde (seit Dpkg 1.19.1). Dies ist das Standardverhalten.
- --sanitize-env
- Bereinigt die Bauumgebung (seit Dpkg 1.20.0). Dies setzt
die Umgebungsvariablen, die Umask und alle anderen Prozessattribute, die
den Bau von Paketen negativ beeinflussen könnten, zurück
oder entfernt sie. Da der offizielle Einstiegspunkt zum Bau von Paketen
debian/rules ist, können sich Pakete nicht darauf verlassen,
dass diese Einstellungen erfolgt sind, und sollten daher funktionieren,
selbst wenn dies nicht der Fall ist. Was genau bereinigt wird,
hängt vom Lieferanten ab.
-
-r,
--root-command=root-werde-Befehl
- Wenn dpkg-buildpackage einen Teil des Bauprozesses
als Root ausführen muss, stellt es dem auszuführenden Befehl
den root-werde-Befehl voran, falls dieser angegeben wurde (lange
Option seit Dpkg 1.18.8). Andernfalls wird standardmäßig
fakeroot verwendet, falls es vorhanden ist. Der
root-werde-Befehl sollte der Name des Programmes im PATH
sein und wird als Argumente den Namen des wirklich auszuführenden
Befehles und dessen Argumente erhalten. root-werde-Befehl kann
Parameter enthalten (die durch Leerzeichen voneinander getrennt sein
müssen), aber keine Shell-Metazeichen. Typischerweise ist der
root-werde-Befehl fakeroot, sudo, super oder
really. su ist nicht geeignet, da es nur die Shell des
Benutzers mit -c aufrufen kann, anstatt Argumente individuell zur
Ausführung des Programms zu übergeben.
-
-R, --rules-file=rules-Datei
- Der Bau eines Debian-Pakets erfolgt gewöhnlich durch
Aufruf von debian/rules als ein Befehl mit mehreren
Standardparametern (seit Dpkg 1.14.17, lange Option seit Dpkg 1.18.8). Mit
dieser Option ist es möglich, einen anderen Programmaufruf zum Bau
des Paketes zu verwenden (es können durch Leerzeichen getrennte
Parameter angegeben werden). Alternativ kann die Standard-rules-Datei mit
einem anderen Make-Programm ausgeführt werden (zum Beispiel durch
die Verwendung von /usr/local/bin/make -f debian/rules als
rules-Datei).
-
--check-command=Prüfbefehl
- Befehl, der zum Prüfen der .changes-Datei
selbst und sämtlichen in der Datei referenzierten Artefakten
verwandt wird (seit Dpkg 1.17.6). Der Befehl sollte den Pfadnamen der
.changes als Argument erhalten. Dieser Befehl ist normalerweise
lintian.
-
--check-option=Opt
- Option Opt an den Prüfbefehl, der mit
DEB_CHECK_COMMAND oder --check-command angegeben wurde,
übergeben (seit Dpkg 1.17.6). Kann mehrfach verwandt werden.
-
--hook-Hook-Name=Hook-Befehl
- Setzt den angegebenen Shell-Code Hook-Befehl als den
Hook Hook-Name, der an den Zeitpunkten läuft, die in den
Ablaufschritten angegeben sind (seit Dpkg 1.17.6). Die Hooks werden immer
ausgeführt, selbst falls die folgende Aktion nicht
durchgeführt wird (außer beim Hook binary). Alle
Hooks werden in dem entpackten Quellverzeichnis ausgeführt.
Hinweis: Hooks können den Bauprozess beeinflussen und zu
Baufehlern führen, falls ihre Befehle fehlschlagen, was unerwartete
Folgen haben könnte. Passen Sie daher auf.
Die derzeit unterstützten Hook-Namen sind:
init preclean source build binary buildinfo changes postclean check sign
done
Der Hook-Befehl unterstützt die folgende
Ersetzungsformatzeichenkette, die vor seiner Ausführung angewandt
wird:
- %%
- Ein einzelnes %-Zeichen.
-
%a
- Ein logischer Wert (0 oder 1), der darstellt, ob die
folgende Aktion ausgeführt wird oder nicht.
-
%p
- Der Quellpaketname.
-
%v
- Die Quellpaket-Version.
-
%s
- Die Quellpaket-Version (ohne die Epoche).
-
%u
- Die Original- (Upstream-)Version.
-
--buildinfo-file=Dateiname
- Den Dateinamen für die erstellte
.buildinfo-Datei setzen (seit Dpkg 1.21.0).
-
--buildinfo-option=Opt
- Option Opt an dpkg-genbuildinfo weitergeben
(seit Dpkg 1.18.11). Kann mehrfach verwandt werden.
-
--sign-backend=Signatur-Backend
- Gibt eine OpenPGP-Backend-Schnittstelle an, die beim Aufruf
von sign-command verwandt wird (seit Dpkg 1.21.10).
Die Vorgabe ist auto, bei der das beste derzeit verfügbare
Backend verwandt wird. Die bestimmten unterstützten
OpenPGP-Backends in bevorzugter Reihenfolge sind:
-
sop (jede normgerechte zustandslose
OpenPGP-Implementierung)
-
sq (von Sequoia-PGP)
-
gpg (von GnuPG)
-
-p, --sign-command=Signaturbefehl
- Wenn dpkg-buildpackage ein OpenPGP-Backend-Befehl
zum Signieren einer Quellsteuerdatei ( .dsc) oder einer
.changes-Datei benötigt, wird es statt des
standardmäßigen oder automatisch erkannten Backend-Befehls
den Signaturbefehl ausführen (und dabei falls notwendig den
PATH durchsuchen) (lange Option seit Dpkg 1.18.8).
Signaturbefehl wird alle Argumente erhalten, die durch
--sign-backend definiert sind. Signaturbefehl sollte keine
Leerzeichen oder andere Metazeichen der Shell enthalten.
-
-k,
--sign-keyid=Schlüsselkennung
-
--sign-key=Schlüsselkennung
- Geben Sie eine OpenPGP-Schlüsselkennung (entweder
einen Fingerabdruck oder eine Benutzerkennung) für den geheimen
Schlüssel zur Signatur von Paketen an ( --sign-key seit Dpkg
1.18.8, --sign-keyid seit Dpkg 1.21.10).
-
--sign-keyfile=Schlüsseldatei
- Geben Sie eine OpenPGP-Schlüsseldatei, die
den geheimen Schlüssel zur Signatur von Paketen enthält, an
(seit Dpkg 1.21.10).
Hinweis: Aus Sicherheitsgründen wird die Schlüsseldatei
am besten mit einem Passwort gesperrt.
-
-us, --unsigned-source
- Das Quellpaket nicht signieren (lange Option seit Dpkg
1.18.8).
-
-ui, --unsigned-buildinfo
- Die .buildinfo-Datei nicht signieren (seit Dpkg
1.18.19).
-
-uc, --unsigned-changes
- Die .changes- und die .buildinfo Datei nicht
signieren (lange Option seit Dpkg 1.18.8).
- --no-sign
- Keine Datei signieren, das schließt Quellpakete, die
Datei .buildinfo und die Datei .changes ein (seit Dpkg
1.18.20).
- --force-sign
- Das Signieren der entstehenden Dateien erzwingen (seit Dpkg
1.17.0), unabhängig von -us, --unsigned-source,
-ui, --unsigned-buildinfo, -uc,
--unsigned-changes oder anderen internen Heuristiken.
- -sn
- -ss
- -sA
- -sk
- -su
- -sr
- -sK
- -sU
- -sR
-
-i, --diff-ignore[=regex]
-
-I, --tar-ignore[=Muster]
-
-z, --compression-level=Stufe
-
-Z, --compression=Komprimierer
- Wird unverändert an dpkg-source
weitergegeben. Lesen Sie dessen Handbuchseite.
-
--source-option=Opt
- Option Opt an dpkg-source weitergeben (seit
Dpkg 1.15.6). Kann mehrfach verwandt werden.
-
--changes-file=Dateiname
- Den Dateinamen für die erstellte
.changes-Datei setzen (seit Dpkg 1.21.0).
-
--changes-option=Opt
- Option Opt an dpkg-genchanges weitergeben
(seit Dpkg 1.15.6). Kann mehrfach verwandt werden.
-
--admindir=Verz
-
--admindir Verz
- Ändert den Ablageort der dpkg-Datenbank (seit
Dpkg 1.14.0). Der Standardort ist /var/lib/dpkg.
-
-?, --help
- Zeigt einen Hinweis zum Aufruf und beendet das
Programm.
- --version
- Gibt die Version aus und beendet das Programm.
- DEB_CHECK_COMMAND
- Falls gesetzt, wird er zum Prüfen der
.changes-Datei verwandt (seit Dpkg 1.17.6). Wird durch die Option
--check-command außer Kraft gesetzt.
- DEB_SIGN_KEYID
- Falls gesetzt, wird er zum Signieren der .changes-,
.buildinfo- und .dsc-Dateien verwandt (seit Dpkg 1.17.2).
Wird durch die Option --sign-key außer Kraft gesetzt.
- DEB_SIGN_KEYFILE
- Falls gesetzt, wird er zum Signieren der .changes-,
.buildinfo- und .dsc-Dateien verwandt (seit Dpkg 1.21.10).
Wird durch die Option --sign-keyfile außer Kraft
gesetzt.
- DEB_BUILD_OPTIONS
- Falls gesetzt, wird sie eine durch Leerraumzeichen
getrennte Liste von Optionen enthalten, die den Bauprozess in
debian/rules und das Verhalten einiger Dpkg-Befehle beeinflussen
könnten.
Mit nocheck wird die Variable DEB_CHECK_COMMAND ignoriert. Mit
parallel=N werden die parallelen Aufträge auf
N gesetzt, was durch die Option --jobs-try außer
Kraft gesetzt wird.
- DEB_BUILD_PROFILES
- Falls gesetzt, wird es als aktive(s) Bau-Profil(e)
für das zu bauende Paket verwandt (seit Dpkg 1.17.2). Es ist eine
durch Leerzeichen getrennte Liste von Profilnamen. Wird durch die Option
-P außer Kraft gesetzt.
- DPKG_COLORS
- Setzt den Farbmodus (seit Dpkg 1.18.5). Die derzeit
unterstützten Werte sind: auto (Vorgabe), always und
never.
- DPKG_NLS
- Falls dies gesetzt ist, wird es zur Entscheidung, ob Native
Language Support, auch als Unterstützung für
Internationalisierung (oder i18n) bekannt, aktiviert wird (seit Dpkg
1.19.0). Die akzeptierten Werte sind: 0 und 1
(Vorgabe).
Selbst falls
dpkg-buildpackage einige Variablen exportiert, sollte
debian/rules sich nicht auf ihr Vorhandensein verlassen, sondern
stattdessen die entsprechende Schnittstelle verwenden, um die
benötigten Werte abzufragen, da diese Datei der Haupteintrittspunkt
für den Bau von Paketen ist und es möglich sein soll, sie
unabhängig aufrufen zu können.
- DEB_BUILD_*
- DEB_HOST_*
- DEB_TARGET_*
- Beim Aufruf von dpkg-architecture werden die
Parameter von -a und -t durchgereicht. Jede Variable, die
von seiner Option -s ausgegeben wird, wird in die Bauumgebung
integriert.
- DEB_RULES_REQUIRES_ROOT
- Diese Variable wird auf den Wert, der aus dem Feld
Rules-Requires-Root oder von der Befehlszeile erhalten wird,
gesetzt. Wenn gesetzt, wird er ein gültiger Wert für das
Feld Rules-Requires-Root sein. Er wird dazu verwandt,
debian/rules anzugeben, ob die Spezifikation
rootless-builds.txt unterstützt wird.
- DEB_GAIN_ROOT_CMD
- Diese Variable wird auf root-werde-Befehl gesetzt,
wenn das Feld Rules-Requires-Root auf einen von no und
binary-targets verschiedenen Wert gesetzt wird.
- SOURCE_DATE_EPOCH
- Diese Variable wird auf den Unix-Zeitstempel seit der
Epoche des letzten Eintrags in debian/changelog gesetzt, falls sie
noch nicht definiert ist.
- /etc/dpkg/buildpackage.conf
- Systemweite Konfigurationsdatei
-
$XDG_CONFIG_HOME/dpkg/buildpackage.conf
oder
-
$HOME/.config/dpkg/buildpackage.conf
- Benutzerkonfigurationsdatei
Zwischen Dpkg 1.14.17 and 1.16.1 exportierte
dpkg-buildpackage
Kompilierschalter (
CFLAGS,
CXXFLAGS,
FFLAGS,
CPPFLAGS und
LDFLAGS) mit Werten, die von
dpkg-buildflags
geliefert wurden. Dies ist nicht mehr der Fall.
dpkg-buildpackage verwendet seit Dpkg 1.16.2 die Ziele
build-arch
und
build-indep. Diese Ziele sind daher verpflichtend. Um aber
Baufehler bei existierenden Paketen zu vermeiden und um den Übergang zu
erleichtern, (und seit Dpkg 1.18.8 falls das Quellpaket nicht sowohl
architekturabhängige wie -unabhängige Binärpakete baut)
wird es auf das Ziel
build zurückfallen, falls
make -f
debian/rules -qn Bauziel den Rückgabewert 2 liefert.
Es sollte möglich sein, Leerzeichen und Metazeichen der Shell und
Anfangsargumente für
root-werde-Befehl und
Signaturbefehl
anzugeben.
/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).
Die deutsche Übersetzung wurde 2004, 2006-2023 von Helge Kreutzmann
<
[email protected]>, 2007 von Florian Rehnisch <
[email protected]>
und 2008 von Sven Joachim <
[email protected]> angefertigt. Diese
Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public
License Version 2 oder neuer für die Kopierbedingungen. Es gibt KEINE
HAFTUNG.