Provided by: debhelper_13.24.2ubuntu1_all bug

NOM

       debhelper – Ensemble d'outils regroupés sous le nom de debhelper

SYNOPSIS

       dh_* [-v] [-a] [-i] [--no-act] [-ppaquet] [-Npaquet] [-Ptmpdir]

DESCRIPTION

       Debhelper facilite la construction des paquets Debian. La philosophie qui sous-tend debhelper est de
       fournir une collection de petits outils simples et facilement compréhensibles qui seront exploités dans
       debian/rules pour automatiser les tâches courantes liées à la construction des paquets, d'où un travail
       allégé pour le responsable. Dans une certaine mesure, cela signifie également que ces outils peuvent être
       adaptés aux modifications éventuelles de la Charte Debian. Les paquets qui utiliseront debhelper ne
       nécessiteront qu'une simple reconstruction pour être conformes aux nouvelles règles.

       Un fichier debian/rules typique, exploitant debhelper, appellera séquentiellement plusieurs des commandes
       de debhelper ou bien utilisera dh(1) pour automatiser ce processus. Des exemples de fichiers debian/rules
       qui exploitent debhelper se trouvent dans /usr/share/doc/debhelper/examples/

       Pour créer un nouveau paquet Debian en utilisant debhelper, il suffit de copier un des fichiers d'exemple
       et de le modifier manuellement. Il est possible également d'essayer le paquet dh-make qui contient une
       commande dh_make automatisant partiellement le processus. Pour se familiariser avec ces concepts, le
       paquet Debian maint-guide contient un cours sur la construction d'un premier paquet avec debhelper.

       Sauf lorsque l'outil explicite le contraire, tous les outils debhelper sont prévus pour être exécutés
       dans le répertoire racine d'un paquet source désarchivé. Cela leur permet de trouver les fichiers
       debian/control.

COMMANDES DE DEBHELPER

       Voici la liste des commandes de debhelper disponibles. Consulter leurs pages de manuel respectives pour
       obtenir des informations complémentaires.

   Commandes obsolètes
       Quelques commandes de debhelper sont obsolètes et ne devraient plus être utilisées.

   Autres commandes
       Si le nom d'un programme commence par dh_ et qu'il n'est pas dans les listes ci-dessus, cela signifie
       qu'il ne fait pas partie de la suite debhelper. Cependant, il devrait tout de même fonctionner comme les
       autres programmes décrits dans cette page.

