KONFIGURATION¶
Die folgenden Konfigurationsmöglichkeiten werden für
den rpm(8)-Bauvorgang unterstützt, der normalerweise
über den Befehl rpmbuild(8) aufgerufen wird.
Orte und Dateinamen¶
%_builddir VERZEICHNIS
Das Verzeichnis, in dem die Bauverzeichnisse pro Paket
beim Erstellen abgelegt werden.
%_fileattrsdir VERZEICHNIS
Das Verzeichnis, in dem sich die
Dateiklassifiziererkonfiguration befindet.
%_rpmdir VERZEICHNIS
Das Verzeichnis, in dem neu gebaute Binärpakete
gespeichert werden.
%_rpmfilename VORLAGE
Das Abfrageformat für den Dateinamen des
ausgegebenen Binärpakets, das beim Erstellen von Binärpaketen
verwendet wird, wie in
rpm-queryformat(7) beschrieben. Der Dateiname
wird relativ zu
%_rpmdir betrachtet.
%_sourcedir VERZEICHNIS
Das Verzeichnis, in dem beim Bau des Pakets die Quellen
und Patches gesucht werden.
%_srcrpmdir VERZEICHNIS
Das Verzeichnis, in dem neu gebaute Quellpakete
gespeichert werden.
%_topdir VERZEICHNIS
Das oberste Verzeichnis, unter dem sich
standardmäßig die Paketbauverzeichnisse befinden.
Hierbei handelt es sich um eine spezielle Gruppe von Makros, die
sich, wenn sie definiert sind, so verhalten, als ob die entsprechende
Deklaration in einer Spec-Datei verwendet worden wäre. Dadurch
können die Werte geändert werden, ohne Tausende von
Spec-Dateien zu ändern.
%bugurl URL
Konfigurierbare Bug-URL, identisch mit der
BugURL:-Deklaration in einer Spec-Ddatei. Falls festgelegt, sollte sie
auf eine Website verweisen, auf der nach bestehenden Problemen für
dieses Paket gesucht und neue Probleme gemeldet werden können.
%distribution ZEICHENKETTE
Konfigurierbare Distributionsinformationen, identisch mit
der Distribution:-Deklaration in einer Spec-Datei.
%disturl URL
Konfigurierbare Distributions-URL, identisch mit der
DistURL:-Deklaration in einer Spec-Datei.
%disttag ZEICHENKETTE
Konfigurierbare Distributions-Deklaration, identisch mit
der DistTag:-Deklaration in einer Spec-Datei.
%modularitylabel ZEICHENKETTE
Konfigurierbare Modularitätsbezeichnung, identisch
mit der ModularityLabel:-Deklaration in einer Spec-Datei.
%packager ZEICHENKETTE
Konfigurierbare Paketierer-Information, identisch mit der
Packager:-Deklaration in einer Spec-Datei.
%translationurl URL
Konfigurierbare Übersetzungs-URL, identisch mit
der TranslationURL:-Deklaration in einer Spec-Datei.
%upstreamreleases URL
Konfigurierbare URL für die
Überprüfung auf neuere Upstream-Veröffentlichungen,
identisch mit der Upstream-Releases:-Deklaration in einer
Spec-Datei.
%vendor ZEICHENKETTE
Konfigurierbare Anbieter-Information, identisch mit der
Vendor:-Deklaration in einer Spec-Datei.
Bauvorgang¶
Diese Einstellungen wirken sich auf verschiedene Aspekte des
Bauvorgangs aus und können dazu führen, dass ein Bauvorgang
fehlschlägt oder erfolgreich ist, haben jedoch keinen direkten
Einfluss auf die erstellten Pakete.
%_build_pkgcheck AUSFÜHRBARE-DATEI
Ein Programm, das für jedes erfolgreich erstellte
und geschriebene Binärpaket aufgerufen wird, z.B. rpmlint. Der
Pfad zum Paket wird dem Programm als Befehlszeilenargument
übergeben.
%_build_pkgcheck_set AUSFÜHRBARE-DATEI
Ein Programm, das für den gesamten
Binärpaketsatz nach einem erfolgreichen Bau aufgerufen wird, zum
Beispiel rpmlint. Die Pfade zum Paketsatz werden dem Programm als
Befehlszeilenargumente übergeben.
%_build_pkgcheck_srpm AUSFÜHRBARE-DATEI
Ein Programm, das für jedes erfolgreich gebaute
und geschriebene Quell-RPM-Paket aufgerufen wird, zum Beispiel rpmlint.
Der Pfad zum Paket wird dem Programm als Befehlszeilenargument
übergeben.
%_default_patch_flags ZEICHENKETTE
Menge der Standardoptionen für alle
%patch-Anwendungen.
%_default_patch_fuzz ZAHL
Vorgegebene Unschärfestufe für die
Patch-Anwendung in einer Spec-Datei. Weitere Details finden Sie in
patch(1).
%_smp_ncpus_max ZAHL
Eine Obergrenze für die maximale Anzahl parallel
zu verwendender CPUs während der Paketerstellung. Null bedeutet
unbegrenzt.
%_smp_nthread_max ZAHL
Eine Obergrenze für die maximale Anzahl parallel
zu verwendender Threads während der Paketerstellung. Null bedeutet
unbegrenzt.
%_smp_tasksize_proc ZAHL
Angenommene Taskgröße von Bauprozessen
(während der Kompilierung). Wird verwendet, um den Grad der
Parallelität basierend auf dem verfügbaren Speicher
anzupassen.
%_smp_tasksize_thread ZAHL
Angenommene Taskgröße von Threads
(während der Paketerstellung). Wird verwendet, um den Grad der
Parallelität basierend auf dem verfügbaren Speicher
anzupassen.
Paketerstellung¶
Diese Einstellungen wirken sich auf verschiedene Aspekte der
erstellten Binär- und Quellpakete aus.
%build_mtime_policy REGEL
Definiert, wie Dateizeitstempel in erstellten Paketen
behandelt werden. Durch die Festsetzung wird sichergestellt, dass der Wert den
Schwellwert nicht überschreitet.
- clamp_to_buildtime: Dateizeitstempel auf die Bauzeit des Pakets
festlegen.
- clamp_to_source_date_epoch: Dateizeitstempel werden an die
Umgebungsvariable SOURCE_DATE_EPOCH gebunden.
%source_date_epoch_from_changelog BOOLESCH
Legt fest, ob die Umgebungsvariable
SOURCE_DATE_EPOCH anhand des Zeitstempels des obersten
%changelog-Eintrags gesetzt werden soll.
%use_source_date_epoch_as_buildtime BOOLESCH
Legt fest, ob der Wert der Umgebungsvariablen
SOURCE_DATE_EPOCH als Bauzeitpunkt von Paketen verwendet werden
soll.
%_binary_filedigest_algorithm HASH-ALGORITHMUS
Der zum Erzeugen von Prüfsummen pro Datei von
Binärpaketen zu verwendende Algorithmus (auch Digests genannt). Die
unterstützten Werte finden Sie in
rpm-config(5).
%_binary_payload E/A-SCHALTER
Die E/A-Methode und Komprimierung, die zum Erstellen der
Nutzdaten von Binärpaketen verwendet werden sollen. Siehe
rpm-payloadflags(7).
%_buildhost RECHNERNAME
Verwendet den angegebenen
RECHNERNAMEN als
Paket-Erstellungsrechner, anstatt den Wert von
gethostname(2) zu
beziehen.
%_buildtime ZEITSTEMPEL
Verwendet den angegebenen
ZEITSTEMPEL als
Paket-Bauzeitpunkt, anstatt den Wert von
time(2) zu beziehen.
%_changelog_trimage ZEITSTEMPEL
Maximales Alter der behaltenen
Änderungsprotokolleinträge in Binärpaketen, relativ zum
neuesten vorhandenen Eintrag. Unix-Zeitstempelformat. Der Wert Null
deaktiviert die Kürzung nach Alter.
%_changelog_trimtime ZEITSTEMPEL
Eine alternative Methode für die Kürzung
des Änderungsprotokolls: Alle Änderungsprotokolleinträge,
die älter als der angegebene Zeitstempel sind, werden abgeschnitten.
Unix-Zeitstempelformat. Der Wert Null deaktiviert die Kürzung nach
Zeit.
%_docdir_fmt VORLAGE
Eine Vorlage für den Verzeichnisnamen der
Dokumentation pro Paket, d.h. die mit %doc paketierten Dateien.
%__docdir_path PFAD
Eine durch Kommata getrennte Liste von Verzeichnissen,
deren Inhalte immer als Dokumentation betrachtet werden sollen.
%_openpgp_autosign_id SCHLÜSSEL-ID
Die OpenPGP-ID oder der Fingerabdruck des
Schlüssels, der zum automatischen Signieren von Paketen nach einem
erfolgreichen Bauvorgang verwendet werden soll. Siehe auch
rpmsign(1).
%_rpmformat VERSION
Das zu erzeugende RPM-Paketformat. Folgende Werte werden
unterstützt:
- 4: RPM-Format Version 4
- 6: RPM-Format Version 6
%_source_filedigest_algorithm HASH-ALGORITHMUS
Der zum Erzeugen von Prüfsummen pro Datei (auch
Digests genannt) von Quell-RPM-Paketen zu verwendende Algorithmus. Die
unterstützten Werte finden Sie in
rpm-config(5).
%_source_payload
Die E/A-Methode und Komprimierung, die zum Erstellen der
Nutzdaten von Quell-RPM-Paketen verwendet werden sollen. Siehe
rpm-payloadflags(7).
%__gpg_reserved_space ZAHL
Die Anzahl der Bytes, die in den Signatur-Kopfdaten
für Signaturen reserviert werden sollen. Diese Reserve trägt
dazu bei, die Paketsignierung deutlich zu beschleunigen.
Debuginfo-Erstellung¶
Debuginfo-Unterpakete enthalten Informationen, die zum Debuggen
von Bauvorgängen mit Release-Angaben notwendig sind. Diese
Einstellungen bestimmen, ob Debuginfo-Pakete erstellt werden und welche
Aspekte der erzeugten Debug-Informationen relevant sind.
%_build_id_links MODUS
Definiert, wie und ob Build-ID-Links für
ELF-Dateien erzeugt werden. Die folgenden Einstellungen werden
unterstützt:
- none: Es werden keine Build-ID-Links erzeugt.
- alldebug: Erzeugt Build-ID-Links im Stil von RPM < 4.14, also
alles im Debuginfo-Paket.
- separate: Build-ID-Links werden in Binärpaketen
erstellt.
- compat: Wie separate, jedoch mit einem oder mehreren
Kompatibilitätslinks in den Debuginfo-Paketen.
%_debuginfo_subpackages BOOLESCH
Legt fest, ob rpm für jedes Unterpaket
separate Debuginfo-Pakete erstellen soll.
%_debugsources_packages BOOLESCH
Legt fest, ob rpm Debug-Quelldateien in ein
eigenes Unterpaket auslagern soll.
%_enable_debug_packages BOOLESCH
Legt fest, ob rpm Debuginfo-Unterpakete erzeugen
soll.
%_include_gdb_index BOOLESCH
Fügt einen
.gdb_index-Abschnitt in die
.debug-Dateien ein. Dafür ist es notwendig,
%_enable_debug_packages zu aktivieren. Außerdem muss
gdb-add-index(1) installiert sein.
%_include_minidebuginfo BOOLESCH
Fügt minimale Debug-Informationen in die erzeugten
Binärdateien ein. Dafür ist es notwendig,
%_enable_debug_packages zu aktivieren.
%_no_recompute_build_ids BOOLESCH
Deaktiviert die Neuberechnung von Build-IDs. Dies kann
nicht zusammen mit %_unique_build_ids verwendet werden.
%_unique_build_ids BOOLESCH
Legt fest, ob Build-IDs beim Erzeugen von
Debuginfo-Paketen zwischen Paketversionen/Veröffentlichungen eindeutig
sein sollen.
%_unique_debug_names BOOLESCH
Legt fest, ob .debug-Dateien zwischen
Paketversion, Veröffentlichung und Architektur eindeutig sein sollen.
Dazu ist es notwendig, %_unique_build_ids zu aktivieren.
%_unique_debug_srcs BOOLESCH
Legt fest, ob die
/usr/debug/src/<Paket>-Verzeichnisse zwischen Paketversion,
Veröffentlichung und Architektur eindeutig sein sollen.
%__find_debuginfo AUSFÜHRBARE-DATEI
Der Ort des Debuginfo-Programms.
Abwärtskompatibilität¶
Diese Einstellungen berücksichtigen die
Abwärtskompatibilität mehrerer Jahrzehnte. Die meisten von
ihnen legen fest, ob ein bestimmtes Problem als Fehler oder nur als Warnung
gewertet wird. Manchmal sind sie auch nützlich, um Probleme
während der Paketerstellung vorübergehend zu umgehen.
%_binaries_in_noarch_packages_terminate_build
BOOLESCH
Gibt an, ob ELF-Binaries in
architekturunabhängigen (noarch-)Paketen einen Bauvorgang beenden
sollen.
%_duplicate_files_terminate_build BOOLESCH
Gibt an, ob Dateiduplikate im %files-Abschnitt
einen Bauvorgang beenden sollen.
%_empty_manifest_terminate_build BOOLESCH
Gibt an, ob eine leere %files-Manifestdatei einen
Bauvorgang beenden sollen.
%__find_provides AUSFÜHRBARE-DATEI
Die für die Erzeugung der Provides: eines
RPM-Pakets im Stil der Version 3.x zu verwendende ausführbare Datei.
Verwenden Sie dies nicht. Es ist veraltet und für die Entfernung
vorgesehen.
%__find_requires AUSFÜHRBARE-DATEI
Die für die Erzeugung der Requires: eines
RPM-Pakets im Stil der Version 3.x zu verwendende ausführbare Datei.
Verwenden Sie dies nicht. Es ist veraltet und für die Entfernung
vorgesehen.
%_missing_doc_files_terminate_build BOOLESCH
Legt fest, ob in einem Bauverzeichnis fehlende
%doc-Dateien einen Bauvorgang beenden sollen.
%_unpackaged_files_terminate_build BOOLESCH
Gibt an, ob nicht paketierte Dateien in einer
Erstellungswurzel (BuildRoot) einen Bauvorgang beenden sollen.
%_nonzero_exit_pkgcheck_terminate_build BOOLEAN
Legt fest, ob der Paketbauvorgang fehlschlagen soll, wenn
das Paketprüfprogramm (sofern definiert) einen Fehler
zurückliefert. Siehe die %_build_pkgcheck_*-Makros.
%_use_internal_dependency_generator BOOLESCH
Falls aktiviert, werden Abhängigkeiten im Stil der
Version 3.x von rpm erzeugt. Verwenden Sie dies nicht. Es ist veraltet
und für die Entfernung vorgesehen.
%_use_weak_usergroup_deps BOOLESCH
Wenn aktiviert, werden die Abhängigkeiten von
user() und group() in Empfehlungen (Recommends) umgewandelt. Nützlich
beim Übergang zur sysusers.d-basierten
Benutzer-/Gruppenverwaltung.
%_wrong_version_format_terminate_build BOOLESCH
Legt fest, ob ein ungültiges Versionsformat in
Abhängigkeiten usw. einen Bauvorgang beenden soll.