Provided by: kernel-package_13.018+nmu1_all bug

NOM

       kernel-pkg.conf - Fichier de configuration pour make-kpkg

SYNOPSIS

       /etc/kernel-pkg.conf ou ~/.kernel-pkg.conf

DESCRIPTION

       Les  fichiers /etc/kernel-pkg.conf ou ~/.kernel-pkg.conf sont en fait des morceaux de code
       de type Makefile inclus dans le processus de construction du paquet du noyau. Vous pourrez
       inclure  de  la  sorte  n'importe  quelle  directive de Makefile dans ce fichier (vérifiez
       simplement que vous savez vraiment  ce  que  vous  faites).  S'il  existe  un  fichier  de
       configuration  utilisateur  ~/.kernel-pkg.conf,  il  sera  prioritaire  sur  le fichier de
       configuration du système /etc/kernel-pkg.conf.

       Toutes les variables ont des valeurs raisonnables par défaut et peuvent être  outrepassées
       ponctuellement   ou   sur   la   base  de  choix  de  l'utilisateur  grâce  aux  variables
       d'environnement. Certaines de ces variables peuvent de plus être  modifiées  grâce  à  des
       options de make-kpkg.

       Les variables actuellement modifiables par l'utilisateur sont les suivantes :

       maintainer
              Responsable  local  des  paquets  kernel-*  (image,  entêtes, documentations, etc.)
              Défini lors de l'installation du paquet par le script de postinstallation.  Il  est
              possible  de  l'outrepasser  grâce  à  la variable d'environnement KPKG_MAINTAINER.
              Veuillez noter que  tout  signe  de  type  « ' »  doit  être  protégé,  comme  dans
              maintainer = John O'\”Brien. Oui, ce n'est pas terrible, mais ça marche.

       email  L'adresse  électronique de cette personne. Définie lors de l'installation du paquet
              par le script de postinstallation. Il est possible  de  l'outrepasser  grâce  à  la
              variable d'environnement KPKG_EMAIL.

       pgp    La  clef  d'identification  à  utiliser pour signer le paquet. En général fournie à
              dpkg-buildpackage grâce à l'option -k, ainsi qu'aux modules de tierces parties  par
              la  variable d'environnement KMAINT, si ces modules séparés (tels que pcmcia, etc.)
              sont construits dans le $MODULE_PATH. Il est possible de l'outrepasser grâce  à  la
              variable  d'environnement PGP_SIGNATURE, et il peut être (à nouveau) outrepassé par
              l'option --pgpsign de make-kpkg. Valeur par défaut : maintainer. (Optionnel)

       debian Version des paquets du noyau, incluant aussi les versions officielles (upstream) et
              les   modifications   de   Debian.   Modifiable  par  la  variable  d’environnement
              DEBIAN_REVISION, puis (encore) modifiable par  l’option  --revision  de  make-kpkg.
              Réglée par défaut à <VERSION>-10.0.0.Custom. (Optionnel)

       debian_revision_mandatory
              Habituellement    non   définie.   Si   elle   ou   la   variable   d'environnement
              DEBIAN_REVISION_MANDATORY sont définies, alors  l'absence  de  numéro  de  révision
              Debian  entraînera  une  erreur  (et make-kpkg ne fournira pas la valeur par défaut
              « 10.0.0.Custom »).

       kimage Type d'image du  noyau  (zImage  ou  bzImage  par  exemple).  Il  est  possible  de
              l'outrepasser grâce à la variable d'environnement IMAGE_TYPE, et il est possible de
              l'outrepasser (de nouveau) grâce aux options --zimage ou  --bzimage  de  make-kpkg.
              Valeur par défaut : bzImage. (Optionnel)

       config_target
              Choix  du type de configuration à exécuter. Par défaut, c'est « oldconfig », ce qui
              est pratique pour les lancements non interactifs (ou aux interactions  réduites  au
              minimum).  (La  variable  d'environnement CONFIG_TARGET outrepasse ce choix). Si la
              valeur de config_target est inconnue, elle est alors réinitialisée à oldconfig.

       use_saved_config
              Variable réservée seulement aux experts. Si elle est réglée à « NO »  (la  variable
              d'environnement  USE_SAVED_CONFIG  outrepasse  cela),  le  fichier  .config.save du
              répertoire au sommet de l'arborescence est ignoré.

       root_cmd
              C'est une variable dont le but est d'être transmise  à  dpkg-buildpackage  dans  la
              cible  buildpackage.  Elle  doit  fournir  un moyen d'obtenir les droits d'accès du
              superutilisateur (« sudo » ou « fakeroot » par exemple),  un  peu  à  la  façon  de
              l'option  -r  de dpkg-buildpackage. La variable d'environnement ROOT_CMD a priorité
              sur celle-ci. La variable d'environnement UNSIGN_SOURCE fournit  à  cette  commande
              l'option  qui  force  dpkg-buildpackage  à  ne  pas signer la source, et de la même
              façon, la  variable  d'environnement  UNSIGN_CHANGELOG  fournit  à  cette  commande
              l'option qui force dpkg-buildpackage à ne pas signer le changelog. Là encore, cette
              variable n'est utile  que  pour  la  cible  buildpackage.  Définissez  la  variable
              d'environnement  ROOT_CMD  si  vous  voulez  juste construire l'image du noyau, par
              exemple.

       delete_build_link
              Si   elle   est    définie    à    « YES »,    supprime    le    lien    symbolique
              /lib/modules/$VERSION/build    pointant   sur   le   paquet   .deb.   La   variable
              d'environnement DELETE_BUILD_LINK a priorité sur cette  option.  Par  défaut,  elle
              n'est pas définie. Notez qu'elle est sensible à la casse, yes ne fonctionnant pas.

       do_clean
              Si  elle  est  définie  à  « YES », un make clean sera lancé sur l'arborescence des
              sources du noyau après la construction du paquet de l'image du noyau.  La  variable
              d'environnement  CLEAN_SOURCE  a  priorité sur cette option. Par défaut, elle n'est
              pas définie. Notez qu'elle est sensible à la casse, yes ne fonctionnant pas.

       install_vmlinux
              Si elle est définie à « YES », l'image non compressée du noyau au format  ELF  sera
              installée  en  plus  de  l'image  compressé  (vmlinuz).  Par défaut, elle n'est pas
              définie. Notez qu'elle est sensible à la casse, yes ne fonctionnant pas.

       image_clean_hook
              Lorsqu'elle correspond à un programme, celui-ci est alors  exécuté  sur  la  racine
              (temporaire)  de  l'arborescence du noyau avant l'empaquetage des sources. Cela n'a
              aucun effet sur quoi que ce soit d'autre que les sources en cours d'empaquetage. Si
              le  script  agit  sur  le répertoire actuel et ses sous-répertoires, l'arborescence
              originale des sources demeure  inchangée.  Utile  pour  faciliter  le  modelage  de
              l'image du noyau en cours d'empaquetage.

       source_clean_hook
              Lorsqu'elle  correspond  à un programme, celui-ci est alors lancé sur la racine des
              répertoires    des    en-têtes     du     noyau     avant     leur     empaquetage,
              ./debian/tmp-source/usr/src/kernel-source-X.X.XX. Cela n'a aucun effet sur quoi que
              ce soit d'autre que les sources en cours d'empaquetage. Si le script  agit  sur  le
              répertoire  actuel  et  ses  sous-répertoires, l'arborescence originale des sources
              demeure inchangée. Utile pour faciliter le modelage des sources du noyau  en  cours
              d'empaquetage (en supprimant par exemple les répertoires de contrôle de version, ou
              en se débarrassant des architectures non désirées).

       header_clean_hook
              Lorsqu'elle correspond à un programme, celui-ci est alors lancé sur la  racine  des
              répertoires  des en-têtes du noyau avant leur empaquetage. Cela n'a aucun effet sur
              quoi que ce soit d'autre que les sources en cours d'empaquetage. Si le script  agit
              sur  le  répertoire  actuel  et  ses sous-répertoires, l'arborescence originale des
              sources demeure inchangée.  Utile  pour  faciliter  la  cure  d'amaigrissement  des
              en-têtes du noyau en cours d'empaquetage (en supprimant par exemple les répertoires
              de contrôle de version, ou en se débarrassant des architectures non désirées).

       doc_clean_hook
              Lorsqu'elle correspond à un programme, celui-ci est alors exécuté sur la racine  de
              l'arborescence  de la documentation avant son empaquetage. Cela n'a aucun effet sur
              quoi que soit d'autre que la documentation en cours  d'empaquetage.  Si  le  script
              agit  sur  le  répertoire  actuel et ses sous-répertoires, l'arborescence originale
              demeure inchangée. Utile pour faciliter le modelage de la documentation du noyau en
              cours  d'empaquetage  (en  supprimant  par  exemple  les répertoires de contrôle de
              version, ou en se débarrassant des architectures non désirées).

       extra_docs
              Cette variable pourra contenir le chemin vers  toute  documentation  supplémentaire
              qui sera alors installée dans le répertoire /usr/share/doc/kernel-image-X.X.XX/. Il
              n'y a pas de détection de conflit de noms, et les fichiers ne sont pas  compressés.
              De  ce  fait,  si vous voulez que ces fichiers soient compressés, compressez-les et
              indiquez alors le chemin vers le fichier  compressé.  La  variable  d'environnement
              EXTRA_DOCS  a  priorité  sur  cette option, et indiquera certainement la manière de
              spécifier la documentation supplémentaire.

       kpkg_follow_symlinks_in_src
              Cette option est particulièrement utile à ceux qui  se  servent  d'un  ensemble  de
              liens  symboliques  pour  compiler  leurs  noyaux.  Avec  cette option, les paquets
              kernel-source et kernel-header ne seront pas une simple collection de liens  morts,
              car  les  liens  symboliques auront été suivis. Notez bien que tout lien symbolique
              présent dans  les  sources  du  noyau  sera  résolu.  La  variable  d'environnement
              KPKG_FOLLOW_SYMLINKS_IN_SRC a priorité sur cette option. Par défaut, elle est n'est
              pas définie.

       make_libc_headers
              Variable pour  le  responsable  de  la  libc6  qui,  lorsqu'il  compile  la  libc6,
              empaquette  aussi les en-têtes correspondants. N'Y TOUCHEZ PAS à moins de savoir ce
              que vous faites, car une différence entre les en-têtes que vous  empaquetez  et  la
              libc6  peut  vraiment  déclencher  de  subtiles  instabilités  dans  tous les codes
              compilés  sur  votre  machine.  Vous  êtes  prévenu.  La  variable  d'environnement
              MAKE_LIBC_HEADERS a priorité sur cette option. Par défaut, elle n'est pas définie.

       CONCURRENCY_LEVEL
              Si  elle  est  définie,  cette  variable  règle  le nombre de processus concurrents
              qu'utilisera make pour compiler le noyau et les modules, grâce à l'option -j de  la
              commande  make  lancée  par  la  cible  build  de make-kpkg. Doit être, si elle est
              définie, un (petit) entier.

       ARCH_IN_NAME
              Si elle est définie, cette variable force make-kpkg à utiliser un nom rallongé pour
              le  paquet  de  l'image  du noyau, en intégrant la sous-architecture dans le nom de
              l'image ;  ainsi,  on  peut  écrire   des   scripts   pour   créer   de   multiples
              sous-architectures,  l'une  après l'autre. Notez bien que seul le nom du paquet est
              changé, pas l'emplacement des modules, etc.

       CONFDIR
              Cette  variable,  qu'elle  soit  dans  d'environnement  ou  dans  le   fichier   de
              configuration,  pourra  pointer  sur  un  répertoire contenant les fichiers .config
              spécifiques        aux         différentes         architectures         (consultez
              /usr/share/kernel-package/Config  pour  voir  des exemples). Pratique pour ceux qui
              ont besoin  de  compiler  pour  plusieurs  architectures.  Pointe  par  défaut  sur
              /usr/share/kernel-package/Config.

       IMAGEDIR
              Si  vous  voulez  que  l'image  soit stockée ailleurs que dans /boot, définissez le
              répertoire  de  destination  dans  cette  variable.  Cela  pourra  être  utile  aux
              utilisateurs de loadlin. Pointe par défaut sur /boot.

       MODULE_LOC
              Réglez  cette  variable,  soit  dans  votre  environnement, soit dans le fichier de
              configuration, afin qu'elle  pointe  sur  l'endroit  où  sont  situés  les  modules
              additionnels. Pointe par défaut sur /usr/src/modules.

              Le contenu d'une variable est définie de la façon suivante :

       a)     Les  valeurs  par défaut sont présentes dans le fichier « rules ». Ces valeurs sont
              utilisées si aucun réglage n'est fait.

       b)     Les  variables  peuvent   être   réglées   dans   le   fichier   de   configuration
              /etc/kernel-pkg.conf. Ces valeurs ont priorité sur les valeurs par défaut.

       c)     Les  variables  peuvent  aussi  être  définies  en donnant une valeur à la variable
              d'environnement  correspondante.  Ces  valeurs  ont  priorité  sur  le  fichier  de
              configuration et sur les valeurs par défaut.

       d)     Par  l'utilisation  des  options de make-kpkg ou, lorsqu'on utilise directement les
              fichiers « rules », sur la ligne de commande.
              # xxx/rules DEBIAN_REVISION=2.0a kernel_image
              Cette commande a priorité sur toutes les méthodes décrites ci-dessus.

FICHIERS

       Le fichier ici décrit est /etc/kernel-pkg.conf ou ~/.kernel-pkg.conf.

VOIR AUSSI

       make(1), make-kpkg(1), kernel-img.conf(5), le manuel de GNU Make

BOGUES

       Il n'y a pas d'erreur. Toute ressemblance avec un bogue est du délire. Vraiment.

AUTEUR

       Cette page a été écrite par  Manoj  Srivastava,  <srivasta@debian.org>,  pour  le  système
       Debian GNU/Linux.