FICHIERS DE CONFIGURATION DE DEBHELPER

       Beaucoup de commandes de debhelper utilisent des fichiers du répertoire debian/ pour piloter leur
       fonctionnement. Outre les fichiers debian/changelog et debian/control, qui se trouvent dans tous les
       paquets, et pas seulement dans ceux qui emploient debhelper, d'autres fichiers peuvent servir à
       configurer le comportement des commandes spécifiques de debhelper. Ces fichiers sont, en principe, nommés
       debian/paquet.toto (où paquet est, bien sûr, à remplacer par le nom du paquet concerné).

       Par exemple, dh_installdocs utilise un fichier appelé debian/package.docs pour énumérer les fichiers de
       documentation qu'il installera. Consulter les pages de manuel des différentes commandes pour connaître le
       détail des noms et des formats des fichiers employés. D'une façon générale, ces fichiers de configuration
       énumèrent les fichiers sur lesquels devra porter l'action, à raison d'un fichier par ligne. Quelques
       programmes de debhelper emploient des paires fichier/destination voire des formats légèrement plus
       compliqués.

       Noter que s'il n'y a qu'un paquet binaire listé dans debian/control, debhelper utilisera debian/toto
       lorsqu'il n'y a aucun fichier debian/paquet.toto. Dans les niveaux de compatibilité antérieurs à compat\
       15, cette solution de repli se produit aussi pour le premier paquet binaire listé dans debian/control
       quand il y plusieurs paquets binaires. Cependant, c'est une bonne idée de garder le préfixe paquet., car
       c'est plus explicite et requis également lors de la mise à niveau vers compat\ 15.

       En plus, il existe des cas particuliers où debhelper se repliera toujours sur une version sans préfixe.
       Il y a des cas comme debian/copyright ou debian/changelog où les fichiers sont généralement utilisés et
       nécessaires à tous les paquets binaires.

       Dans quelques rares cas, il peut être utile d'exploiter différentes versions de ces fichiers pour des
       architectures ou des systèmes d'exploitation différents. S'il existe des fichiers appelés
       debian/paquet.toto.ARCH ou debian/paquet.toto.OS, dans lesquels ARCH et OS correspondent respectivement
       au résultat de « dpkg-architecture -qDEB_HOST_ARCH » ou de « dpkg-architecture -qDEB_HOST_ARCH_OS »,
       alors ils seront utilisés de préférence aux autres fichiers plus généraux.

       En général, ces fichiers de configuration sont employés pour indiquer des listes de divers types de
       fichiers : documentation, fichiers d'exemple à installer, fichiers à déplacer et ainsi de suite. Lorsque
       cela se justifie, dans des cas comme ceux-ci, il est possible d'employer, dans ces fichiers, les jokers
       (wildcard) standards de l'interpréteur de commandes (shell) (? et * et [..]). Des commentaires peuvent
       être ajoutés dans ces fichiers : les lignes commençant par # sont ignorées.

       La syntaxe de ces fichiers est volontairement simple, pour les rendre faciles à lire, à comprendre et à
       modifier.

   Substitutions dans les fichiers de configuration de debhelper
       À partir du niveau de compatibilité 13, il est possible d'utiliser des substitutions simples dans les
       fichiers de configuration de debhelper pour les outils suivants :

       •   dh_clean

       •   dh_install

       •   dh_installcatalogs

       •   dh_installdeb

       •   dh_installdirs

       •   dh_installdocs

       •   dh_installexamples

       •   dh_installinfo

       •   dh_installman

       •   dh_installwm

       •   dh_link

       •   dh_missing

       •   dh_ucf

       Toutes  les  variables  de  substitution sont de la forme ${toto} et les accolades sont obligatoires. Les
       noms de variable sont sensibles à la casse et sont constitués de caractères alphanumériques  (a-zA-Z0-9),
       tirets (-), tirets bas (_) et deux points (:). Le premier caractère doit être alphanumérique.

       Si  vous  avez  besoin  d'un  dollar  littéral  qui  ne  déclenche  pas une substitution, il est possible
       d'utiliser soit la substitution ${Dollar} soit la séquence ${}.

       Les développements suivants sont disponibles :

       DEB_HOST_*, DEB_BUILD_*, DEB_TARGET_*
           Se développent à la valeur dpkg-architecture(1) adéquate (comme dpkg-architecture -qVARIABLE_HERE).

           En cas de doute, la variante DEB_HOST_* est celle qui fonctionnera à la fois pour  les  constructions
           natives et croisées

           Pour  des  raisons  de  performance,  debhelper  tentera  de  résoudre  d'abord  ces noms à partir de
           l'environnement avant de consulter dpkg-architecture(1). Cela est mentionné  principalement  dans  un
           esprit de complétude, car cela n'a pas d'importance dans la plupart des cas.

       Dollar
           Se  développe  en  un  symbole  $  littéral unique. Ce symbole ne sera jamais considéré comme faisant
           partie d'une variable de substitution. C'est-à-dire :

              # Déclenche une erreur
              ${NO_SUCH_TOKEN}
              # Se développe à la valeur littérale « ${NO_SUCH_TOKEN} »
              ${Dollar}{NO_SUCH_TOKEN}

           Cette variante est l'équivalent de la séquence ${} et les deux sont interchangeables.

       Newline, Space, Tab
           Se développent respectivement en un seul caractère ASCII saut de ligne, une espace et une tabulation.

           Cela peut être utile s'il est nécessaire d'inclure un caractère d'espacement  littéral  (par  exemple
           une espace) là où il serait autrement dépouillé ou utilisé comme un séparateur.

       env:NOM
           Se  développe  en la variable d'environnement NOM. La variable d'environnement doit être réglée (mais
           elle peut être réglée à une chaîne vide).

       Notez que toutes les variables doivent se développer à une valeur définie. Par exemple, si debhelper voit
       ${env:TOTO}, alors, il affirme que la variable d'environnement TOTO est réglée (elle peut être  réglée  à
       une chaîne vide).

       Contraintes des substitutions

       Pour  éviter des boucles infinies et un épuisement de ressources, debhelper s’arrêtera avec une erreur si
       le texte renferme de nombreuses variables de substitution (50) ou si elles se développent  au-delà  d'une
       certaine  taille  (4096 caractères ou trois fois la longueur de l'entrée originale – peu importe laquelle
       est la plus grande).

       Contraintes des substitutions : filtrage

       La fonction de substitution intégrée ne peut pas être utilisée pour « filtrer » le contenu. Une tentative
       pour créer des «\ commentaires\ » ou des « lignes vides » avec la substitution aura pour conséquence  que
       ces variables seront considérées comme un item à part entière avec le contenu donné.

       Si  vous souhaitez utiliser un filtrage, vous devriez envisager d'utiliser un fichier de configuration de
       debhelper exécutable avec dh-exec comme interpréteur. L'outil dh-exec prend en charge plusieurs fonctions
       prêtes à l'emploi. Cependant, gardez à l'esprit que dh-exec a sa propre logique de substitution qui  peut
       interagir avec celle de debhelper.

   Fichiers de configuration de l'exécutable debhelper.
       Si  vous  avez besoin de plus de flexibilité, de nombreux outils de debhelper (par exemple dh_install(1))
       prennent en charge l'exécution d'un fichier de configuration comme un script.

       Pour utiliser cette fonctionnalité,  il  suffit  de  marquer  le  fichier  comme  exécutable  (<chmod  +x
       debian/paquet.install  >).  L'outil  essaiera  de  l'exécuter  et  utilisera la sortie du script. Le plus
       souvent, vous pouvez utiliser dh-exec(1) comme interpréteur du fichier de configuration pour conserver la
       majorité de la syntaxe originale tout en gagnant en flexibilité.

       Lorsque vous utilisez des fichiers de configuration exécutables de debhelper, veuillez vous souvenir  des
       choses suivantes :

       •   Le  fichier  de  configuration  exécutable  doit  se  terminer  avec  succès  (le code de retour doit
           l'indiquer).

       •   À  partir  du  niveau  de  compatibilité 13,  la  sortie  sera  sujette  à  des  substitutions  (voir
           "Substitutions dans les fichiers de configuration de debhelper") lorsque l'outil les prend en charge.
           N'oubliez  d'être  prudent  si  votre  générateur fournit aussi des substitutions parce que cela peut
           provoquer des confusions inutiles. En particulier, l'outil dh-exec, fréquemment utilisé,  possède  sa
           propre prise en charge des substitutions.

           Autrement,  la sortie sera utilisée exactement telle quelle. En particulier, debhelper ne développera
           pas les jokers, ni ne supprimera les commentaires ou les espaces de la sortie qu'il lit. L'outil  dh-
           exec a un filtre de sortie activé par défaut qui retire ce genre de choses.

       Si  vous avez besoin de construire le paquet sur un système de fichiers où l'on ne peut pas désactiver le
       bit d'exécution, vous pouvez utiliser dh-exec(1) et son script strip-output.

OPTIONS PARTAGÉES DE DEBHELPER

       Tous les programmes de debhelper acceptent les options suivantes.

       -v, --verbose
           Mode bavard : afficher les commandes qui modifient le répertoire de construction du paquet.

           Notez que le mode bavard peut aussi  lister  d'autres  commandes  « internes »  qui  n'affectent  pas
           directement le répertoire de construction du paquet.

       --no-act
           Empêche  la construction de s'effectuer réellement. Si cette option est utilisée avec -v, le résultat
           sera l'affichage de ce que la commande aurait fait.

       -a, --arch
           Construit tous les paquets dépendants de l'architecture DEB_HOST_ARCH.

       -i, --indep
           Construit tous les paquets indépendants de l'architecture.

       -ppaquet, --package=paquet
           Construit le paquet nommé paquet. Cette option peut être répétée afin de  faire  agir  debhelper  sur
           plusieurs paquets.

       -s, --same-arch
           Alias obsolète pour -a.

           Cette option est supprimée dans le niveau de compatibilité 12.

       -Npaquet, --no-package=paquet
           Exclut le paquet indiqué du processus de construction, même si l'option -a, -i ou -p l'impliquait.

       --remaining-packages
           Exclut  du  processus de construction les paquets qui ont déjà été construits préalablement par cette
           commande debhelper (c'est-à-dire, si la commande  est  présente  dans  le  journal  de  debhelper  du
           paquet). Par exemple, si vous avez besoin d'invoquer la commande avec des options spéciales seulement
           pour  certains  paquets binaires, utilisez cette option lors de la dernière invocation de la commande
           pour construire le reste des paquets avec les options par défaut.

       -Ptmpdir, --tmpdir=tmpdir
           Utilise le répertoire tmpdir pour construire les paquets. Sinon, par défaut,  le  répertoire  utilisé
           est debian/paquet

       --mainpackage=paquet
           Obsolète :  cette option n'a pas d'utilité pratique dans compat\ 15 ou ultérieur dans la mesure où le
           comportement qu'elle affecte a été supprimé dans compat 15.

           Cette option, peu utilisée, indique à debhelper le  nom  du  « paquet  principal »  pour  lequel  les
           fichiers  debian/toto peuvent être utilisés à la place des fichiers habituels debian/paquet.toto. Par
           défaut, debhelper considère que le « paquet principal » est le premier paquet énuméré dans le fichier
           debian/control.

       -O=option|ensemble
           Cette  option  est  utilisée  par  dh(1)  pour  passer  une  ou  plusieurs  options,  indiquées   par
           l'utilisateur,  à  toutes  les  commandes  exécutées.  Si  la  commande  prend  en charge l'option ou
           l'ensemble d'options, elle prendra effet. Si la commande n'accepte pas l'option  (ou  une  partie  de
           l'ensemble d'options), elle sera ignorée.

OPTIONS COURANTES DE DEBHELPER

       Certains  programmes de debhelper acceptent les options ci-dessous. Consulter la page de manuel de chaque
       programme pour une explication complète du rôle de ces options.

       -n  Ne pas modifier les scripts de maintenance du paquet (postinst, postrm, etc.)

       -Xélément, --exclude=élément
           Permet d'exclure un élément du traitement. Cette  option  peut  être  employée  plusieurs  fois  afin
           d'exclure  plusieurs  éléments.  L'élément  est  en général une partie du nom de fichier, et tous les
           fichiers contenant le texte indiqué seront exclus.

       -A, --all
           Précise que les fichiers (ou autres éléments) indiqués dans la ligne de commande concernent tous  les
           paquets construits et pas seulement le premier.

OPTIONS DU PROCESSUS DE CONSTRUCTION

       Les  programmes  debhelper  dh_auto_*  comportent  plusieurs processus de construction et déterminent, de
       manière heuristique, lequel utiliser et comment. Il peut être  utile  de  modifier  ce  comportement  par
       défaut.  Tous  ces programmes dh_auto_* acceptent les options suivantes, typiquement passées à dh(1), qui
       les passe ensuite à tous les programmes dh_auto_*.

       -Sprocessus de construction, --buildsystem=processus_de_construction
           Oblige  à  utiliser  le  processus  de  construction  indiqué  au  lieu  de  tenter   de   déterminer
           automatiquement celui qui pourrait être utilisable pour le paquet.

           Indique none comme buildsystem pour désactiver la sélection automatique.

       -Drépertoire, --sourcedir=répertoire, --sourcedirectory=répertoire
           Considère  que  les  sources du paquet sont situées dans le répertoire indiqué plutôt qu'au plus haut
           niveau de l'arborescence du paquet source.

           Attention : La variante  --sourcedir  correspond  à  une  option  du  même  nom  dans  dh_install  et
           dh_missing, etc.,  pour  des  raisons  historiques.  Alors  qu'elles  ont  le même nom, elles ont des
           objectifs très différents et, dans certains cas, cela peut provoquer des erreurs quand cette variante
           est passée à dh (quand ensuite il le passe à tous les outils).

       -B[répertoire], --builddir=[répertoire], --builddirectory=[répertoire]
           Permet de construire le paquet en dehors de la structure source en utilisant  le  répertoire  indiqué
           comme  répertoire  de  construction.  Si  le paramètre répertoire n'est pas indiqué, un répertoire de
           construction par défaut sera choisi.

           Si cette option n'est pas indiquée, la construction se fera dans l'arborescence source à moins que le
           processus exige ou préfère le faire en dehors de cette structure. Dans  ce  cas,  le  répertoire  par
           défaut sera utilisé même si --builddirectory n'est pas indiqué.

           Même  si  le  système  préfère  utiliser,  pour  la  construction,  un  répertoire situé en dehors de
           l'arborescence source, il autorise quand même la construction dans l'arborescence source. Pour  cela,
           il  suffit  d'utiliser un chemin d'accès au répertoire de construction identique au chemin d'accès au
           répertoire source.

       --parallel, --no-parallel
           Détermine si la construction parallèle doit être utilisée, si le système sous-jacent  le  permet.  Le
           nombre  de  tâches  parallèles est contrôlé, lors de la construction, par la variable d'environnement
           DEB_BUILD_OPTIONS ("Charte Debian, section 4.9.1"). Ce nombre peut également être soumis aux  limites
           spécifiques du système de construction.

           Si  aucune de ces options n'est précisée, debhelper active la parallélisation par défaut (--parallel)
           dans le niveau de compatibilité 10 (ou supérieur), et la désactive (--no-parallel)  dans  les  autres
           niveaux.

           Pour des raisons d'optimisation, dh essaiera de ne pas passer ces options aux processus fils si elles
           ne  sont  pas  nécessaires  et  qu'elles  sont les seules options. Cela arrive en particulier lorsque
           DEB_BUILD_OPTIONS n'a pas de paramètre parallel (ou si sa valeur est 1).

       --max-parallel=maximum
           Cette option implique --parallel et permet de limiter le nombre de tâches qui pourront  être  lancées
           lors d'une compilation parallèle. Si la construction du paquet est connue pour ne fonctionner qu'avec
           un  certain  niveau  de  parallélisme,  il  est  possible  de  le  régler à la valeur maximale censée
           fonctionner, ou que vous souhaitez mettre en œuvre.

           En particulier, régler le maximum à 1 équivaut à l'utilisation de --no-parallel.

       --reload-all-buildenv-variables
           Par  défaut,  dh(1)  calcule  plusieurs  variables  d'environnement   (par   exemple   en   utilisant
           dpkg-buildflags(1)) et les met en cache pour éviter que tous les outils dh_auto_* les recalculent.

           Lorsque cette option est passée, l'outil réel dh_auto_* ignorera le cache de dh(1) et déclenchera une
           reconstruction  de  ces  variables.  Cela  est  utile  dans le cas très rare où le paquet requiert de
           multiples constructions mais avec des options ...FLAGS différentes. Un exemple concret pourrait  être
           la nécessité de modifier le paramètre -0 dans CFLAGS dans la seconde construction.

               export DEB_CFLAGS_MAINT_APPEND=-O3

               %:
                   dh $@

               override_dh_auto_configure:
                   dh_auto_configure -Bbuild-deb ...
                   DEB_CFLAGS_MAINT_APPEND=-Os dh_auto_configure \
                      --reload-all-buildenv-variables -Bbuild-udeb ...

           Sans  --reload-all-buildenv-variables  dans  le  second appel à dh_auto_configure(1), la modification
           dans DEB_CFLAGS_MAINT_APPEND pourrait être ignorée parce que dh_auto_configure(1)  pourrait  utiliser
           la valeur mise en cache de CFLAGS fixée par dh(1).

           Cette  option est seulement disponible avec debhelper (>= 12.7~) quand le paquet utilise le niveau de
           compatibilité 9 ou supérieur.

       --list, -l
           Liste tous les processus de construction pris en charge par le système. Cette liste inclut à la  fois
           les  processus  par défaut et les processus tiers (marqués comme tels). Cette option montre également
           le processus de construction automatiquement sélectionné ou celui indiqué manuellement avec  l'option
           --buildsystem.

