Provided by: debhelper_12.7.3ubuntu1_all bug

NOM

       dh - Automate de commandes debhelper

SYNOPSIS

       dh suite [--with rajout[,rajout ...]] [--list] [options_de_debhelper]

DESCRIPTION

       dh exécute une suite de commandes debhelper. Les suites acceptées correspondent aux blocs
       d'un fichier debian/rules : build-arch, build-indep, build, clean, install-indep, install-
       arch, install, binary-arch, binary-indep et binary.

CIBLES DE RÉÉCRITURE

       Un fichier debian/rules utilisant dh peut réécrire la commande exécutée à n'importe quelle
       étape d'une séquence, en définissant une cible de réécriture.

       Pour réécrire la commande dh_commande, ajoutez une cible appelée override_dh_commande au
       fichier rules. dh exécutera ce bloc au lieu d'exécuter dh_commande, comme il l'aurait fait
       sinon. La commande exécutée peut être la même commande avec des options supplémentaires ou
       une commande entièrement différente. Consultez les exemples ci-dessous.

       Les cibles de réécriture peuvent aussi être définies pour n'être exécutées que lors de la
       construction de paquets dépendants ou indépendants de l'architecture. Utilisez des cibles
       avec des noms comme override_dh_commande-arch et override_dh_commande-indep. Nota : pour
       utiliser cette possibilité, il est nécessaire d'ajouter une dépendance de construction
       (Build-Depends) sur la version 8.9.7 ou supérieure de debhelper.

OPTIONS

       --with rajout[,rajout ...]
           Ajoute les commandes debhelper indiquées par les rajouts au bon endroit dans la
           séquence exécutée. Cette option peut être présente plusieurs fois ou bien plusieurs
           rajouts peuvent être indiqués en les séparant par des virgules. Cela est utile
           lorsqu'un paquet tiers fournit des commandes debhelper. Consulter le fichier
           PROGRAMMING pour obtenir des informations à propos de l'interface de ces rajouts.

           A Build-Depends relation on the package dh-sequence-addon implies a --with addon. This
           avoids the need for an explicit --with in debian/rules that only duplicates what is
           already declared via the build dependencies in debian/control. The relation can (since
           12.5) be made optional via e.g. build-profiles. This enables you to easily disable an
           addon that is only useful with certain profiles (e.g. to facilitate bootstrapping).

           Since debhelper 12.5, addons can also be activated in indep-only mode (via Build-
           Depends-Indep) or arch-only mode (via Build-Depends-Arch). Such addons are only active
           in the particular sequence (e.g. binary-indep) which simplifies dependency management
           for cross-builds.

           Please note that addons activated via Build-Depends-Indep or Build-Depends-Arch are
           subject to additional limitations to ensure the result is deterministic even when the
           addon is unavailable (e.g. during clean). This implies that some addons are
           incompatible with these restrictions and can only be used via Build-Depends (or
           manually via debian/rules). Currently, such addons can only add commands to sequences.

       --without rajout
           L'inverse de --with, désactive le rajout donné. Cette option peut être présente
           plusieurs fois ou bien plusieurs rajouts peuvent être indiqués en les séparant par des
           virgules.

       --list, -l
           Liste tous les rajouts disponibles.

           When called only with this option, dh can be called from any directory (i.e. it does
           not need access to files from a source package).

       --no-act
           Affiche les commandes qui seraient utilisées pour une séquence donnée, sans les
           exécuter.

           Veuillez remarquer que dh élimine les commandes en cours lorsqu'il sait qu'elles ne
           font rien. Avec l'option --no-act, la liste complète des commandes dans une séquence
           est affichée.

       Les autres options fournies à dh sont passées en paramètre à chaque commande exécutée.
       Cela est utile tant pour les options comme -v, -X ou -N que pour des options plus
       spécialisées.

