.\" Automatically generated by Pod::Man 4.10 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "debhelper 7" .TH debhelper 7 "2019-02-23" "12.1.1" "Debhelper" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" debhelper \- die Debhelper\-Werkzeugsammlung .SH "ÜBERSICHT" .IX Header "ÜBERSICHT" \&\fBdh_\fR\fI*\fR [\fB\-v\fR] [\fB\-a\fR] [\fB\-i\fR] [\fB\-\-no\-act\fR] [\fB\-p\fR\fIPaket\fR] [\fB\-N\fR\fIPaket\fR] [\fB\-P\fR\fItemporäres_Verzeichnis\fR] .SH "BESCHREIBUNG" .IX Header "BESCHREIBUNG" Debhelper wird benutzt, um Ihnen beim Bau eines Debian-Pakets zu helfen. Die Philosophie hinter Debhelper ist, eine kleine, einfach und leicht verständliche Werkzeugsammlung bereitzustellen, die in \fIdebian/rules\fR verwandt wird, um verschiedene geläufige Aspekte der Paketerstellung zu automatisieren. Dies bedeutet für Sie als Paketierer weniger Arbeit. Außerdem heißt das zu einem gewissen Grad, dass diese Werkzeuge geändert werden können, wenn sich die Debian-Richtlinie ändert und Pakete, die sie heranziehen, nur neu gebaut werden müssen, um ihr zu entsprechen. .PP Eine typische \fIdebian/rules\fR\-Datei, die Debhelper benutzt, wird mehrere Debhelper-Befehle hintereinander aufrufen oder \fBdh\fR\|(1) verwenden, um diesen Prozess zu automatisieren. Beispiele für Regeldateien, die Debhelper einsetzen, liegen in \fI/usr/share/doc/debhelper/examples/\fR. .PP Um ein neues Debian-Paket unter Benutzung von Debhelper zu erstellen, können Sie einfach eine Beispielregeldatei kopieren und manuell bearbeiten. Oder Sie können das Paket \fBdh-make\fR ausprobieren, das einen dh_make\-Befehl enthält, der den Prozess teilweise automatisiert. Für eine behutsamere Einführung enthält das Paket \&\fBmaint-guide\fR ein Lernprogramm, wie Sie Ihr erstes Paket unter Verwendung von Debhelper erstellen. .PP Except where tool explicitly denotes otherwise, all of the debhelper tools assumes that they run from root directory of an unpacked source package. This is so they can locate find files like \fIdebian/control\fR when needed. .SH "DEBHELPER-BEFEHLE" .IX Header "DEBHELPER-BEFEHLE" Hier ist die Liste der Debhelper-Befehle, die Sie benutzen können. Zusätzliche Dokumentation finden Sie in deren Handbuchseiten. .IP "\fBdh_auto_build\fR\|(1)" 4 .IX Item "dh_auto_build" baut ein Paket automatisch .IP "\fBdh_auto_clean\fR\|(1)" 4 .IX Item "dh_auto_clean" räumt nach dem Bauen automatisch auf .IP "\fBdh_auto_configure\fR\|(1)" 4 .IX Item "dh_auto_configure" konfiguriert das Paket automatisch vor dem Bauen. .IP "\fBdh_auto_install\fR\|(1)" 4 .IX Item "dh_auto_install" führt »make install« oder Ähnliches aus .IP "\fBdh_auto_test\fR\|(1)" 4 .IX Item "dh_auto_test" führt automatisch die Test-Suites eines Programms aus .IP "\fBdh_bugfiles\fR\|(1)" 4 .IX Item "dh_bugfiles" installiert Dateien zur Anpassung von Fehlerberichten in Bauverzeichnisse von Paketen. .IP "\fBdh_builddeb\fR\|(1)" 4 .IX Item "dh_builddeb" baut binäre Debian-Pakete .IP "\fBdh_clean\fR\|(1)" 4 .IX Item "dh_clean" räumt die Bauverzeichnisse des Pakets auf .IP "\fBdh_compress\fR\|(1)" 4 .IX Item "dh_compress" komprimiert Dateien und feste symbolische Links in Bauverzeichnissen von Paketen .IP "\fBdh_fixperms\fR\|(1)" 4 .IX Item "dh_fixperms" korrigiert Zugriffsrechte von Dateien in Bauverzeichnissen .IP "\fBdh_gencontrol\fR\|(1)" 4 .IX Item "dh_gencontrol" erzeugt und installiert die Datei »control« .IP "\fBdh_icons\fR\|(1)" 4 .IX Item "dh_icons" aktualisiert die Zwischenspeicher von Freedesktop-Symbolen .IP "\fBdh_install\fR\|(1)" 4 .IX Item "dh_install" installiert Dateien in Bauverzeichnisse von Paketen .IP "\fBdh_installcatalogs\fR\|(1)" 4 .IX Item "dh_installcatalogs" installiert und registriert SGML-Kataloge .IP "\fBdh_installchangelogs\fR\|(1)" 4 .IX Item "dh_installchangelogs" installiert Änderungsprotokolle (»changelogs«) in die Paketbauverzeichnisse .IP "\fBdh_installcron\fR\|(1)" 4 .IX Item "dh_installcron" installiert Cron-Skripte in etc/cron.* .IP "\fBdh_installdeb\fR\|(1)" 4 .IX Item "dh_installdeb" installiert Dateien in das Verzeichnis \s-1DEBIAN.\s0 .IP "\fBdh_installdebconf\fR\|(1)" 4 .IX Item "dh_installdebconf" installiert Dateien, die von Debconf im Paketbauverzeichnis benutzt werden .IP "\fBdh_installdocs\fR\|(1)" 4 .IX Item "dh_installdocs" installiert Dokumentation in Paketbauverzeichnisse .IP "\fBdh_installemacsen\fR\|(1)" 4 .IX Item "dh_installemacsen" registriert ein Emacs-Add-on-Paket .IP "\fBdh_installexamples\fR\|(1)" 4 .IX Item "dh_installexamples" installiert Beispieldateien in die Paketbauverzeichnisse. .IP "\fBdh_installifupdown\fR\|(1)" 4 .IX Item "dh_installifupdown" installiert »if\-up«\- und »if\-down«\-Hooks. .IP "\fBdh_installinfo\fR\|(1)" 4 .IX Item "dh_installinfo" installiert Info-Dateien .IP "\fBdh_installinit\fR\|(1)" 4 .IX Item "dh_installinit" installiert Dienstinitialisierungsdateien in Paketbauverzeichnisse .IP "\fBdh_installlogcheck\fR\|(1)" 4 .IX Item "dh_installlogcheck" installiert Regeldateien zur Protokollprüfung in etc/logcheck/ .IP "\fBdh_installlogrotate\fR\|(1)" 4 .IX Item "dh_installlogrotate" installiert Konfigurationsdateien von Logrotate .IP "\fBdh_installman\fR\|(1)" 4 .IX Item "dh_installman" installiert Handbuchseiten in Paketbauverzeichnisse .IP "\fBdh_installmenu\fR\|(1)" 4 .IX Item "dh_installmenu" installiert Debian\-Menü\-Dateien in Paketbauverzeichnisse .IP "\fBdh_installmime\fR\|(1)" 4 .IX Item "dh_installmime" installiert MIME-Dateien in Paketbauverzeichnisse .IP "\fBdh_installmodules\fR\|(1)" 4 .IX Item "dh_installmodules" registriert Kernel-Module .IP "\fBdh_installpam\fR\|(1)" 4 .IX Item "dh_installpam" installiert \s-1PAM\s0 unterstützende Dateien .IP "\fBdh_installppp\fR\|(1)" 4 .IX Item "dh_installppp" installiert PPP\-ip\-up\- und \-ip\-down\-Dateien .IP "\fBdh_installudev\fR\|(1)" 4 .IX Item "dh_installudev" installiert udev-Regeldateien .IP "\fBdh_installwm\fR\|(1)" 4 .IX Item "dh_installwm" registriert einen Fenstermanager .IP "\fBdh_installxfonts\fR\|(1)" 4 .IX Item "dh_installxfonts" registriert X\-Schriften .IP "\fBdh_link\fR\|(1)" 4 .IX Item "dh_link" erzeugt symbolische Links in Paketbauverzeichnisse .IP "\fBdh_lintian\fR\|(1)" 4 .IX Item "dh_lintian" installiert außer Kraft setzende Dateien für Lintian in Paketbauverzeichnisse .IP "\fBdh_listpackages\fR\|(1)" 4 .IX Item "dh_listpackages" listet Binärpakete auf, auf die Dephelper einwirken wird .IP "\fBdh_md5sums\fR\|(1)" 4 .IX Item "dh_md5sums" erzeugt die Datei DEBIAN/md5sums .IP "\fBdh_movefiles\fR\|(1)" 4 .IX Item "dh_movefiles" verschiebt Dateien aus debian/tmp in Unterpakete .IP "\fBdh_perl\fR\|(1)" 4 .IX Item "dh_perl" berechnet Perl\-Abhängigkeiten und räumt nach MakeMaker auf .IP "\fBdh_prep\fR\|(1)" 4 .IX Item "dh_prep" führt Säuberungsaktionen als Vorbereitung des Baus von Binärpaketen durch .IP "\fBdh_shlibdeps\fR\|(1)" 4 .IX Item "dh_shlibdeps" berechnet Abhängigkeiten gemeinsam benutzter Bibliotheken .IP "\fBdh_strip\fR\|(1)" 4 .IX Item "dh_strip" entfernt Symbole aus Programmen, gemeinsam benutzten Bibliotheken und einigen statischen Bibliotheken .IP "\fBdh_systemd_enable\fR\|(1)" 4 .IX Item "dh_systemd_enable" aktiviert/deaktiviert Systemd-Unit-Dateien .IP "\fBdh_systemd_start\fR\|(1)" 4 .IX Item "dh_systemd_start" startet/stoppt oder startet Systemd-Unit-Dateien erneut .IP "\fBdh_testdir\fR\|(1)" 4 .IX Item "dh_testdir" Verzeichnis vor dem Bauen des Debian-Pakets testen .IP "\fBdh_usrlocal\fR\|(1)" 4 .IX Item "dh_usrlocal" migriert usr/local\-Verzeichnisse zu Betreuerskripten .SS "Missbilligte Befehle" .IX Subsection "Missbilligte Befehle" Ein paar Debhelper-Befehle sind veraltet und sollten nicht benutzt werden. .IP "\fBdh_gconf\fR\|(1)" 4 .IX Item "dh_gconf" install GConf defaults files and register schemas (deprecated) .IP "\fBdh_installmanpages\fR\|(1)" 4 .IX Item "dh_installmanpages" Handbuchseiteninstallationsprogramm im alten Stil (veraltet) .SS "Weitere Befehle" .IX Subsection "Weitere Befehle" Falls ein Programmname mit \fBdh_\fR beginnt und das Programm nicht auf obiger Liste steht, dann ist es nicht Teil des Debhelper-Pakets, sollte aber trotzdem wie die anderen auf dieser Seite beschriebenen Programme funktionieren. .SH "DEBHELPER-KONFIGURATIONSDATEIEN" .IX Header "DEBHELPER-KONFIGURATIONSDATEIEN" Viele Debhelper-Befehle machen von den Dateien in \fIdebian/\fR Gebrauch, um zu steuern, was sie tun. Neben den üblichen \fIdebian/changelog\fR und \&\fIdebian/control\fR, die in allen Paketen enthalten sind, nicht nur in denen, die Debhelper benutzen, können einige zusätzliche Dateien verwandt werden, um das Verhalten bestimmter Debhelper-Befehle zu konfigurieren. Diese Dateien heißen üblicherweise debian/\fIPaket\fR.foo (wobei \fIPaket\fR natürlich durch das Paket ersetzt wird, auf das es sich auswirkt). .PP \&\fBdh_installdocs\fR benutzt beispielsweise Dateien mit dem Namen \&\fIdebian/package.docs\fR, um die Dokumentationsdateien aufzulisten, die es installieren wird. Lesen Sie die Handbuchseiten der einzelnen Befehle, um Einzelheiten über die Namen und Formate der Dateien zu erhalten, die sie verwenden. Im Allgemeinen werden diese Dateien Dateien auflisten, auf die sie einwirken, eine Datei pro Zeile. Einige Programme in Debhelper bedienen sich Paaren von Dateien und Zielen oder etwas kompiziertere Formate. .PP Note for the first (or only) binary package listed in \fIdebian/control\fR, debhelper will use \fIdebian/foo\fR when there's no \fIdebian/\fIpackage\fI.foo\fR file. However, it is often a good idea to keep the \fI\fIpackage\fI.\fR prefix as it is more explicit. The primary exception to this are files that debhelper by default installs in every binary package when it does not have a package prefix (such as \fIdebian/copyright\fR or \fIdebian/changelog\fR). .PP In einigen seltenen Fällen möchten Sie möglicherweise unterschiedliche Versionen dieser Dateien für unterschiedliche Architekturen oder Betriebssysteme haben. Falls Dateien mit den Namen debian/\fIPaket\fR.foo.\fI\s-1ARCHITEKTUR\s0\fR oder debian/\fIPaket\fR.foo.\fI\s-1BETRIEBSSYSTEM\s0\fR existieren, wobei \fI\s-1ARCHITEKTUR\s0\fR und \&\fI\s-1BETRIEBSSYSTEM\s0\fR der Ausgabe von »\fBdpkg-architecture \-qDEB_HOST_ARCH_OS\fR« entsprechen, dann werden sie gegenüber anderen, allgemeineren Dateien, bevorzugt. .PP Meist werden diese Konfigurationsdateien benutzt, um verschiedene Typen von Dateien anzugeben – zu installierende Dokumentations\- oder Beispieldateien, Dateien zum Verschieben und so weiter. Wenn es in Fällen wie diesem zweckmäßig ist, können Sie die Standardplatzhalterzeichen der Shell in den Dateien verwenden (\fB?\fR, \fB*\fR und \fB[\fR\fI..\fR\fB]\fR\-Zeichenklassen). Sie können außerdem Kommentare in diese Dateien einfügen; Zeilen, die mit \fB#\fR beginnen, werden ignoriert. .PP The syntax of these files is intentionally kept very simple to make them easy to read, understand, and modify. .SS "Executable debhelper config files" .IX Subsection "Executable debhelper config files" If you need additional flexibility, many of the debhelper tools (e.g. \fBdh_install\fR\|(1)) support executing a config file as a script. .PP To use this feature, simply mark the config file as executable (e.g. \fBchmod +x debian/\f(BIpackage\fB.install\fR) and the tool will attempt to execute it and use the output of the script. In many cases, you can use \&\fBdh\-exec\fR\|(1) as interpreter of the config file to retain most of the original syntax while getting the additional flexibility you need. .PP When using executable debhelper config files, please be aware of the following: .IP "\(bu" 4 The executable config file \fBmust\fR exit with success (i.e. its return code should indicate success). .IP "\(bu" 4 The output will be used exactly as it is. Notably, debhelper will \fInot\fR expand wildcards or strip comments in the output. .PP If you need the package to build on a file system where you cannot disable the executable bit, then you can use \fBdh\-exec\fR\|(1) and its \fBstrip-output\fR script. .SH "GEMEINSAM BENUTZTE DEBHELPER-OPTIONEN" .IX Header "GEMEINSAM BENUTZTE DEBHELPER-OPTIONEN" Die folgenden Befehlszeilenoptionen werden von allen Debhelper-Programmen unterstützt. .IP "\fB\-v\fR, \fB\-\-verbose\fR" 4 .IX Item "-v, --verbose" Detailreicher Modus: zeigt alle Befehle, die das Paketbauverzeichnis ändern .IP "\fB\-\-no\-act\fR" 4 .IX Item "--no-act" tut nicht wirklich etwas. Falls es mit \-v benutzt wird, wird als Ergebnis ausgegeben, was der Befehl getan hätte. .IP "\fB\-a\fR, \fB\-\-arch\fR" 4 .IX Item "-a, --arch" wirkt sich auf architekturabhängige Pakete aus, die für die Architektur \&\fB\s-1DEB_HOST_ARCH\s0\fR gebaut werden sollen. .IP "\fB\-i\fR, \fB\-\-indep\fR" 4 .IX Item "-i, --indep" wirkt sich auf alle architekturunabhängigen Pakete aus. .IP "\fB\-p\fR\fIPaket\fR, \fB\-\-package=\fR\fIPaket\fR" 4 .IX Item "-pPaket, --package=Paket" wirkt sich auf das Paket mit Namen \fIPaket\fR aus. Diese Option kann mehrfach angegeben werden, damit Debhelper mit einer Zusammenstellung von Paketen arbeitet. .IP "\fB\-s\fR, \fB\-\-same\-arch\fR" 4 .IX Item "-s, --same-arch" missbilligter Alias von \fB\-a\fR. .Sp This option is removed in compat 12. .IP "\fB\-N\fR\fIPaket\fR, \fB\-\-no\-package=\fR\fIPaket\fR" 4 .IX Item "-NPaket, --no-package=Paket" verhindert Auswirkungen auf das angegebene Paket, sogar wenn die Optionen \&\fB\-a\fR, \fB\-i\fR oder \fB\-p\fR das Paket als zu verarbeiten auflisten. .IP "\fB\-\-remaining\-packages\fR" 4 .IX Item "--remaining-packages" wirkt sich nicht auf die Pakete aus, auf die sich dieser Debhelper-Befehl bereits ausgewirkt hat (d.h. falls der Befehl im Debhelper-Protokoll des Pakets auftaucht). Falls Sie zum Beispiel den Befehl mit speziellen Optionen für nur ein paar Binärakete aufrufen müssen, geben Sie diese Option beim letzten Aufruf des Befehls an, um die restlichen Pakete mit Standardeinstellungen zu verarbeiten. .IP "\fB\-\-ignore=\fR\fIDatei\fR" 4 .IX Item "--ignore=Datei" ignoriert die angegebene Datei. Dies ist sinnvoll, falls \fIdebian/\fR eine Debhelper-Konfigurationsdatei enthält, auf die ein Debhelper-Befehl nicht einwirken soll. Beachten Sie, dass \fIdebian/compat\fR, \fIdebian/control\fR und \&\fIdebian/changelog\fR nicht ignoriert werden können, andererseits sollte es nie einen Grund geben, diese Dateien zu ignorieren. .Sp Falls die Originalautoren zum Beispiel ein \fIdebian/init\fR liefern, von dem Sie nicht wünschen, dass \fBdh_installinit\fR es installiert, benutzen Sie \&\fB\-\-ignore=debian/init\fR .IP "\fB\-P\fR\fItemporäres_Verzeichnis\fR, \fB\-\-tmpdir=\fR\fItemporäres_Verzeichnis\fR" 4 .IX Item "-Ptemporäres_Verzeichnis, --tmpdir=temporäres_Verzeichnis" benutzt \fItemporäres_Verzeichnis\fR als Bauverzeichnis des Pakets. Voreinstellung ist debian/\fIPaket\fR. .IP "\fB\-\-mainpackage=\fR\fIPaket\fR" 4 .IX Item "--mainpackage=Paket" Diese selten benutzte Option ändert, welches Paket Debhelper als »Hauptpaket« ansieht, sprich das erste in \fIdebian/control\fR aufgeführte und das, für das \fIdebian/foo\fR\-Dateien, statt der üblichen \&\fIdebian/Paket.foo\fR\-Dateien, verwandt werden können. .IP "\fB\-O=\fR\fIOption\fR|\fIBündel\fR" 4 .IX Item "-O=Option|Bündel" Dies wird von \fBdh\fR\|(1) verwandt, wenn benutzerdefinierte Optionen an alle von ihm ausgeführten Befehle weitergereicht werden. Falls der Befehl die angegebene Option oder das Bündel von Optionen unterstützt, kommt er zum Tragen. Falls der Befehl (oder irgend ein Teil eines Optionenbündels) den Befehl nicht unterstützt, wird er ignoriert. .SH "HÄUFIGE DEBHELPER-OPTIONEN" .IX Header "HÄUFIGE DEBHELPER-OPTIONEN" Die folgende Befehlszeile wird von einigen Debhelper-Programmen unterstützt. Eine vollständige Erklärung, was jede Option tut, finden Sie in den Handbuchseiten jedes einzelnen Programms. .IP "\fB\-n\fR" 4 .IX Item "-n" verändert keine \fIpostinst\fR\-, \fIpostrm\fR\- etc. Skripte .IP "\fB\-X\fR\fIElement\fR, \fB\-\-exclude=\fR\fIElement\fR" 4 .IX Item "-XElement, --exclude=Element" Exclude an item from processing. This option may be used multiple times, to exclude more than one thing. The \fIitem\fR is typically part of a filename, and any file containing the specified text will be excluded. .IP "\fB\-A\fR, \fB\-\-all\fR" 4 .IX Item "-A, --all" bewirkt, dass Dateien oder andere Elemente, die auf der Befehlszeile angegeben wurden, sich in \s-1ALLEN\s0 entsprechenden Paketen auswirken, nicht nur im ersten. .SH "BAUSYSTEMOPTIONEN" .IX Header "BAUSYSTEMOPTIONEN" Die folgenden Befehlszeilenoptionen werden von allen \&\fBdh_auto_\fR\fI*\fR\-Debhelper\-Ptogrammen unterstützt. Diese Programme unterstützen eine Vielzahl von Bausystemen und bestimmen normalerweise heuristisch, welches benutzt werden soll und wie es verwendet wird. Sie können diese Befehlszeilenoptionen nutzen, um das Standardverhalten zu ändern. Typischerweise werden sie an \fBdh\fR\|(1) übergeben, das sie dann an all die \fBdh_auto_\fR\fI*\fR\-Programme übergibt. .IP "\fB\-S\fR\fIBausystem\fR, \fB\-\-buildsystem=\fR\fIBausystem\fR" 4 .IX Item "-SBausystem, --buildsystem=Bausystem" erzwingt die Benutzung des angegebenen \fIBausystem\fRs, anstatt zu versuchen, automatisch eins auszuwählen, das für das Paket geeignet sein könnte. .IP "\fB\-D\fR\fIVerzeichnis\fR, \fB\-\-sourcedirectory=\fR\fIVerzeichnis\fR" 4 .IX Item "-DVerzeichnis, --sourcedirectory=Verzeichnis" geht davon aus, dass der Quellverzeichnisbaum des Originalpakets im angegebenen \fIVerzeichnis\fR, anstatt auf der obersten Verzeichnisebene des Debian-Quellpaketverzeichnisbaums, liegt. .IP "\fB\-B\fR[\fIVerzeichnis\fR], \fB\-\-builddirectory=\fR[\fIVerzeichnis\fR]" 4 .IX Item "-B[Verzeichnis], --builddirectory=[Verzeichnis]" aktiviert das Bauen aus dem Quelltext und benutzt das angegebene \&\fIVerzeichnis\fR] als Bauverzeichnis. Falls der Parameter \fIVerzeichnis\fR] weggelassen wurde, wird ein Vorgabebauverzeichnis ausgewählt. .Sp Falls diese Option nicht angegeben ist, wird standardmäßig in der Quelle gebaut, falls das Bausystem nicht das Bauen außerhalb des Quellverzeichnisbaums erfordert oder bevorzugt. In einem solchen Fall wird ein Standardbauverzeichnis benutzt, selbst wenn \fB\-\-builddirectory\fR angegeben wurde. .Sp Falls das Bausystem das Bauen außerhalb des Quellverzeichnisbaums bevorzugt, aber das Bauen innerhalb der Quelle immer noch erlaubt, kann Letzteres wieder aktiviert werden, indem ein Bauverzeichnispfad übergeben wird, der dem Quellverzeichnispfad entspricht. .IP "\fB\-\-parallel\fR, \fB\-\-no\-parallel\fR" 4 .IX Item "--parallel, --no-parallel" prüft, ob parallel gebaut werden soll, falls das zugrundeliegende Bausystem dies unterstützt. Die Anzahl paralleler Aufgaben wird zur Bauzeit durch die Umgebungsvariable \fB\s-1DEB_BUILD_OPTIONS\s0\fR (\*(L"Debian-Richtlinie, Abschnitt 4.9.1\*(R") gesteuert, Sie könnte außerdem Gegenstand einer bausystemspezifischen Begrenzung sein. .Sp Falls keine der Optionen angegeben wurde, ist die Voreinstellung von Debhelper derzeit \fB\-\-parallel\fR in Kompatibilitätsversion 10 (oder höher) und andernfalls \fB\-\-no\-parallel\fR. .Sp Als Optimierung wird \fBDh\fR versuchen, die Übergabe dieser Optionen an Unterprozesse zu vermeiden, falls sie unnötig sind und als einzige Optionen übergeben werden. Dies geschieht insbesondere dann, wenn \&\fB\s-1DEB_BUILD_OPTIONS\s0\fR keinen \fIparallel\fR\-Parameter hat (oder dessen Wert 1 ist). .IP "\fB\-\-max\-parallel=\fR\fIMaximum\fR" 4 .IX Item "--max-parallel=Maximum" Diese Option impliziert \fB\-\-parallel\fR und erlaubt die weitere Begrenzung der Anzahl von Aufgaben, die bei einem parallelen Bauen benutzt werden können. Falls bekannt ist, dass das Bauen des Pakets nur mit einer bestimmten Stufe der Gleichzeitigkeit funktioniert, können Sie diese auf die maximale Stufe setzen, von der bekannt ist, dass sie funktioniert oder auf die, von der Sie wünschen, dass sie unterstützt wird. .Sp Bemerkenswerterweise ist das Setzen des Maximums auf 1 tatsächlich dasselbe wie die Verwendung von \fB\-\-no\-parallel\fR. .IP "\fB\-\-list\fR, \fB\-l\fR" 4 .IX Item "--list, -l" listet alle Bausysteme auf, die auf diesem System von Debhelper unterstützt werden. Diese Liste enthält sowohl Standardbausysteme als auch Bausysteme Dritter (als solche gekennzeichnet). Außerdem zeigt es, welches Bausystem automatisch ausgewählt würde oder welches durch die Option \fB\-\-buildsystem\fR manuell angegeben wird. .SH "KOMPATIBILITÄTSSTUFEN" .IX Header "KOMPATIBILITÄTSSTUFEN" From time to time, major non-backwards-compatible changes need to be made to debhelper, to keep it clean and well-designed as needs change and its author gains more experience. To prevent such major changes from breaking existing packages, the concept of debhelper compatibility levels was introduced. You must tell debhelper which compatibility level it should use, and it modifies its behavior in various ways. .PP In current debhelper, you can specify the compatibility level in \&\fIdebian/control\fR by adding a Build-Depends on the debhelper-compat package. For example, to use v12 mode, ensure \&\fIdebian/control\fR has: .PP .Vb 1 \& Build\-Depends: debhelper\-compat (= 12) .Ve .PP This also serves as an appropriate versioned build dependency on a sufficient version of the debhelper package, so you do not need to specify a separate versioned build dependency on the debhelper package unless you need a specific point release of debhelper (such as for the introduction of a new feature or bugfix within a compatibility level). .PP Note that debhelper does not provide debhelper-compat for experimental or beta compatibility levels; packages experimenting with those compatibility levels should use \fIdebian/compat\fR or \fB\s-1DH_COMPAT\s0\fR. .PP Prior versions of debhelper required specifying the compatibility level in the file \fIdebian/compat\fR, and current debhelper still supports this for backward compatibility, though a package may not specify a compatibility level via multiple methods at once. To use this method, \fIdebian/compat\fR should contain the compatibility level as a single number, and no other content. If you specify the compatibility level by this method, your package will also need a versioned build dependency on a version of the debhelper package equal to (or greater than) the compatibility level your package uses. So, if you specify compatibility level 12 in \&\fIdebian/compat\fR, ensure \fIdebian/control\fR has: .PP .Vb 1 \& Build\-Depends: debhelper (>= 12~) .Ve .PP Wenn nicht anders angegeben, geht sämtliche Debhelper-Dokumentation davon aus, dass Sie die aktuellste Kompatibilitätsstufe nutzen und in den meisten Fällen wird nicht angezeigt, wenn sich dieses Verhalten von einer älteren Kompatibilitätsstufe unterscheidet. Wenn Sie also nicht die aktuellste Kompatibilitätsstufe benutzen, ist es eine gute Idee, folgende Hinweise zu den Unterschieden gegenüber älteren Kompatibilitätsstufen zu lesen. .SS "Unterstützte Kompatibilitätsstufen" .IX Subsection "Unterstützte Kompatibilitätsstufen" Folgende Kompatibilitätsstufen sind verfügbar: .IP "v5" 4 .IX Item "v5" Dies ist die unterste unterstützte Kompatibilitätsstufe. .Sp Falls Sie ein Upgrade von einer vorhergehenden Kompatibilitätsstufe durchführen, überprüfen Sie bitte \fBdebhelper\-obsolete\-compat\fR\|(7). .Sp Dieser Modus ist missbilligt. .IP "v6" 4 .IX Item "v6" Änderungen gegenüber v5 sind: .RS 4 .IP "\-" 8 Befehle, die Fragmente von Betreuerskripten erzeugen, werden die Fragmente für die \fIprerm\fR\- und \fIpostrm\fR\-Skripte in umgekehrter Reiherfolge anordnen. .IP "\-" 8 \&\fBdh_installwm\fR wird einen untergeordneten Handbuchseiten-Link für \&\fIx\-window\-manager.1.gz\fR installieren. falls es die Handbuchseite in \&\fIusr/share/man/man1\fR im Bauverzeichnis des Pakets entdeckt. .IP "\-" 8 \&\fBdh_builddeb\fR löschte vorher nichts, was auf \fB\s-1DH_ALWAYS_EXCLUDE\s0\fR passte, aber es wurde auf eine Liste von Dingen gesetzt, die ausgeschlossen werden sollen, wie \fB\s-1CVS:\s0.svn:.git\fR. Nun tut es dies. .IP "\-" 8 \&\fBdh_installman\fR erlaubt das Überschreiben existierender Handbuchseiten im Bauverzeichnis des Pakets. In vorhergehenden Kompatibilitätsstufen lehnte es lautlos ab, dies zu tun. .RE .RS 4 .Sp Dieser Modus ist missbilligt. .RE .IP "v7" 4 .IX Item "v7" Änderungen gegenüber v6 sind: .RS 4 .IP "\-" 8 \&\fBdh_install\fR wird darauf zurückgreifen, in \fIdebian/tmp\fR nach Dateien zu suchen, falls es sie nicht im aktuellen Verzeichnis findet (oder wo auch immer Sie es unter Benutzung von \fB\-\-sourcedir\fR vorgeben). Dies ermöglicht \&\fBdh_install\fR mit \fBdh_auto_install\fR zusammenzuarbeiten, das nach \&\fIdebian/tmp\fR installiert, ohne irgendwelche besonderen Parameter zu benötigen. .IP "\-" 8 \&\fBdh_clean\fR wird \fIdebian/clean\fR lesen und die dort aufgeführten Dateien löschen. .IP "\-" 8 wird die \fI*\-stamp\fR\-Dateien der obersten Ebene löschen. .IP "\-" 8 \&\fBdh_installchangelogs\fR wird abschätzen, in welcher Datei das Änderungsprotokoll der Originalautoren liegt, falls keines angegeben wurde. .RE .RS 4 .Sp Dieser Modus ist missbilligt. .RE .IP "v8" 4 .IX Item "v8" Änderungen gegenüber v7 sind: .RS 4 .IP "\-" 8 Befehle werden fehlschlagen, anstatt zu warnen, wenn ihnen unbekannte Optionen übergeben werden. .IP "\-" 8 \&\fBdh_makeshlibs\fR wird \fBdpkg-gensymbols\fR auf allen gemeinsam benutzten Bibliotheken ausführen, für die es Shlib-Dateien erzeugt. Daher kann \fB\-X\fR verwandt werden, um Bibliotheken auszuschließen. Außerdem würden \&\fBdpkg-gensymbols\fR Bibliotheken an unüblichen Orten übergeben, die es ansonsten nicht verarbeiten würde. Solche Verhaltensänderung kann den Bau einiger Pakete zum Scheitern bringen. .IP "\-" 8 \&\fBdh\fR erfordert, dass die auszuführende Sequenz als erster Parameter angegeben wird und sämtliche Schalter danach kommen. »\fBdh $@ \-\-foo\fR« nicht »\fBdh \-\-foo $@\fR«. .IP "\-" 8 \&\fBdh_auto_\fR\fI*\fR bevorzugt Perls \fBModule::Build\fR gegenüber \fIMakefile.PL\fR. .RE .RS 4 .Sp Dieser Modus ist missbilligt. .RE .IP "v9" 4 .IX Item "v9" Änderungen gegenüber v8 sind: .RS 4 .IP "\-" 8 Multiarch\-Unterstützung. Insbesondere gibt \fBdh_auto_configure\fR Multiarch-Verzeichnisse an Autoconf in \-\-libdir and \-\-libexecdir weiter. .IP "\-" 8 dh kennt die üblichen Abhängigkeiten zwischen Zielen in debian/rules. Daher wird »dh binary« alle »build«\-, »build\-arch«\-, »build\-indep«\-, »install«\-Ziele etc. ausführen, die in dieser Regeldatei stehen. Es ist nicht nötig, explizit ein binäres Ziel mit expliziten Abhängigkeiten zu den anderen Zielen zu definieren. .IP "\-" 8 \&\fBdh_strip\fR komprimiert Debug-Symboldateien, um die installierte Größe von »\-dbg«\-Paketen zu verringern. .IP "\-" 8 \&\fBdh_auto_configure\fR enthält nicht den Quellpaketnamen in \-\-libexecdir, wenn Autoconf benutzt wird. .IP "\-" 8 Standardmäßig aktiviert \fBdh\fR nicht \-\-with=python\-support. .Sp (hinfällig, da das Werkzeug \fBdh_pysupport\fR aus Debian Stretch entfernt wurde) Seit Debhelper/10.3 aktiviert \fBdh\fR diese Abfolgeerweiterung unabhängig von der Kompatibilitätsstufe nicht mehr. .IP "\-" 8 Alle \fBdh_auto_\fR\fI*\fR\-Debhelper\-Programme und \fBdh\fR setzen Umgebungsvariablen, die durch \fBdpkg-buildflags\fR aufgelistet werden, sofern sie nicht bereits gesetzt sind. .IP "\-" 8 \&\fBdh_auto_configure\fR übergibt \s-1CFLAGS, CPPFLAGS\s0 und \s-1LDFLAGS\s0 von \&\fBdpkg-buildflags\fR an Perls \fIMakefile.PL\fR und \fIBuild.PL.\fR .IP "\-" 8 \&\fBdh_strip\fR legt getrennte Fehlersuchsymbole an einer Stelle ab, die auf ihrer Baukennzahl basiert. .IP "\-" 8 Ausführbare Debhelper-Konfigurationsdateien werden ausgeführt und ihre Ausgabe wird als Konfiguration benutzt. .RE .RS 4 .RE .IP "v10" 4 .IX Item "v10" Änderungen gegenüber v9 sind: .RS 4 .IP "\-" 8 \&\fBdh_installinit\fR wird nicht mehr eine Datei namens debian/\fIPaket\fR als Init-Skript installieren. .IP "\-" 8 \&\fBdh_installdocs\fR wird mit einem Fehler fehlschlagen, falls es Links entdeckt, die mit \-\-link\-doc zwischen Paketen der Architektur »all« und nicht\-»all« erzeugt wurden, da es binNMUs beschädigt. .IP "\-" 8 \&\fBdh_installdeb\fR installiert keine vom Paketbetreuer bereitgestellte debian/\fIPaket\fR.shlibs\-Datei mehr. Dies wird stattdessen von \&\fBdh_makeshlibs\fR erledigt. .IP "\-" 8 \&\fBdh_installwm\fR weigert sich, ein beschädigtes Paket zu erstellen, falls keine Handbuchseite gefunden wird (erforderlich, um die Alternative zum X\-Window-Manager zu registrieren). .IP "\-" 8 \&\fB\-\-parallel\fR ist Debhelpers Voreinstellung für alle Bausysteme, die paralleles Bauen unterstützen. Dies kann entweder durch Verwendung von \&\fB\-\-no\-parallel\fR oder durch Übergabe von \fB\-\-max\-parallel\fR mit einem Wert von 1 deaktiviert werden. .IP "\-" 8 Der Befehl \fBdh\fR wird keinen der veralteten Parameter zur »manuellen Abfolgesteuerung« (\fB\-\-before\fR, \fB\-\-after\fR, etc.) akzeptieren. Bitte verwenden Sie stattdessen Aufhebungsziele. .IP "\-" 8 Der Befehl \fBdh\fR wird zur Verfolgung, welche Befehle ausgeführt wurden, nicht länger Protokolldateien benutzen. Der Befehl \fBdh\fR verfolgt \&\fIweiterhin\fR, ob die »Bau«\-Abfolge ausgeführt wurde und überspringt sie in diesem Fall. .Sp Die wichtigsten Auswirkungen davon sind: .RS 8 .IP "\-" 4 Hierdurch wird die Fehlersuche bei den Abfolgen \fIinstall\fR und/oder \&\fIbinary\fR einfacher, da sie nun einfach erneut ausgeführt werden können (ohne, dass ein vollständiger »Aufräum\- und Neubau«\-Durchgang erforderlich ist). .IP "\-" 4 Der Pferdefuss hier liegt darin, dass \fBdh_*\fR nun nur noch nachverfolgt, was in einem einzelnen außer Kraft setzenden Ziel geschieht. Wenn alle Aufrufe eines angegebenen \fBdh_cmd\fR\-Befehls im selben außer Kraft setzenden Ziel stattfinden, wird alles wie zuvor funktionieren. .Sp Beispiel, bei dem es schiefgehen kann: .Sp .Vb 2 \& override_dh_foo: \& dh_foo \-pmein\-Paket \& \& override_dh_bar: \& dh_bar \& dh_foo \-\-remaining .Ve .Sp In diesem Fall wird der Aufruf von \fBdh_foo \-\-remaining\fR \fIaußerdem\fR \&\fImein-Paket\fR enthalten, da \fBdh_foo \-pmein\-Paket\fR in einem separaten außer Kraft setzenden Ziel ausgeführt wird. Dieses Problem ist nicht auf \&\fB\-\-remaining\fR begrenzt, es umfasst außerdem \fB\-a\fR, \fB\-i\fR, etc. .RE .RS 8 .RE .IP "\-" 8 Der Befehl \fBdh_installdeb\fR maskiert nun die Zeilen in der Konfigurationsdatei \fImaintscript\fR für die Shell. Dies war der ursprüngliche Gedanke, aber es funktionierte nicht, wie es sollte und die Pakete begannen, sich auf die unvollständige Shell-Maskierung zu verlassen (z.B. Dateinamen in Anführungszeichen setzen). .IP "\-" 8 Voreinstellung für den Befehl \fBdh_installinit\fR ist nun \&\fB\-\-restart\-after\-upgrade\fR. Verwenden Sie bitte für Pakete, die das vorhergehende Verhalten erfordern, \fB\-\-no\-restart\-after\-upgrade\fR. .IP "\-" 8 Die \fBautoreconf\fR\-Abfolge ist nun standardmäßig aktiviert. Bitte übergeben Sie \fB\-\-without autoreconf\fR an \fBdh\fR, falls dies für ein angegebenes Paket nicht gewünscht wird. .IP "\-" 8 Die \fBsystemd\fR\-Abfolge ist nun standardmäßig aktiviert. Bitte übergeben Sie \&\fB\-\-without systemd\fR an \fBdh\fR, falls dies für ein angegebenes Paket nicht gewünscht wird. .IP "\-" 8 \&\fBRetroactively removed\fR: \fBdh\fR no longer creates the package build directory when skipping running debhelper commands. This will not affect packages that only build with debhelper commands, but it may expose bugs in commands not included in debhelper. .Sp This compatibility feature had a bug since its inception in debhelper/9.20130516 that made it fail to apply in compat 9 and earlier. As there has been no reports of issues caused by this bug in those ~5 years, this item have been removed rather than fixed. .RE .RS 4 .RE .IP "v11" 4 .IX Item "v11" Änderungen gegenüber v10 sind: .RS 4 .IP "\-" 8 \&\fBdh_installinit\fR installiert keine \fIservice\fR\- oder \fItmpfile\fR\-Dateien mehr. Es erstellt auch keine Betreuerskripte dafür. Bitte verwenden Sie das neue Hilfsprogramm \fBdh_installsystemd\fR. .IP "\-" 8 Die Hilfsprogramme \fBdh_systemd_enable\fR und \fBdh_systemd_start\fR wurden durch das neue Hilfsprogramm \fBdh_installsystemd\fR ersetzt. Aus demselben Grund wurde auch die \fBsystemd\fR\-Abfolge für \fBdh\fR entfernt. Wenn Sie das Hilfswerkzeug \fBdh_installsystemd\fR deaktivieren möchten, verwenden Sie bitte ein leeres außer Kraft setzendes Ziel. .Sp Bitte beachten Sie, dass sich das Werkzeug \fBdh_installsystemd\fR in manchen Fällen (z.B. bei der Verwendung des Parameters \fB\-\-name\fR) geringfügig anders verhält. .IP "\-" 8 \&\fBdh_installdirs\fR erstellt keine debian/\fIPaket\fR\-Verzeichnisse mehr, es sei denn, dies wird ausdrücklich verlangt (oder es muss ein Unterverzeichnis darin erstellt werden). .Sp Die große Mehrheit aller Pakete wird von dieser Änderung nicht betroffen sein. .IP "\-" 8 The \fBmakefile\fR buildsystem now passes \fBINSTALL=\*(L"install \&\-\-strip\-program=true\*(R"\fR to \fBmake\fR\|(1). Derivative buildsystems (e.g. \fBconfigure\fR or \fBcmake\fR) are unaffected by this change. .IP "\-" 8 Das \fBautoconf\fR\-Bausystem übergibt nun \fB\-\-runstatedir=/run\fR an \&\fI./configure\fR. .IP "\-" 8 Das \fBcmake\fR\-Bausystem übergibt nun \fB\-DCMAKE_INSTALL_RUNSTATEDIR=/run\fR an \&\fBcmake\fR\|(1). .IP "\-" 8 \&\fBdh_installman\fR wird nun vorzugsweise die Sprache anhand des Pfadnamens statt der Erweiterung bestimmen. .IP "\-" 8 \&\fBdh_auto_install\fR wird nun nur das Zielverzeichnis erstellen, das es benötigt. Vorher hätte es die Bauverzeichnisse für alle Pakete erstellt. Dies hat keine Auswirkungen auf Pakete, die nur mit Debhelper-Befehlen bauen, es könnte aber Fehler in Befehlen offenlegen, die nicht in Debhelper enthalten sind. .IP "\-" 8 Die Hilfsprogramme \fBdh_installdocs\fR, \fBdh_installexamples\fR, \&\fBdh_installinfo\fR und \fBdh_installman\fR geben nun Fehlermeldungen aus, falls ihre Konfiguration ein Muster aufweist, das zu nichts passt oder sich auf einen Pfad bezieht, den es nicht gibt. .Sp Bekannte Ausnahmen umfassen das Bauen mit dem Profil \fBnodoc\fR, wobei obige Werkzeuge stillschweigend fehlschlagende Suchen erlauben, wobei die Suchmuster zur Angabe von Dokumentation benutzt werden. .IP "\-" 8 Die Hilfsprogramme \fBdh_installdocs\fR, \fBdh_installexamples\fR, \&\fBdh_installinfo\fR und \fBdh_installman\fR akzeptieren nun den Parameter \&\fB\-\-sourcedir\fR mit derselben Bedeutung wie für \fBdh_install\fR. Überdies fallen sie nun auch auf \fIdebian/tmp\fR wie \fBdh_install\fR zurück. .Sp Migration note: A bug in debhelper 11 up to 11.1.5 made \fBdh_installinfo\fR incorrectly ignore \fB\-\-sourcedir\fR. .IP "\-" 8 Die Bausysteme \fBperl-makemaker\fR und \fBperl-build\fR übergeben nicht mehr \&\fB\-I.\fR an Perl. Pakete, die dieses Verhalten immer noch benötigen, können es durch Verwendung der Umgebungsvariable \fB\s-1PERL5LIB\s0\fR emulieren, z.B. durch Hinzufügen von \fBexport PERL5LIB=.\fR in ihre »debian/rules«\-Datei (oder dergleichen). .IP "\-" 8 Die Umgebungsvariable \fB\s-1PERL_USE_UNSAFE_INC\s0\fR wird nicht mehr durch \fBdh\fR oder eins der \fBdh_auto_*\fR\-Werkzeuge gesetzt. Sie wurde vorübergehend als Behelfslösung gesetzt, um zu verhindern, dass das gleichzeitige Bauen vieler Pakete scheitert. .Sp Beachten Sie, dass dieses Element eventuell hinfällig wird, da die Ursprungsautoren beabsichtigen, die Unterstützung für die Umgebungsvariable \&\fB\s-1PERL_USE_UNSAFE_INC\s0\fR einzustellen. Wenn Perl die Unterstützung dafür einstellt, wird diese Variable nachträglich auch aus bestehenden Kompatibilitätsstufen entfernt. .IP "\-" 8 Das Hilfsprogramm \fBdh_makeshlibs\fR wird nun mit einer Fehlermeldung beendet, falls Objdump einen Rückgabewert ungleich Null von der Auswertung einer übergebenen Datei zurückgibt. .IP "\-" 8 The \fBdh_installdocs\fR and \fBdh_installexamples\fR tools may now install \&\fImost\fR of the documentation in a different path to comply with the recommendation from Debian policy §12.3 (since version 3.9.7). .Sp Note that if a given source package only contains a single binary package in \&\fIdebian/control\fR or none of the packages are \fI\-doc\fR packages, then this change is not relevant for that source package and you can skip to the next change. .Sp By default, these tools will now attempt to determine a \*(L"main package for the documentation\*(R" (called a \fIdoc-main-package\fR from here on) for every \&\fI\-doc\fR package. If they find such a \fIdoc-main-package\fR, they will now install the documentation into the path \fI/usr/share/doc/\fIdoc-main-package\fI\fR in the given doc package. I.e. the path can change but the documentation is still shipped in the \fI\-doc\fR package. .Sp The \fB\-\-doc\-main\-package\fR option can be used when the auto-detection is insufficient or to reset the path to its previous value if there is a reason to diverge from Debian policy recommendation. .Sp Some documentation will not be affected by this change. These exceptions include the copyright file, changelog files, \s-1README\s0.Debian, etc. These files will still be installed in the path \fI/usr/share/doc/\fIpackage\fI\fR. .IP "\-" 8 Die Werkzeuge \fBdh_strip\fR und \fBdh_shlibdeps\fR verwenden keine Dateinamenmuster mehr, um zu bestimmen, welche Dateien verarbeitet werden. Stattdessen öffnen sie die Datei und schauen nach einem ELF-Header, um zu bestimmen, ob eine übergebene Datei ein gemeinsam benutztes Objekt oder ein ausführbares binäres Programm ist. .Sp Diese Änderung kann dazu führen, dass mehr Dateien als vorher verarbeitet werden. .RE .RS 4 .RE .IP "v12" 4 .IX Item "v12" Dies ist der empfohlene Betriebsmodus. .Sp Änderungen gegenüber v11 sind: .RS 4 .IP "\-" 8 The \fBdh_makeshlibs\fR tool now generates shlibs files with versioned dependency by default. This means that \fB\-VUpstream\-Version\fR (a.k.a. \fB\-V\fR) is now the default. .Sp If an unversioned dependency in the shlibs file is wanted, this can be obtained by passing \fB\-VNone\fR instead. However, please see \&\fBdh_makeshlibs\fR\|(1) for the caveat of unversioned dependencies. .IP "\-" 8 Die Option \fB\-s\fR (\fB\-\-same\-arch\fR) wurde entfernt. Bitte verwenden Sie stattdessen \fB\-a\fR (\fB\-\-arch\fR). .IP "\-" 8 Der Aufruf von \fBdh_clean \-k\fR verursacht jetzt einen Fehler statt einer Warnung, es sei missbilligt. .IP "\-" 8 Die Option \fB\-\-no\-restart\-on\-upgrade\fR in \fBdh_installinit\fR wurde entfernt. Bitte verwenden Sie den neuen Namen \fB\-\-no\-stop\-on\-upgrade\fR. .IP "\-" 8 Es gab einen Fehler in den \fBdoit\fR\-Funktionen (und ähnlichen) von Debian::Debhelper::Dh_Lib, der unter einem bestimmten Umstand zum Öffnen einer Shell führte. Dieser Fehler wurde nun entfernt, wodurch Hilfsprogramme, die auf den Fehler setzen, mit der Meldung »command not found« fehlschlagen. .IP "\-" 8 \&\fB\-\-list\-missing\fR und \fB\-\-fail\-missing\fR in \fBdh_install\fR wurden entfernt. Bitte verwenden Sie \fBdh_missing\fR und die zugehörigen Optionen, die die durch andere Hilfsprogramme installierten Dateien ebenfalls sehen können. .IP "\-" 8 Das Hilfsprogramm \fBdh_installinit\fR installiert nicht mehr die Konfiguration für das Init-System Upstart. Stattdessen bricht es das Bauen ab, wenn es eine alte Upstart-Konfigurationsdatei findet. Der Fehler ist dort, um den Paketbetreuer daran zu erinnern, dass er sicherstellt, die mit vorherigen Versionen des Pakets mitgelieferten Conffiles (falls vorhanden) sauber zu entfernen. .IP "\-" 8 Das Werkzeug \fBdh_installdeb\fR wird die Grundprüfung einiger \&\fBdpkg\-maintscript\-helper\fR\|(1)\-Befehle durchführen und eine Fehlermeldung ausgeben, falls die Befehle ungültig zu sein scheinen. .IP "\-" 8 The \fBdh_missing\fR tool will now default to \fB\-\-list\-missing\fR. .IP "\-" 8 The \fBdh_makeshlibs\fR tool will now only pass libraries to \&\fBdpkg\-gensymbols\fR\|(1) if the \s-1ELF\s0 binary has a \s-1SONAME\s0 (containing \*(L".so\*(R"). .IP "\-" 8 The \fBdh_compress\fR tool no longer compresses examples (i.e. anything installed in \fI.) .IP "\-" 8 The standard sequence in \fBdh\fR now includes \fBdh_dwz\fR and \&\fBdh_installinitramfs\fR by default. This makes the \fBdwz\fR and \&\fBinstallinitramfs\fR sequences obsolete and they will now fail with an error. If you want to skip these commands, then please insert an empty override target for them in \fIdebian/rules\fR (e.g. \fIoverride_dh_dwz:\fR) .IP "\-" 8 The build systems \fBmeson\fR and \fBautoconf\fR no longer explicitly set the \&\fB\-\-libexecdir\fR variable and thus relies on the build system default \- which should be \fB/usr/libexec\fR (per \s-1FHS 3.0,\s0 adopted in Debian Policy 4.1.5). .Sp If a particular upstream package does not use the correct default, the parameter can often be passed manually via \fBdh_auto_configure\fR\|(1). E.g. via the following example: .Sp .Vb 2 \& override_dh_auto_configure: \& dh_auto_configure \-\- \-\-libexecdir=/usr/libexec .Ve .Sp Note the \fB\-\-\fR before the \fB\-\-libexecdir\fR parameter. .IP "\-" 8 The \fBdh_installdeb\fR tool no longer installs the maintainer provided \&\fIconffiles\fR file. The file has mostly been obsolete since compatibility level 3, where \fBdh_installdeb\fR began to automatically compute the resulting \&\fIconffiles\fR control file. .IP "\-" 8 The \fBdh_installsystemd\fR tool no longer relies on \fBdh_installinit\fR for handling systemd services that have a sysvinit alternative. Both tools must now be used in such a case to ensure the service is properly started under both sysvinit and systemd. .Sp If you have an override for \fBdh_installinit\fR (e.g. to call it with \&\fB\-\-no\-start\fR) then you will probably need one for \fBdh_installsystemd\fR as well now. .Sp This change makes \fBdh_installinit\fR inject a \fImisc:Pre\-Depends\fR for \fBinit-system-helpers (>= 1.54~)\fR. Please ensure that the package lists \&\fB${misc:Pre\-Depends}\fR in its \fBPre-Depends\fR field before upgrading to compat 12. .IP "\-" 8 The third-party \fBdh_golang\fR tool (from \fBdh-golang\fR package) now defaults on honoring \fB\s-1DH_GOLANG_EXCLUDES\s0\fR variable for source installation in \-dev packages and not only during the building process. Please set \&\fB\s-1DH_GOLANG_EXCLUDES_ALL\s0\fR to false to revert to the previous behaviour. See \&\fB\fBDebian::Debhelper::Buildsystem::golang\fB\|(3pm)\fR for details and examples. .IP "\-" 8 \&\fBdh_installsystemduser\fR is now included in the \fBdh\fR standard sequence by default. .IP "\-" 8 The \fBpython-distutils\fR buildsystem is now removed. Please use the third-party build system \fBpybuild\fR instead. .RE .RS 4 .RE .IP "v13" 4 .IX Item "v13" Diese Kompatibilitätsstufe ist immer noch für die Entwicklung offen. Verwenden Sie sie mit Vorsicht. .Sp Changes from v12 are: .RS 4 .IP "\-" 8 The \fBmeson+ninja\fR build system now uses \fBmeson test\fR instead of \fBninja test\fR when running the test suite. Any override of \fBdh_auto_test\fR that passes extra parameters to upstream test runner should be reviewed as \&\fBmeson test\fR is not command line compatible with \fBninja test\fR. .RE .RS 4 .RE .SH "ANMERKUNGEN" .IX Header "ANMERKUNGEN" .SS "Unterstützung mehrerer Binärpakete" .IX Subsection "Unterstützung mehrerer Binärpakete" Falls Ihr Quellpaket mehr als ein Binärpaket erzeugt, werden Debhelper-Programme standardmäßig bei der Ausführung auf alle Paketen einwirken. Falls es vorkommt, dass Ihr Quellpaket ein architekturabhängiges Paket und ein anderes architekturunabhängiges Paket erzeugt, ist dies nicht das korrekte Verhalten, da Sie die architekturabhängigen Pakete im \&\fIdebian/rules\fR\-Ziel »binary\-arch« erzeugen müssen und die unabhängigen Pakete im \fIdebian/rules\fR\-Ziel »binary\-indep«. .PP Um dies zu erleichtern sowie Ihnen mehr Kontrolle darüber zu geben, auf welche Pakete Debhelper-Programme einwirken, akzeptieren alle Debhelper-Programme die Parameter \fB\-a\fR, \fB\-i\fR, \fB\-p\fR und \fB\-s\fR. Diese Parameter sind kumulativ. Falls keiner angegeben wurde, wirken Debhelper-Programme standardmäßig auf alle Paketen ein, die in der Datei »control« aufgeführt sind, mit nachfolgenden Ausnahmen. .PP Zuerst werden alle Pakete, deren \fBArchitecture\fR\-Feld in \fBdebian/control\fR nicht mit der \fB\s-1DEB_HOST_ARCH\s0\fR\-Architektur übereinstimmt, ausgeschlossen (\*(L"Debian Policy, Abschnitt 5.6.8\*(R"). .PP Außerdem können einige zusätzliche Paket basierend auf dem Inhalt der Umgebungsvariable \fB\s-1DEB_BUILD_PROFILES\s0\fR und den Feldern \fBBuild-Profiles\fR in den Absätzen für binäre Pakete in \fBdebian/control\fR ausgeschlossen werden. Dies geschieht gemäß der Entwurfrichtlinie unter . .PP \fIZusammenspiel zwischen Paketauswahl und Bauprofilen\fR .IX Subsection "Zusammenspiel zwischen Paketauswahl und Bauprofilen" .PP Bauprofile beeinflussen, welche Pakete im Paketauswahlmechanismus von Debhelper enthalten sind. Im Allgemeinen wird die Paketauswahl unter der Annahme beschrieben, dass alle Pakete aktiviert sind. Dieser Abschnitt beschreibt wie die Auswahl reagiert, wenn ein Paket aufgrund des aktiven Bauprofils (oder das Fehlen des aktiven Bauprofils) deaktiviert wird. .IP "\-a/\-\-arch, \-i/\-\-indep \s-1ODER\s0 keine Auswahloptionen (ein roher »dh_X«\-Aufruf)" 4 .IX Item "-a/--arch, -i/--indep ODER keine Auswahloptionen (ein roher »dh_X«-Aufruf)" Das durch Bauprofile deaktivierte Paket wird stillschweigend aus der Auswahl ausgeschlossen. .Sp Beachten Sie, dass Sie eine Warnung bekommen, falls \fIalle\fR zu dieser Auswahl gehörenden Pakete deaktiviert werden. In diesem Fall ist der Bau im Allgemeinen überhaupt sinnlos. .IP "\-N \fIPaket\fR / \-\-no\-package \fIPaket\fR" 4 .IX Item "-N Paket / --no-package Paket" Die Option wird akzeptiert und hat keine Wirkung. .IP "\-p \fIPaket\fR / \-\-package \fIPaket\fR" 4 .IX Item "-p Paket / --package Paket" Die Option wird akzeptiert, aber Debhelper wird nichts an dem Paket vornehmen. .PP Beachten Sie, dass es keine Rolle spielt, ob das Paket standardmäßig aktiviert oder deaktiviert ist. .SS "Automatisches Erzeugen von Debian-Installationsskripten" .IX Subsection "Automatisches Erzeugen von Debian-Installationsskripten" Einige Debhelper-Befehle werden automatisch Teile der Debian-Betreuerskripte erzeugen. Falls Sie diese automatisch erzeugten Dinge in Ihre existierenden Debian-Betreuerskripte einfügen möchten, dann müssen Sie Ihren Skripten \&\fB#DEBHELPER#\fR an der Stelle hinzufügen, an die der Kode hinzugefügt werden soll. \fB#DEBHELPER#\fR wird bei der Ausführung durch irgendeinen automatisch erzeugten Kode ersetzt. .PP Falls ein Skript überhaupt noch nicht existiert und Debhelper etwas darin hinzufügen muss, dann wird Debhelper das komplette Skript erstellen. .PP Alle Debhelper-Befehle, die auf diese Art automatisch Kode erzeugen, lassen dies durch den Parameter \-n deaktiviert (siehe oben). .PP Beachten Sie, dass der eingefügte Kode Shell-Kode sein wird. Sie können ihn daher nicht direkt in einem Perl-Skript verwenden. Falls Sie ihn in ein Perl-Skript einbetten wollen, wird hier eine Möglichkeit beschrieben, dies zu tun (beachten Sie, dass über den Befehl »set« sichergestellt wird, dass \&\f(CW$1\fR, \f(CW$2\fR, etc. gesetzt sind): .PP .Vb 12 \& my $temp="set \-e\enset \-\- @ARGV\en" . << \*(AqEOF\*(Aq; \& #DEBHELPER# \& EOF \& if (system($temp)) { \& my $exit_code = ($? >> 8) & 0xff; \& my $signal = $? & 0x7f; \& if ($exit_code) { \& die("Das Debhelper\-Skript scheiterte mit folgendem Fehlercode: ${exit_code}"); \& } else { \& die("Das Debhelper\-Skript wurde per Signal abgebrochen: ${signal}"); \& } \& } .Ve .SS "Automatisches Erzeugen verschiedener Abhängigkeiten" .IX Subsection "Automatisches Erzeugen verschiedener Abhängigkeiten" Einige Debhelper-Befehle könnten dazu führen, dass das erzeugte Paket von einigen anderen Paketen abhängt. Falls Sie beispielsweise \&\fBdh_installdebconf\fR\|(1) benutzen, wird Ihr Paket von Debconf abhängen müssen. Oder, falls Sie \fBdh_installxfonts\fR\|(1) verwenden, wird ihr Paket generell von einer bestimmten Version der Xutils abhängen. Den Überblick über diese verschiedenen Abhängigkeiten zu behalten kann lästig sein, da sie davon abhängen, wie Debhelper Dinge tut, weswegen Debhelper eine Möglichkeit bietet, sie zu automatisieren. .PP Für jeden Befehl werden die benötigten Abhängigkeiten in den Handbuchseiten dokumentiert. Daneben wird automatisch eine »substvar« erzeugt, die \&\fB${misc:Depends}\fR genannt wird. Falls Sie eine Markierung in Ihre \&\fIdebian/control\fR\-Datei schreiben, wird es sie zu den Abhängigkeiten expandieren, von denen Debhelper findet, dass Sie sie benötigen. .PP Dies ist gänzlich unabhängig von dem vorgegebenen \fB${shlibs:Depends}\fR, das durch \fBdh_makeshlibs\fR\|(1) erzeugt wurde und den durch \fBdh_perl\fR\|(1) erzeugten \fB${perl:Depends}\fR. Sie können auswählen, keines davon zu benutzen, falls die Einschätzung von Debhelper nicht der Wirklichkeit entspricht. .SS "Paketbauverzeichnisse" .IX Subsection "Paketbauverzeichnisse" Standardmäßig gehen alle Debhelper-Programme davon aus, dass das temporäre Verzeichnis, das zum Zusammenbau des Dateibaums in einem Paket benutzt wird, debian/\fIPaket\fR ist. .PP Manchmal wollen Sie möglicherweise ein anderes temporäres Vezeichnis benutzen. Dies wird durch den Schalters \fB\-P\fR unterstützt. »\fBdh_installdocs \&\-Pdebian/tmp\fR« wird zum Beispiel \fBdebian/tmp\fR als temporäres Verzeichnis nutzen. Beachten Sie, falls Sie \fB\-P\fR verwenden, dass die Debhelper-Programme nur auf ein einzelnes Paket auf einmal einwirken kann. Falls Sie also ein Paket haben, das mehrere Binärpakete baut, müssen Sie außerdem den Schalter \fB\-p\fR einsetzen, um anzugeben, auf welches Binärpaket sich das Debhelper-Programm auswirkt. .SS "Udebs" .IX Subsection "Udebs" Debhelper beinhaltet Unterstützung für Udebs. Um ein Udeb mit Debhelper zu erstellen, fügen Sie dem Absatz des Pakets in \fIdebian/control\fR »\fBPackage-Type: udeb\fR« hinzu. Debhelper wird versuchen, Udebs zu erstellen, die der Debian-Installer-Richtlinie entsprechen, indem die erzeugten Paketdateien mit \fI.udeb\fR enden, indem keine Dokumentation in ein Udeb installiert wird und indem \fIpreinst\fR\-, \fIpostrm\fR\-, \fIprerm\fR\- und \&\fIconfig\fR\-Skripte etc. übersprungen werden. .SH "UMGEBUNGSVARIABLEN" .IX Header "UMGEBUNGSVARIABLEN" Die folgenden Umgebungsvariablen können das Verhalten von Debhelper beeinflussen. Es ist wichtig, darauf hinzuweisen, dass dies tatsächlich Umgebungsvariablen (nicht nur einfache \fIMakefile\fR\-Variablen) sein müssen, damit dies korrekt funktioniert. Um sie ordnungsgemäß in \fIdebian/rules\fR anzugeben, müssen sie sicherstellen, dass sie »\fBexport\fR«iert werden, zum Beispiel »\fBexport \s-1DH_VERBOSE\s0\fR«. .IP "\fB\s-1DH_VERBOSE\s0\fR" 4 .IX Item "DH_VERBOSE" auf \fB1\fR gesetzt, um den Modus mit detailreicher Ausgabe zu aktivieren. Debhelper wird jeden von ihm ausgeführten Befehl ausgeben. Außerdem wird die detailreiche Ausgabe von Bauprotokollen für einige Bausysteme wie Autoconf aktiviert. .IP "\fB\s-1DH_QUIET\s0\fR" 4 .IX Item "DH_QUIET" auf \fB1\fR gesetzt, um den detailarmen Modus zu aktivieren. Debhelper wird weder Befehle ausgeben, die das Bausystem der Ursprungsautoren aufrufen, noch wird Dh ausgeben, welche Unterbefehle aufgerufen werden. Abhängig vom benutzten Bausystem wird auch dieses weniger Details ausgeben. Dadurch wird es einfacher, wichtige Nachrichten zu erkennen, die Ausgabe wird jedoch als Buildd-Protokoll ziemlich nutzlos. Falls \s-1DH_VERBOSE\s0 ebenfalls gesetzt ist, wird diese Einstellung ignoriert. .IP "\fB\s-1DH_COMPAT\s0\fR" 4 .IX Item "DH_COMPAT" Temporarily specifies what compatibility level debhelper should run at, overriding any value specified via Build-Depends on debhelper-compat or via the \fIdebian/compat\fR file. .IP "\fB\s-1DH_NO_ACT\s0\fR" 4 .IX Item "DH_NO_ACT" auf \fB1\fR gesetzt, um Modus ohne Aktion zu aktivieren. .IP "\fB\s-1DH_OPTIONS\s0\fR" 4 .IX Item "DH_OPTIONS" Alles in dieser Variable wird den Befehlszeilenargumenten aller Debhelper-Befehle vorangestellt. .Sp Wenn \fBdh\fR\|(1) benutzt wird, können ihm Optionen übergeben werden, die es an jeden Debhelper-Befehl weitergibt, was im Allgemeinen besser ist, als \&\s-1DH_OPTIONS\s0 zu verwenden. .IP "\fB\s-1DH_ALWAYS_EXCLUDE\s0\fR" 4 .IX Item "DH_ALWAYS_EXCLUDE" Falls gesetzt, fügt dies den Wert, auf den die Variable gesetzt ist, den \&\fB\-X\fR\-Optionen aller Befehle hinzu, die die Option \fB\-X\fR unterstützen. Außerdem wird \fBdh_builddeb\fR für alles, das dem Wert in Ihrem Paketbaubaum entspricht, \fBrm \-rf\fR ausführen. .Sp Dies kann nützlich sein, falls Sie aus einem CVS-Quellverzeichnisbaum bauen. In diesem Fall verhindert das Setzen von \fBDH_ALWAYS_EXCLUDE=CVS\fR, dass irgendwelche CVS-Verzeichnisse sich in das Paket einschleichen, das Sie bauen. Oder, falls ein Paket einen Quell-Tarball hat, der (unklugerweise) CVS-Verzeichnisse enthält, möchten Sie möglicherweise \&\fBDH_ALWAYS_EXCLUDE=CVS\fR in \fIdebian/rules\fR exportieren, damit es wirksam ist, wo auch immer Ihr Paket gebaut wird. .Sp Mehrere Dinge, die ausgeschlossen werden sollen, können mit Doppelpunkten getrennt werden, wie in \fBDH_ALWAYS_EXCLUDE=CVS:.svn\fR. .IP "\fB\s-1DH_EXTRA_ADDONS\s0\fR" 4 .IX Item "DH_EXTRA_ADDONS" If set, this adds the specified dh addons to be run in the appropriate places in the sequence of commands. This is equivalent to specifying the addon to run with the \-\-with flag in the debian/rules file. Any \-\-without calls specifying an addon in this environment variable will not be run. .Sp This is intended to be used by downstreams or specific local configurations that require a debhelper addon to be run during multiple builds without having to patch a large number of rules file. If at all possible, this should be avoided in favor of a \-\-with flag in the rules file. .SH "SIEHE AUCH" .IX Header "SIEHE AUCH" .IP "\fI/usr/share/doc/debhelper/examples/\fR" 4 .IX Item "/usr/share/doc/debhelper/examples/" eine Zusammenstellung von \fIdebian/rules\fR\-Beispieldateien, die Debhelper benutzen .IP "" 4 .IX Item "" Debhelper-Website .SH "ÜBERSETZUNG" .IX Header "ÜBERSETZUNG" Diese Übersetzung wurde mit dem Werkzeug \&\fBpo4a\fR durch Chris Leick \&\fIc.leick@vollbio.de\fR und das deutsche Debian\-Übersetzer\-Team im Dezember 2011 erstellt. .PP Bitte melden Sie alle Fehler in der Übersetzung an \&\fIdebian\-l10n\-german@lists.debian.org\fR oder als Fehlerbericht an das Paket \&\fIdebhelper\fR. .PP Sie können mit dem folgenden Befehl das englische Original anzeigen man \-L en Abschnitt Handbuchseite .SH "AUTOR" .IX Header "AUTOR" Joey Hess