NIVEAUX DE COMPATIBILITÉ

       Parfois,  des  modifications  majeures  de  debhelper doivent être faites et vont briser la compatibilité
       ascendante. Ces modifications sont nécessaires pour conserver à debhelper ses qualités de  conception  et
       d'écriture,  car  les besoins changent et le savoir-faire de l'auteur s'améliore. Pour éviter que de tels
       changements ne cassent les paquets existants, un concept de  niveau  de  compatibilité  debhelper  a  été
       introduit. On devra préciser à debhelper le niveau de compatibilité qu'il doit employer, ce qui modifiera
       son comportement de diverses manières.

       Dans  la  version actuelle de debhelper, vous pouvez spécifier le niveau de compatibilité à utiliser dans
       debian/control en ajoutant une dépendance de construction (Build-Depends) sur le paquet debhelper-compat.
       Par exemple, pour exploiter la version 13, assurez-vous d'indiquer dans debian/control :

         Build-Depends: debhelper-compat (= 13)

       Cela sert aussi à avoir une dépendance de construction sur une version suffisante de debhelper. Ainsi  il
       n'est  pas  nécessaire d'indiquer une dépendance de construction particulière sur debhelper, sauf si vous
       avez besoin d'une mise à jour spécifique (comme pour l'introduction d'une nouvelle fonctionnalité ou  une
       correction de bogue à l'intérieur d'un niveau de compatibilité).

       Veuillez  noter  que debhelper ne fournit pas debhelper-compat pour les niveaux experimental ou bêta. Les
       paquets  qui  souhaitent  expérimenter  ces  niveaux  de  compatibilité  doivent  mettre  le  niveau   de
       compatibilité  dans  le  champ  X-DH-Compat  de  la section Source du fichier debian/control (ou si c'est
       seulement pour des commandes choisies, la variable d'environnement DH_COMPAT).

       Historiquement,  debhelper  nécessitait  d'indiquer  le  niveau  de   compatibilité   dans   le   fichier
       debian/compat,  et  debhelper  jusqu'à  la  version 14  continue  à  le  comprendre  pour  des raisons de
       rétrocompatibilité. Pour utiliser cette méthode, le fichier debian/compat  doit  contenir  le  niveau  de
       compatibilité  comme  une  valeur  entière,  et rien d'autre. Si vous indiquez le niveau de compatibilité
       ainsi, votre paquet aura besoin d'une dépendance de construction versionnée sur une version de debhelper,
       égale (ou supérieure) au niveau de compatibilité utilisé. Ainsi, si  vous  indiquez  le  niveau  13  dans
       debian/compat, assurez-vous que le fichier debian/control contient :

         Build-Depends: debhelper (>= 13~)

       Notez  que  vous  devez  utiliser  exactement  une  méthode  pour spécifier le niveau de compatibilité de
       debhelper par défaut du paquet. Chaque fois que c'est possible, la dépendance de construction  debhelper-
       compat est recommandée.

       Au  besoin,  la  variable  d'environnement  DH_COMPAT  peut  être  utilisée pour outrepasser le niveau de
       compatibilité pour  une  commande  donnée.  Cette  fonction  est  surtout  utile  pour  mettre  à  niveau
       temporairement  quelques  commandes  vers  un  nouveau  niveau  de compatibilité ou pour garder certaines
       commandes à un niveau de compatibilité inférieur. Il vaut mieux utiliser cette fonction  avec  modération
       parce  qu'elle introduit effectivement des cas particuliers dans le fichier debian/rules qui peuvent être
       déconcertants pour les responsables ou les réviseurs (ou, à long terme, pour vous-même).

       Sauf indication contraire, toute la  documentation  de  debhelper  suppose  l'utilisation  du  niveau  de
       compatibilité le plus récent, et, dans la plupart des cas ne précise pas si le comportement est différent
       avec  les  niveaux  de compatibilité antérieurs. De ce fait, si le niveau de compatibilité le plus récent
       n'est pas celui utilisé, il est fortement conseillé de lire les indications ci-dessous qui  exposent  les
       différences dans les niveaux de compatibilité antérieurs.

   Niveaux de compatibilité pris en charge
       La  liste  des  niveaux  de compatibilité pris en charge et la liste de contrôle de mise à niveau ont été
       déplacées dans debhelper-compat-upgrade-checklist(7).

REMARQUES

   Prise en charge de plusieurs paquets binaires
       Si le paquet source produit plus d'un paquet binaire, les programmes de debhelper construiront  tous  les
       paquets  binaires. Si le paquet source doit construire un paquet dépendant de l'architecture et un paquet
       indépendant de l'architecture, ce comportement ne conviendra pas. En effet, il convient de construire les
       paquets dépendants de l'architecture dans la  cible  « binary-arch »  de  debian/rules,  et  les  paquets
       indépendants de l'architecture dans la cible « binary-indep » de debian/rules.

       Pour  résoudre  ce  problème, et pour un meilleur contrôle sur la construction des paquets par debhelper,
       tous les programmes de debhelper acceptent les options -a, -i, -p et -s. Ces options sont cumulatives. Si
       aucune n'est précisée, les programmes de debhelper construisent tous les paquets énumérés dans le fichier
       de contrôle, avec les exceptions ci-dessous.

       Tout d'abord, chaque paquet dont le champ Architecture de debian/control ne contient  pas  l'architecture
       DEB_HOST_ARCH sera exclu ("Charte Debian, section 5.6.8").

       De  plus,  quelques  autres paquets peuvent être exclus suivant le contenu de la variable d'environnement
       DEB_BUILD_PROFILES et les champs Build-Profiles des paragraphes debian/control dans les paquets binaires,
       conformément au brouillon de la charte (voir <https://wiki.debian.org/BuildProfileSpec>).

       Interaction entre les sélections de paquets et les Build-Profiles

       Les profils de construction (« Build-Profiles ») ont un effet sur le choix des paquets  inclus  dans  les
       mécanismes  de  sélection  de  paquets de debhelper. Généralement, les sélections partent du principe que
       tous les paquets sont activés. Cette section décrit comment les sélections fonctionnent lorsqu'un  paquet
       est désactivé par un profil de construction (ou par son absence).

       -a/--arch, -i/--indep ou aucune option de sélection (un simple appel « dh_X »)
           Le paquet désactivé par le profil est silencieusement exclu de la sélection.

           Veuillez noter que vous recevrez un avertissement si tous les paquets relatifs à cette sélection sont
           désactivés. Dans ce cas, il est généralement d'aucune utilité de construire.

       -N paquet / --no-package paquet
           Cette option est acceptée et ne fait rien.

       -p paquet / --package paquet
           Cette option est acceptée, mais debhelper n'agira pas sur le paquet.

       Veuillez noter que cela n'a pas d'importance que le paquet soit activé ou désactivé par défaut.

   Génération automatique des scripts Debian d’installation
       Certaines  commandes de debhelper produisent automatiquement des lignes de code de maintenance du paquet.
       Pour les inclure dans vos propres scripts de maintenance du paquet, il convient d'ajouter  #DEBHELPER#  à
       l'endroit où les lignes de code générées devront être insérées. #DEBHELPER# sera remplacé, par les lignes
       de code générées automatiquement, lors de l'exécution de dh_installdeb.

       Si  un  script de maintenance n'existe pas et que debhelper doit y inclure quelque chose, alors debhelper
       créera le script de maintenance complètement.

       Toutes les commandes de debhelper qui produisent automatiquement  des  lignes  de  code  de  cette  façon
       peuvent inhiber cette production grâce à l'option -n (voir ci-dessus).

       Nota : Les lignes de code insérées seront écrites dans le langage de l'interpréteur de commandes (shell).
       De  ce  fait,  il  est impossible de les placer directement dans un script Perl. Pour les insérer dans un
       script Perl, voici une solution (s'assurer que $1, $2, etc., sont bien définis par la commande set) :

         my $temp="set -e\nset -- @ARGV\n" . << 'EOF';
         #DEBHELPER#
         EOF
         if (system($temp)) {
            my $exit_code = ($? >> 8) & 0xff;
            my $signal = $? & 0x7f;
            if ($exit_code) {
                die("Le script debhelper a échoué avec le code d'erreur : ${exit_code}");
            } else {
                die("Le script debhelper a été tué par le signal : ${signal}");
            }
         }

   Génération automatique des diverses dépendances.
       Certaines commandes de debhelper peuvent nécessiter des dépendances entre le paquet construit et d'autres
       paquets. Par exemple, si dh_installdebconf(1) est employé,  le  paquet  devra  dépendre  de  debconf.  Si
       dh_installxfonts(1)  est  employé,  le  paquet  deviendra dépendant d'une version particulière de xutils.
       Maintenir ces dépendances induites peut être pénible puisqu'elles découlent de la  façon  dont  debhelper
       travaille. C'est pourquoi debhelper offre une solution d'automatisation.

       Toutes  les  commandes  de ce type, outre qu'elles documentent, dans leur page de manuel, les dépendances
       qu'elle induisent, généreront automatiquement une variable de  substitution  nommée  ${misc:depends}.  Si
       cette  variable  est  exploitée  dans  le  dossier  debian/control,  il  sera automatiquement enrichi des
       dépendances induites par debhelper.

       Ce processus est entièrement indépendant de ${shlibs:Depends} standard, produite par dh_makeshlibs(1), et
       de ${perl:Depends} produite par dh_perl(1). Il est également possible de choisir de ne pas  les  utiliser
       si les conjectures de debhelper ne correspondent pas à la réalité.

   Répertoires de construction du paquet
       Par  défaut,  tous  les  programmes  de  debhelper  supposent  que  le répertoire temporaire utilisé pour
       construire l'arborescence des fichiers d'un paquet est debian/paquet.

       Parfois, il peut être souhaitable d'utiliser  un  autre  répertoire  temporaire.  C'est  obtenu  grâce  à
       l'attribut -P. Par exemple, dh_installdocs -Pdebian/tmp utilisera debian/tmp comme répertoire temporaire.
       Nota :  L'usage  de  -P  implique  que les programmes de debhelper ne construisent qu'un seul paquet à la
       fois. De ce fait, si le paquet source génère plusieurs paquets binaires, il faudra employer également  le
       paramètre -p pour préciser l'unique paquet binaire à construire.

   udebs
       Debhelper  prend  en charge la construction des udebs. Pour créer un udeb avec debhelper, il faut ajouter
       « Package-Type: udeb » aux lignes de paquet dans debian/control. Debhelper  essayera  de  construire  des
       udebs,  conformément  aux  règles  de l'installateur Debian, en suffixant les fichiers de paquets générés
       avec .udeb, en n'installant aucune documentation dans un udeb, en omettant les scripts  preinst,  postrm,
       prerm et config, etc.

VARIABLES D'ENVIRONNEMENT

       Cette section décrit certaines des variables d'environnement qui influencent le comportement de debhelper
       ou avec lesquelles debhelper est en interaction.

       Il  est  important  de  noter  que  celles-ci  doivent  être  des  variables  existantes pour affecter le
       comportement de debhelper (pas simplement des variables de Makefile). Pour les définir proprement dans le
       fichier debian/rules, assurez-vous de les exporter (« export »). Par exemple « export DH_VERBOSE ».

       DH_VERBOSE
           Définir à une valeur non vide pour activer le mode bavard. Consultez l'option -v/--verbose  pour  des
           détails.

       DH_QUIET
           Définir  à une valeur non vide pour activer le mode silencieux. Debhelper n'affichera aucune commande
           appelant le système de construction amont, et dh n'affichera aucune des sous-commandes  appelées.  En
           fonction  du  système  de  construction  amont,  cela  pourra  le rendre encore plus silencieux. Cela
           facilite la détection des messages importants, mais rend la sortie inutile en  tant  que  journal  de
           construction.

           Cette valeur est ignorée si DH_VERBOSE est aussi positionnée ou si -v/--verbose est passée.

       DH_COMPAT
           Indiquer  temporairement  le  niveau  de  compatibilité avec lequel debhelper doit fonctionner. Cette
           valeur supplante le niveau de compatibilité par défaut du paquet source.

       DH_NO_ACT
           Mettre cette variable à 1 pour activer le mode simulation (no-act).

       DH_OPTIONS
           Tous les outils de debhelper analyseront les arguments de la ligne  de  commande  listés  dans  cette
           variable avant toute option de commande (comme s'ils avaient été ajoutés au début des arguments de la
           ligne  de  commande).  Malheureusement,  certains outils tiers peuvent ne pas prendre en compte cette
           variable et ignoreront ces arguments.

           En utilisant dh(1), des options peuvent  être  passées  à  chaque  commande  debhelper,  ce  qui  est
           généralement mieux que d'utiliser DH_OPTIONS.

       DH_ALWAYS_EXCLUDE
           Si  cette  variable  possède  une valeur, elle sera ajoutée à l'option -X de toutes les commandes qui
           admettent cette option. De plus, dh_builddeb fera un rm -rf pour  chaque  chose  correspondant  à  la
           valeur dans l'arbre de construction de paquet.

           Cela  peut  être  utile  pour  construire  un paquet à partir d'une arborescence CVS. Dans ce cas, le
           réglage de DH_ALWAYS_EXCLUDE=CVS empêchera les répertoires CVS d'interférer  subrepticement  dans  le
           paquet  en  construction.  Ou,  si un paquet possède une source compressée, (maladroitement) présente
           dans un répertoire CVS, il peut être utile d'exporter DH_ALWAYS_EXCLUDE=CVS dans  debian/rules,  pour
           que cette variable soit prise en compte quel que soit l'endroit où le paquet est construit.

           Des  exclusions  multiples  peuvent  être  séparées  avec  des  caractères  deux  points,  comme dans
           DH_ALWAYS_EXCLUDE=CVS:.svn.

       DH_EXTRA_ADDONS
           Les rajouts à dh indiqués seront exécutés lors de la séquence  de  commandes.  Cela  équivaut  à  les
           indiquer  avec  le  drapeau --with dans le fichier debian/rules. Les rajouts précédés de --without ne
           seront pas exécutés, même s'ils sont indiqués dans cette variable d'environnement.

           Cela est prévu pour être utilisé par les dérivées ou les configurations locales spécifiques  qui  ont
           besoin  d'un  rajout lors de plusieurs construction, sans avoir à modifier un grand nombre de fichier
           rules. Il est préférable d'éviter cette méthode et d'utiliser plutôt  les  drapeaux  --with  dans  le
           fichier rules.

       DH_COLORS, DPKG_COLORS
           Ces  variables  peuvent  être  utilisées  pour  contrôler  comment les commandes de debhelper peuvent
           utiliser la couleur dans leurs sorties textuelles. Les réglages  peuvent  être  « always »,  « auto »
           (par défaut) ou « never ».

           Notez  que  DPKG_COLOR affecte aussi un certain nombre d'outils liés à dpkg et debhelper l'utilise en
           supposant que vous voulez les même réglages de couleur  pour  dpkg  et  debhelper.  Au  cas  où  vous
           voudriez  un  autre  jeu  de couleurs pour debhelper, vous pouvez utiliser DH_COLORS à la place ou en
           plus de DPKG_COLORS.

       NO_COLOR
           Si aucune demande explicite de couleur n'a été passée (par  exemple,  ni  DH_COLORS,  ni  DPKG_COLORS
           n'ont  été  configurées),  la  présence  de  cette  variable  d'environnement fera que le réglage des
           couleurs par défaut sera « never ».

           Cette variable est définie conformément à <https://no-color.org/>.  Dans  ce  projet,  les  variables
           d'environnement (comme DH_COLORS) sont considérées comme une demande explicite de couleur.

       CFLAGS, CPPFLAGS, CXXFLAGS, OBJCFLAGS, OBJCXXFLAGS, GCJFLAGS, FFLAGS, FCFLAGS, LDFLAGS
           Par  défaut  (dans  tout niveau de compatibilité non obsolète), debhelper réglera automatiquement ces
           paramètres en utilisant dpkg-buildflags(1) quand ils ne sont pas  définis.  S'il  est  nécessaire  de
           changer  les  paramètres  par  défaut,  veuillez utiliser les fonctions de dpkg-buildflags(1) pour le
           faire           (par           exemple,           DEB_BUILD_MAINT_OPTIONS=hardening=all            ou
           DEB_CPPFLAGS_MAINT_APPEND=-DCUSTOM_MACRO=true)  au  lieu  de  configurer  directement  les  variables
           concrètes.

       HOME, XDG_*
           À partir du niveau de compatibilité 13,  ces  variables  d'environnement  sont  réinitialisées  avant
           d'invoquer  le  système de construction amont à l'aide des outils dh_auto_*. Les variables HOME (pour
           tout outil dh_auto_*) et  XDG_RUNTIME_DIR  (pour  dh_auto_test  seulement)  seront  réglées  dans  un
           répertoire  accessible  en  écriture.  Toutes  les  autres  variables et XDG_RUNTIME_DIR (sauf durant
           dh_auto_test) seront vidées.

           Le répertoire HOME sera créé comme un répertoire vide mais il  sera  réutilisé  entre  les  appels  à
           dh_auto_*.  Tout  son  contenu  restera  jusqu'à  ce  qu'il  soit  explicitement  supprimé ou jusqu'à
           l'exécution de dh_clean.

       DEB_BUILD_OPTIONS
           Veuillez consulter "Paramètres pris en charge dans DEB_BUILD_OPTIONS" pour cet environnement.

           Veuillez noter que cette variable ne devrait pas être modifiée par les responsables  de  paquet  dans
           debian/rules  pour changer le comportement de debhelper. Ils devraient plutôt rechercher à désactiver
           la fonction correspondante directement (par exemple en surchargeant les outils spécifiques).

       DEB_BUILD_MAINT_OPTIONS
           C'est une variable d'environnement spécifique à dpkg (voir par exemple dpkg-buildflags(1)). La  suite
           d'outils de debhelper l'ignore silencieusement.

           Cela  est  documenté  ici  parce  qu'elle porte un nom identique à DEB_BUILD_OPTIONS, ce qui fait que
           certaines personnes pensent par erreur que debhelper réagit aussi à cette variable.

   Paramètres pris en charge dans DEB_BUILD_OPTIONS
       La suite d'outils de debhelper réagit aux paramètres suivants dans DEB_BUILD_OPTIONS.

       dherroron=obsolete-compat-levels
           C'est une valeur spécifique à debhelper.

           Quand dherroron est présent  et  réglé  à  obsolete-compat-levels,  alors  les  outils  de  debhelper
           présenteront  dans les erreurs des alertes sur l'utilisation des niveaux de compatibilité anciens sur
           le point d'être obsolètes

           C'est utile pour la vérification automatique de code se basant sur des niveaux de compatibilité  dont
           la suppression est programmée.

           Cette option est destinée aux tests et non aux constructions pour la production.

       nostrip
           Cette  valeur  changera le contenu des paquets .deb en construction. Les paquets .deb construits avec
           ce réglage ne seront donc pas reproductibles bit à bit par rapport à une construction normale en  cas
           général.

           Cette  valeur  fera  que  les  outils officiels de debhelper ignoreront les actions et les outils qui
           suppriment, détachent ou dédoublent les symboles de débogage dans les binaires ELF.

           Cette valeur affecte dh_dwz(1) et dh_strip(1).

       nocheck
           Cette valeur fera que les systèmes de construction officiels de debhelper ignoreront l'exécution  des
           suites de tests de l'amont.

           Les  responsables  de  paquet  cherchant  à  éviter l'exécution des tests de l'amont ne devraient pas
           recourir à cela. Ils peuvent plutôt ajouter une cible de réécriture vide pour ignorer dh_auto_test.

           Cette valeur affecte dh_auto_test(1).

       nodoc
           Cette valeur changera le contenu des paquets .deb en construction. Les paquets .deb  construits  avec
           ce  réglage ne seront donc pas reproductibles bit à bit par rapport à une construction normale en cas
           général.

           Cette valeur fera que plusieurs outils de debhelper ignoreront l'installation de documentation  comme
           les pages de manuel ou la documentation fournie par l'amont. En plus, les outils ne sauront pas si la
           documentation  déclarée  est  « missing »  en  partant  du  principe que la documentation n'a pas été
           construite.

           Cette  valeur  affecte  des  outils  comme  dh_installdocs(1)  qui  sait  qu'il  travaille   sur   la
           documentation.

       notrimdch
           Cette  valeur  changera le contenu des paquets .deb en construction. Les paquets .deb construits avec
           ce réglage ne seront donc pas reproductibles bit à bit par rapport à une construction normale en  cas
           général.

           Cette  valeur  fera  que  dh_installchangelogs(1)  agira  comme  s'il  avait  été passé avec l'option
           --no-trim, l'obligeant à renoncer à supprimer les entrées anciennes des journaux de modification.

       noautodbgsym, noddebs
           Le nom officiel est noautodbgsym. La variante noddebs est acceptée pour des raisons historiques.

           Cette valeur fait que debhelper ignore la création  des  paquets  de  symboles  de  débogage  générés
           automatiquement.

           Cette valeur affecte dh_strip(1).

       parallel=N
           Cette  valeur  à  permet debhelper d'utiliser jusqu'à N threads ou processus (soumis à des paramètres
           comme --no-parallel et --max-parallel=M). Tous les outils de debhelper ne fonctionnent pas  avec  des
           tâches parallèles et peuvent ignorer silencieusement la requête.

           Cette  valeur  affecte  de  nombreux  outils  de  debhelper  et  en particulier dh_auto_* qui tentera
           d'exécuter le système de construction amont sous-jacent avec ce nombre de threads.

       terse
           Cette  valeur  fera  que  les  systèmes  de  construction  officiels  de  debhelper  configurent  les
           constructions  de  l'amont  pour  qu'elles  soient laconiques (c'est-à-dire réduisent la prolixité de
           leurs sorties). Cela est subordonné à la prise en charge par les systèmes de construction de  l'amont
           et de debhelper de ces fonctionnalités.

           Cette  valeur  affecte  directement  surtout les outils dh_auto_*. Pour les commandes fournies par le
           paquet debhelper, il fait aussi que les outils agissent comme si la variable d'environnement DH_QUIET
           n'était pas vide.

       Les paramètres inconnus sont ignorés silencieusement.

       Veuillez noter que les outils tiers dans le style de debhelper ou les systèmes  de  construction  fournis
       par  des  tiers  peuvent  réagir  ou  non  aux paramètres ci-dessus. Cela dépend généralement des détails
       d'implémentation des outils

VOIR AUSSI

       debhelper-compat-upgrade-checklist(7)
           Liste des niveaux de compatibilité pris en charge et une liste de contrôle  de  mise  à  niveau  pour
           chacun d'entre eux.

       /usr/share/doc/debhelper/examples/
           Un ensemble d'exemples de fichiers debian/rules qui utilisent debhelper.

       <http://joeyh.name/code/debhelper/>
           Le site internet 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> ».

13.24.2ubuntu1                                     2025-05-22                                       debhelper(7)