Provided by: dpkg-dev_1.19.7ubuntu2_all bug

NOM

       dpkg-buildpackage - Construire depuis les sources des paquets binaires ou sources

SYNOPSIS

       dpkg-buildpackage [option...]

DESCRIPTION

       dpkg-buildpackage  est  un  programme qui permet d'automatiser la construction d'un paquet
       Debian. Il comporte les étapes suivantes :

       1. Préparation de l'environnement de compilation par positionnement de diverses  variables
          d'environnement  (voir  VARIABLES D'ENVIRONNEMENT), exécution du point d'entrée init et
          appel de dpkg-source --before-build (sauf si -T ou --target ont été utilisés).

       2. Contrôle des dépendances de construction et des conflits de construction (non  effectué
          si -d ou --no-check-builddeps sont utilisés).

       3. Si  une  ou  plusieurs  cibles  particulières  ont été indiquées avec les options -T ou
          --target, appel de ces cibles et arrêt. Dans  le  cas  contraire,  exécution  du  point
          d'entrée   preclean   et  appel  de  fakeroot  debian/rules  clean  pour  nettoyage  de
          l'arborescence source (sauf si -nc ou --no-pre-clean ont été utilisés).

       4. Exécution du point d'entrée source et appel de dpkg-source  -b  pour  créer  le  paquet
          source  (si  une  construction  source  a  été  demandée  avec  --build  ou des options
          équivalentes).

       5. Exécution du point d'entrée build et appel de debian/rules build-target, puis exécution
          du  point  d'entrée  binary  suivie de fakeroot debian/rules binary-target (sauf si une
          construction  source  seule  a  été  demandée  avec  --build=source  ou   des   options
          équivalentes).  Noter  que build-target et binary-target sont soit build et binary (cas
          par défaut, ou si une construction any et all  a  été  demandée  avec  --build  ou  des
          options  équivalentes),  soit build-arch et binary-arch (si une construction any et pas
          all a été demandée avec --build ou  des  options  équivalentes),  soit  build-indep  et
          binary-indep  (si  une  construction  all et pas any a été demandée avec --build ou des
          options équivalentes).

       6. Exécution du point d'entrée buildinfo et  appel  de  dpkg-genbuildinfo  pour  créer  un
          fichier   .buildinfo.  De  nombreuses  options  de  dpkg-buildpackage  sont  passées  à
          dpkg-genbuildinfo.

       7. Exécution du point d'entrée changes et appel de dpkg-genchanges pour créer  un  fichier
          .changes.  Le  nom  du  fichier .changes dépendra du type de construction et sera aussi
          spécifique que nécessaire mais pas plus ; pour une construction qui inclut any, le  nom
          sera  nom-de-source_version-binaire_architecture.changes,  ou pour une construction qui
          inclut  all,  le  nom  sera  nom-de-source_version-binaire_all.changes,  ou  pour   une
          construction         qui         inclut        source,        le        nom        sera
          nom-de-source_version-source_sources.changes.     De     nombreuses     options      de
          dpkg-buildpackage sont passées à dpkg-genchanges.

       8. Exécution du point d'entrée postclean et si -tc ou --post-clean sont utilisés, appel de
          fakeroot debian/rules clean à nouveau.

       9. Appel de dpkg-source --after-build.

       10.
          Exécution du point d'entrée check et appel d'un contrôleur de paquet  pour  le  fichier
          .changes  (dans  le  cas  où  une commande est spécifiée dans DEB_CHECK_COMMAND ou avec
          --check-command).

       11.
          Exécution du point d'entrée sign et appel de gpg2 ou de gpg (à condition que ce ne soit
          pas une construction pour UNRELEASED, ou si --no-sign est spécifié), pour signature des
          fichiers .dsc (sauf si -us ou si --unsigned-source sont spécifiés), .buildinfo (sauf si
          -ui,  --unsigned-buildinfo, -uc ou --unsigned-changes sont spécifiés) et .changes (sauf
          si -uc ou --unsigned-changes sont spécifiés).

       12.
          Exécution du point d'entrée done.