EXEMPLES

       Pour voir quelles commandes sont présentes dans une séquence, sans rien faire :

               dh binary-arch --no-act

       C'est un fichier rules très simple, pour les paquets où les séquences de commandes par
       défaut fonctionnent sans aucune option particulière.

               #!/usr/bin/make -f
               %:
                       dh $@

       Il est fréquent de vouloir passer une option à une commande debhelper. Le moyen le plus
       simple de le faire consiste à ajouter une cible pour surcharger la commande.

               #!/usr/bin/make -f
               %:
                       dh $@

               override_dh_strip:
                       dh_strip -Xtoto

               override_dh_auto_configure:
                       dh_auto_configure -- --with-toto --disable-titi

       Parfois les automatismes de dh_auto_configure(1) et de dh_auto_build(1) n'arrivent pas à
       deviner ce qu'il faut faire pour certains paquets tordus. Voici comment indiquer vos
       propres commandes plutôt que de laisser faire l'automatisme.

               #!/usr/bin/make -f
               %:
                       dh $@

               override_dh_auto_configure:
                       ./mondoconfig

               override_dh_auto_build:
                       make universe-explode-in-delight

       Un autre cas habituel consiste à vouloir faire quelque chose avant ou après l'exécution
       d'une certaine commande debhelper.

               #!/usr/bin/make -f
               %:
                       dh $@

               override_dh_fixperms:
                       dh_fixperms
                       chmod 4755 debian/truc/usr/bin/truc

       Les outils Python ne sont pas exécutés par défaut par dh, à cause des modifications
       incessantes dans ce domaine. Voici comment utiliser dh_python2.

               #!/usr/bin/make -f
               %:
                       dh $@ --with python2

       Voici comment forcer l'utilisation du processus de construction Module::Build, propre à
       Perl, qui pourrait être indispensable si debhelper détectait, à tort, que le paquet
       utilise MakeMaker.

               #!/usr/bin/make -f
               %:
                       dh --buildsystem=perl_build $@

       Voici un exemple de remplacement où les commandes dh_auto_* cherchent la source du paquet
       car elle est située dans un sous-répertoire.

               #!/usr/bin/make -f
               %:
                       dh $@ --sourcedirectory=src

       Voici un exemple d'utilisation des commandes dh_auto_* pour réaliser la construction dans
       un sous-répertoire qui sera ensuite supprimé lors du clean :

               #!/usr/bin/make -f
               %:
                       dh $@ --builddirectory=build

       Si le paquet peut être construit en parallèle, veuillez utiliser le niveau de
       compatibilité 10 ou passer l'option --parallel à dh. Dans ce cas dpkg-buildpackage -j
       fonctionnera.

               #!/usr/bin/make -f
               %:
                       dh $@ --parallel

       Si votre paquet ne peut être construit de manière fiable en utilisant plusieurs processus
       légers, veuillez passer l'option --no-parallel à dh (ou la commande adéquate dh_auto_*) :

               #!/usr/bin/make -f
               %:
                       dh $@ --no-parallel

       Voici un moyen d'empêcher dh d'exécuter plusieurs commandes, en définissant des blocs de
       substitution vides pour chaque commande que vous ne voulez pas lancer.

               #!/usr/bin/make -f
               %:
                       dh $@

               # Commandes que l'on ne veut pas S<exécuter :>
               override_dh_auto_test override_dh_compress override_dh_fixperms:

       Un long processus de construction pour un paquet de documentation à part peut être séparé
       en utilisant des réécritures pour les paquets indépendants de l'architecture. Elles seront
       ignorées lors de l'exécution des suites build-arch et binary-arch.

               #!/usr/bin/make -f
               %:
                       dh $@

               override_dh_auto_build-indep:
                       $(MAKE) -C docs

               # Aucun test nécessaire pour la documentation
               override_dh_auto_test-indep:

               override_dh_auto_install-indep:
                       $(MAKE) -C docs install

       En plus de l'exemple précédent, il peut être nécessaire de modifier les droits d'un
       fichier, mais seulement lors de la construction du paquet dépendant de l'architecture,
       puisqu'il n'est pas présent lors de la construction de la documentation toute seule.

               override_dh_fixperms-arch:
                       dh_fixperms
                       chmod 4755 debian/truc/usr/bin/truc

FONCTIONNEMENT INTERNE

       Si vous êtes curieux de connaître le fonctionnement interne de dh, voici ce qu'il y a sous
       le capot.

       Dans les niveaux de compatibilité 10 (ou supérieurs), dh crée un fichier
       debian/debhelper-build-stamp après la construction pour ne pas la refaire. Il est possible
       d'éviter la création de ce fichier en passant l'argument --without=build-stamp à dh. Cela
       rend le comportement des construction « no clean » plus cohérent avec l'usage courant au
       détriment de possiblement effectuer la construction et le test deux fois (la seconde en
       tant que « root » ou avec fakeroot(1)).

       À l'intérieur d'une cible de réécriture, les commandes dh_* écrivent dans un journal
       debian/paquet.debhelper.log pour savoir quelle commande a été exécutée pour quel paquet.
       Ces fichiers journaux seront supprimés une fois la cible de réécriture terminée.

       Dans les niveaux de compatibilité 9 et précédents, chaque commande debhelper, qui
       s'accomplit correctement, est journalisée dans debian/package.debhelper.log (que dh_clean
       supprimera). Ainsi dh peut déterminer quelles commandes ont déjà été exécutées et pour
       quels paquets. De cette manière il pourra passer outre l'exécution de ces commandes
       ultérieurement.

       Each time dh is run (in compat 9 or earlier), it examines the log, and finds the last
       logged command that is in the specified sequence. It then continues with the next command
       in the sequence.

       Une suite peut aussi exécuter des cibles dépendantes dans debian/rules. Par exemple, la
       suite « binary » exécute la cible « install ».

       dh utilise la variable d'environnement DH_INTERNAL_OPTIONS pour transmettre des
       informations aux commandes debhelper exécutées au sein des blocs surchargés. Le contenu
       (et l'existence même) de cette variable d'environnement, comme son nom l'indique, est
       sujet à des modifications permanentes.

       Les commandes des séquences build-indep, install-indep et binary-indep sont appelées avec
       l'option -i pour être certain qu'elles ne s'accompliront que sur des paquets indépendants
       de l'architecture. Symétriquement les commandes des séquences build-arch, install-arch et
       binary-arch sont appelées avec l'option -a pour être certain qu'elles ne s'accompliront
       que sur des paquets dépendants de l'architecture.

VOIR AUSSI

       debhelper(7)

       Ce programme fait partie de debhelper.

AUTEUR

       Joey Hess <joeyh@debian.org>

TRADUCTION

       Cette traduction est maintenue à l'aide de l'outil po4a
       <URL:http://po4a.alioth.debian.org/> par l'équipe francophone de traduction de Debian.

       Veuillez signaler toute erreur de traduction en écrivant à
       <debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le paquet debhelper.

       Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la
       commande « man -L C <section> <page_de_man> ».