OPTIONS

       Toutes les options longues peuvent être spécifiées  à la fois sur la ligne de commande  et
       dans  les  fichiers  de  configuration utilisateur et de système dpkg-buildpackage. Chaque
       ligne du fichier de configuration est soit une option (identique à une option en ligne  de
       commande mais sans tiret), soit un commentaire (si elle commence par « # »).

       --build=type
              Indique  le type de construction à partir d'une liste de composants séparés par des
              virgules (depuis dpkg 1.18.5). Passé à dpkg-genchanges.

              Les valeurs autorisées sont :

              source Construit le paquet source. Note : quand cette  valeur  est  utilisée  toute
                     seule et si ce que vous voulez est seulement (re)construire le paquet source
                     à partir d'une arborescence des sources  propre,  l'utilisation  directe  de
                     dpkg-source  est  toujours  une  meilleure  option dans la mesure où cela ne
                     demande pas l'installation de dépendances de  construction  qui  sont  sinon
                     nécessaires pour pouvoir appeler la cible clean.

              any    Construit les paquets binaires spécifiques à l'architecture.

              all    Construit les paquets binaires indépendants de l'architecture.

              binary Construit   les   paquets   binaires   particuliers   et   indépendants   de
                     l'architecture. C'est un alias de any,all.

              full   Construction complète. C'est un alias de source,any,all, et il est identique
                     au cas par défaut où aucune option de construction n'est indiquée.

       -g     Équivalent de --build=source,all (depuis dpkg 1.17.11).

       -G     Équivalent de --build=source,any (depuis dpkg 1.17.11).

       -b     Équivalent de --build=binary ou --build=any,all.

       -B     Équivalent de --build=any

       -A     Équivalent de --build=all.

       -S     Équivalent à --build=source.

       -F     Équivalent de --build=full, --build=source,binary ou --build=source,any,all (depuis
              dpkg 1.15.8).

       --target=cible[,...]
       --target cible[,...]
       -T, --rules-target=cible
              Appelle debian/rules cible une fois par cible spécifiée, après avoir mis  en  place
              l'environnement  de  construction  (sauf  pour appeler dpkg-source --before-build),
              puis interrompt le processus de construction  (depuis  dpkg 1.15.0,  option  longue
              depuis  dpkg 1.18.8,  pris  en  charge de multiples cibles depuis dpkg 1.18.16). Si
              --as-root est également utilisé, la commande sera exécutée avec les  privilèges  du
              superutilisateur   (voir   --root-command).  Noter  que  les  cibles  connues  dont
              l'exécution par root est imposée n'ont pas besoin de cette option (c'est-à-dire les
              cibles clean, binary, binary-arch et binary-indep).

       --as-root
              N'est  utile qu'avec --target (depuis dpkg 1.15.0). Impose d'exécuter la cible avec
              les privilèges du superutilisateur.

       -si
       -sa
       -sd
       -vversion
       -Cdescription-des-changements
       -m, --release-by=adresse-du-responsable
       -e, --build-by=adresse-du-responsable
              Passé tel quel à dpkg-genchanges. Voir sa page de manuel.

       -a, --host-arch architecture
              Précise l'architecture Debian pour laquelle  on  construit  (option  longue  depuis
              dpkg 1.17.17).   L'architecture  de  la  machine  sur  laquelle  on  construit  est
              automatiquement déterminée ; c'est aussi l'architecture par défaut  de  la  machine
              hôte.

       -t, --host-type type-de-système-gnu
              Précise  le  type  de  système  GNU  pour  lequel  construire (option longue depuis
              dpkg 1.17.17). Il peut être utilisé à la  place  de  --host-arch  ou  en  tant  que
              complément  afin  de  remplacer le type de système GNU par défaut de l'architecture
              Debian hôte.

       --target-arch architecture
              Précise l'architecture Debian pour laquelle les binaires compilés  vont  construire
              (depuis dpkg 1.17.17). La valeur par défaut est l'architecture de la machine hôte.

       --target-type type-de-système-gnu
              Précise  le  type  de système GNU pour lequel les binaires compilés vont construire
              (depuis dpkg 1.17.17). Il peut être utilisé à la place de --target-arch ou en  tant
              que   complément   afin  de  remplacer  le  type  de  système  GNU  par  défaut  de
              l'architecture Debian cible.

       -P, --build-profiles=profil[,...]
              Précise le ou les profils que l'on construit, sous forme d'une  liste  séparée  par
              des   virgules   (depuis   dpkg 1.17.2,   option  longue  depuis  dpkg 1.18.8).  Le
              comportement par défaut est de construire pour un profil non spécifique.  Cela  les
              définit  également  (sous la forme d'une liste séparée par des espaces) en tant que
              variable  d'environnement  DEB_BUILD_PROFILES,  ce  qui  permet,  par  exemple,  au
              fichiers   debian/rules   d'utiliser   cette  information  pour  des  constructions
              conditionnelles.

       -j, --jobs[jobs|auto]
              Nombre de processus simultanés qui  peuvent  être  exécutés,  nombre  de  processus
              correspondant  au  nombre  de  processeurs  en  ligne  si auto est indiquée (depuis
              dpkg 1.17.10), ou un nombre illimité  si  jobs  n'est  pas  indiqué,  équivalent  à
              l'option   make(1)   du   même   nom  (depuis  dpkg 1.14.7,  option  longue  depuis
              dpkg 1.18.8). S'ajoutera tout seul à la variable  d'environnement  MAKEFLAGS,  afin
              que  les  appels  suivants de make en héritent, forçant donc le paramètre parallèle
              sur l'empaquetage (et éventuellement le système de construction amont s'il  utilise
              make)  indépendamment  de  leur prise en charge des constructions parallèle, ce qui
              pourrait provoquer des  échecs  de  construction.  Ajoute  aussi  parallel=jobs  ou
              parallel à la variable d'environnement DEB_BUILD_OPTIONS ce qui permet aux fichiers
              debian/rules d'utiliser cette information pour leurs propres besoins. La valeur  de
              j remplacera les options parallel=jobs ou parallel dans la variable d'environnement
              DEB_BUILD_OPTIONS. Notez que la valeur auto sera remplacée par le  nombre  réel  de
              processeurs  actuellement  actifs,  et par conséquent ne sera pas transmise à aucun
              processus fils. Si le nombre de processeurs en ligne ne peut pas être déduit, alors
              le  code utilisera par défaut une exécution sérielle (depuis dpkg 1.18.15), même si
              cela ne devrait arriver que sur des systèmes exotiques et non pris en charge.

       -J, --jobs-try[=tâches|auto]
              Cette option (depuis dpkg 1.18.2, option longue depuis dpkg 1.18.8) est équivalente
              à  l'option  -j sauf qu'elle ne configure pas la variable d'environnement MAKEFLAGS
              et, à ce titre, il est plus sûr de l'utiliser avec tous les paquets y compris  ceux
              qui ne sont pas sécurisés pour une construction parallèle.

              Le  comportement  par  défaut  est  auto  (depuis dpkg 1.18.11). Fixer le nombre de
              tâches à 1 rétablira un comportement sériel.

       -D, --check-builddeps
              Vérification des dépendances de constructions et des conflits ; se termine  en  cas
              de problèmes (option longue depuis dpkg 1.18.8). C'est le comportement par défaut.

       -d, --no-check-builddeps
              Pas de vérification des dépendances de constructions et des conflits (option longue
              depuis dpkg 1.18.8).

       --ignore-builtin-builddeps
              Pas de vérification des dépendances  de  constructions  internes  et  des  conflits
              (depuis   dpkg 1.18.2).  Il  s'agit  des  dépendances  de  construction  implicites
              spécifiques à la distribution habituellement  requises  dans  un  environnement  de
              construction, c'est l'ensemble de paquets appelé Build-Essentiel.

       --rules-requires-root
              Pas de prise en compte du champ Rules-Requires-Root, retour à l'ancienne valeur par
              défaut (depuis dpkg 1.19.1).

       -nc, --no-pre-clean
              Pas de nettoyage de l'arborescence des sources avant la construction (option longue
              depuis  dpkg 1.18.8).  Implique  -b  si aucune des options -F, -g, -G, -B, -A ou -S
              n'est utilisée). Implique -d avec -S (depuis dpkg 1.18.0).

       --pre-clean
              Nettoyage de l'arborescence des sources avant la construction (depuis dpkg 1.18.8).
              C'est le comportement par défaut.

       -tc, --post-clean
              Nettoyage      de      l'arborescence      des      sources      (en      utilisant
              commande-pour-obtenir-privilèges-de-root debian/rules clean) après la  construction
              du paquet (option longue depuis dpkg 1.18.8).

       --no-post-clean
              Pas  de  nettoyage  de  l'arborescence  des sources après la construction du paquet
              (depuis dpkg 1.19.1). C'est le comportement par défaut.

       -r, --root-command=commande-pour-obtenir-privilèges-de-root
              Quand dpkg-buildpackage doit exécuter une partie du processus  de  construction  en
              tant      que     root,     il     préfixe     la     commande     exécutée     par
              commande-pour-obtenir-privilèges-de-root, si une a  été  spécifiée  (option  longue
              depuis  dpkg 1.18.8). Si ce n'est pas le cas alors fakeroot est utilisé par défaut.
              commande-pour-obtenir-privilèges-de-root doit débuter par  le  nom  d'un  programme
              accessible  depuis  PATH et avoir comme arguments le nom de la commande réelle avec
              les arguments qu'elle doit prendre.  commande-pour-obtenir-privilèges-de-root  peut
              recevoir  des  paramètres  (ils  doivent  être  séparés par des espaces) mais aucun
              métacaractère     de      l'interpréteur      de      commandes.      Classiquement
              commande-pour-obtenir-privilèges-de-root  devrait  être  fakeroot,  sudo,  super ou
              really. su ne va pas, puisque ce programme peut uniquement utiliser  l'interpréteur
              de  commandes  de  l'utilisateur avec l'option -c au lieu de passer directement les
              arguments à la commande qui doit être exécutée.

       -R, --rules-file=fichier-rules
              Construire un paquet Debian  implique  généralement  l'invocation  de  debian/rules
              comme  une  commande  avec  de  nombreux  paramètres standard (depuis dpkg 1.14.17,
              option longue depuis dpkg 1.18.8). Avec cette option, il est possible d'utiliser un
              autre programme à utiliser pour la construction de paquet (ainsi que ses paramètres
              séparés par des espaces). Une autre utilisation possible est d'exécuter le  fichier
              rules   standard   avec   un   autre  programme  make  (par  exemple  en  utilisant
              /usr/local/bin/make -f debian/rules comme fichier-rules).

       --check-command=commande-contrôleur
              Commande utilisée  pour  vérifier  le  fichier  .changes  lui-même  et  tout  objet
              construit référencé dans le fichier (depuis dpkg 1.17.6). La commande peut recevoir
              comme argument le nom de chemin de .changes. Cette commande est en général lintian.

       --check-option=opt
              Passer  l'option  opt  à  commande-contrôleur  indiquée  par  DEB_CHECK_COMMAND  ou
              --check-command (depuis dpkg 1.17.6). Peut être utilisé plusieurs fois.

       --hook-nom-de-point-d'entrée=commande-de-point-d'entrée
              Définir  le code spécifié de l'interpréteur de commandes commande-de-point-d'entrée
              comme point d'entrée nom-de-point-d'entré qui sera exécuté  aux  moments  spécifiés
              par  les  étapes  d'exécution  (depuis  dpkg 1.17.6).  Les  points  d'entrée seront
              toujours exécutés même si l'action suivante n'est pas effectuée (sauf pour le point
              d'entrée  binary).  Tous  les  points  d'entrée  seront exécutés dans le répertoire
              source dépaqueté.

              Note :  Les  points  d'entrée  sont  susceptibles  d'affecter   le   processus   de
              construction  et  provoquer des échecs de construction si leurs commandes échouent,
              donc attention aux conséquences inattendues.

              Les nom-de-point-d'entrée actuellement pris en charge sont :

              init preclean source build binary buildinfo changes postclean check sign done

              La commande-point-d'entrée gère les chaînes de formatage de substitution suivantes,
              qui lui sont appliquées avant exécution :

              %%     Un caractère % seul.

              %a     Une   valeur  booléenne  (0 ou 1)  qui  indique  si  l'action  suivante  est
                     effectuée.

              %p     Nom du paquet source.

              %v     La version du paquet source.

              %s     La version du paquet source (sans l'« epoch »).

              %u     La version amont.

       --buildinfo-option=opt
              Passer l'option opt à dpkg-genbuildinfo (depuis dpkg 1.18.11).  Peut  être  utilisé
              plusieurs fois.

       -p, --sign-command=commande-de-signature
              Quand dpkg-buildpackage doit exécuter GPG pour signer un fichier source de contrôle
              (.dsc) ou un fichier .changes, il exécute  commande-de-signature  (recherchée  dans
              PATH  si  nécessaire)  au  lieu  de gpg2 ou gpg (option longue depuis dpkg 1.18.1).
              commande-de-signature reçoit tous les paramètres  qu'auraient  reçu  gpg2  ou  gpg.
              commande-de-signature  ne  devra  pas  contenir  d'espace ni aucun métacaractère de
              l'interpréteur de commandes.

       -k, --sign-key=identifiant-clé
              Préciser une clé pour la signature des paquets (option longue depuis dpkg 1.18.8).

       -us, --unsigned-source
              Ne pas signer le paquet source (option longue depuis dpkg 1.18.8).

       -ui, --unsigned-buildinfo
              Ne pas signer le fichier .buildinfo (depuis dpkg 1.18.19).

       -uc, --unsigned-changes
              Ne signer ni le fichier .buildinfo, ni le fichier .changes  (option  longue  depuis
              dpkg 1.18.8).

       --no-sign
              Aucune  signature  de fichier, y compris du paquet source, du fichier .buildinfo et
              du fichier .changes (depuis dpkg 1.18.20).

       --force-sign
              Forcer la signature des fichiers produits (depuis  dpkg 1.17.0)  indépendamment  de
              -us,  --unsigned-source,  -ui,  --unsigned-buildinfo,  -uc,  --unsigned-changes  ou
              d'autres heuristiques internes.

       -sn
       -ss
       -sA
       -sk
       -su
       -sr
       -sK
       -sU
       -sR
       -i, --diff-ignore[=expression-rationnelle]
       -I, --tar-ignore[=motif]
       -z, --compression-level=niveau
       -Z, --compression=compression
              Chaîne passée telle quelle à dpkg-source. Voir la page de manuel correspondante.

       --source-option=opt
              Passer l'option opt à dpkg-source (depuis dpkg 1.15.6). Peut être utilisé plusieurs
              fois.

       --changes-option=opt
              Passer  l'option  opt  à  dpkg-genchanges  (depuis  dpkg 1.15.6). Peut être utilisé
              plusieurs fois.

       --admindir=répertoire
       --admindir rép
              Changer l'endroit où se trouve la base de données de dpkg (depuis dpkg 1.14.0). Par
              défaut, c'est /var/lib/dpkg.

       -?, --help
              Affiche un message d'aide puis quitte.

       --version
              Affiche le numéro de version puis quitte.

ENVIRONNEMENT

   Environnement externe
       DEB_CHECK_COMMAND
              Si cette option est utilisée, elle le sera comme commande pour contrôler le fichier
              .changes (depuis dpkg 1.17.6). Remplacée par l'option --check-command.

       DEB_SIGN_KEYID
              Si cette option est utilisée, elle le sera pour la signature des fichiers  .changes
              et .dsc (depuis dpkg 1.17.2). Remplacée par l'option --sign-key.

       DEB_BUILD_OPTIONS
              Si  cette  option  est  utilisée, elle contiendra une liste séparée par des espaces
              d'options qui pourraient affecter le processus de construction dans debian/rules et
              le comportement de certaines commandes de dpkg.

              La variable DEB_CHECK_COMMAND sera ignorée avec nocheck. Avec parallel=N les tâches
              parallèles seront fixées à N, remplacée par l'option --jobs-try.

       DEB_BUILD_PROFILES
              Si cette option est utilisée, elle sera utilisée comme  profil(s)  de  construction
              actif(s)  pour le paquet à construire (depuis dpkg 1.17.2). C'est une liste séparée
              par des espaces de noms de profil. Cette option est outrepassée par l'option -P.

       DPKG_COLORS
              Définit le mode de couleur (depuis dpkg 1.18.5). Les valeurs actuellement acceptées
              sont auto (par défaut), always et never.

       DPKG_NLS
              Si  cette  variable est définie, elle sera utilisée pour décider l'activation de la
              prise en charge des langues (NLS – Native Language Support), connu aussi  comme  la
              gestion  de  l'internationalisation  (ou  i18n)  (depuis  dpkg 1.19.0). Les valeurs
              permises sont : 0 et 1 (par défaut).

   Environnement interne
       Même si dpkg-buildpackage exporte certaines variables, debian/rules ne doit  pas  dépendre
       de  leur  présence,  mais  doit  préférablement  utiliser  l'interface correspondante pour
       retrouver les valeurs nécessaires, parce que ce fichier est le  point  d'entrée  principal
       pour la construction des paquets et son exécution autonome devrait être prise en charge.

       DEB_BUILD_*
       DEB_HOST_*
       DEB_TARGET_*
              dpkg-architecture  est  lancé  avec  les  paramètres  de  -a  et -t. Toute variable
              retournée par l'option -s est intégrée dans l'environnement de construction.

       DEB_RULES_REQUIRES_ROOT
              Cette variable est fixée à la valeur obtenue du champ Rules-Requires-Root ou de  la
              ligne  de  commande. Lorsqu'elle est configurée, ce sera une valeur valable pour le
              champ Rules-Requires-Root. Elle est utilisée pour indiquer  à  debian/rules  si  la
              spécification rootless-builds.txt est prise en charge.

       DEB_GAIN_ROOT_CMD
              Cette  valeur  est  fixée  à  commande-pour-obtenir-privilèges-de-root  si le champ
              Rules-Requires-Root est fixé à une valeur différente de no ou binary-targets.

       SOURCE_DATE_EPOCH
              Cette valeur est fixée à l'horodatage d'Unix  depuis  « l'epoch »  de  la  dernière
              entrée de debian/changelog, si elle n'a pas déjà été définie.

FICHIERS

       /etc/dpkg/buildpackage.conf
              Fichier de configuration pour l'ensemble du système

       $XDG_CONFIG_HOME/dpkg/buildpackage.conf ou
       $HOME/.config/dpkg/buildpackage.conf
              Fichier de configuration propre à l'utilisateur

NOTES

   Les drapeaux de compilation ne sont plus exportés.
       Entre   les  versions 1.14.17  et 1.16.1,  dpkg-buildpackage  exportait  les  drapeaux  de
       compilation (CFLAGS, CXXFLAGS, FFLAGS, CPPFLAGS et LDFLAGS) avec les valeurs que renvoyait
       dpkg-buildflags. Cela n'est plus le cas.

   Cibles construites par défaut
       dpkg-buildpackage  utilise  les  cibles  build-arch et build-indep depuis dpkg 1.16.2. Ces
       cibles sont donc obligatoires. Cependant, pour éviter de casser les paquets  existants  et
       faciliter  la  transition,  si  le  paquet  source  ne construit pas à la fois les paquets
       binaires indépendants et dépendants de l'architecture (depuis dpkg 1.18.8), la cible build
       sera  utilisée par défaut si make -f debian/rules -qn build-target renvoie 2 comme code de
       retour.

BOGUES

       On devrait pouvoir mettre des espaces et des métacaractères  du  shell  et  les  arguments
       initiaux de commande-pour-obtenir-privilèges-de-root et commande-de-signature.

VOIR AUSSI

       dpkg-source(1), dpkg-architecture(1), dpkg-buildflags(1), dpkg-genbuildinfo(1),
       dpkg-genchanges(1), fakeroot(1), lintian(1), gpg2(1), gpg(1).

TRADUCTION

       Ariel VARDI <ariel.vardi@freesbee.fr>, 2002. Philippe Batailler, 2006. Nicolas François,
       2006. Veuillez signaler toute erreur à <debian-l10n-french@lists.debian.org>.