Provided by:
kernel-package_11.015_all 
NOMBRE
make-kpkg - construye paquetes Debian con núcleos a partir de las
fuentes
SINOPSIS
make-kpkg [opciones] [objetivo [objetivo ...]]
DESCRIPCIÓN
Esta página del manual explica la utilidad make-kpkg , usada para crear
paquetes Debian relacionados con el núcleo. La utilidad debe ejecutarse
desde el directorio superior de las fuentes del núcleo, el cual ya debe
de haber sido configurado previamente (a menos que se use el objetivo
configure). Normalmente, si kernel-package no encuentra un fichero
.config en el directorio actual, trata por todos los medios de obtener
uno apropiado (generalmente un fichero de configuración adaptado para
núcleos Debian para esa arquitectura), y luego invoca a make oldconfig
para permitir que el usuario responda cualquier pregunta nueva.
TÃpicamente, el programa se ejecuta como superusuario o bajo fakeroot,
sino hay que indicar a make-kpkg como convertirse en superusuario, por
ejemplo:
make-kpkg --rootcmd fakeroot kernel_image
El fichero de paquete Debian se crea en el directorio padre al
directorio del directorio de fuentes del núcleo donde se ejecute esta
orden.
También, tenga en cuenta que algunas versiones de gcc no interaccionan
bien con las fuentes del núcleo (gcc 2.95 tiene problemas compilando el
núcleo sin la opción ’-fno-strict-aliasing’ ). Este asunto ha sido
cuidado en los núcleos recientes (las series 2.2 y 2.4 están bien)
(Creo que puede necesitar editar el Makefile para núcleos anteriores, o
alguna otra cosa). Puede controlar que versión de gcc se usa para
compilar el núcleo estableciendo las variables CC y HOSTCC en el
Makefile principal del núcleo. Puede hacer esto simplemente con
% MAKEFLAGS="CC=gcc-2.95" make-kpkg ...
(por favor, lea el Makefile principal para saber que variables pueden
establecerse).
ADVERTENCIA: No utilice la opción -j en MAKEFLAGS directamente, esto
podrÃa hacer que la compilación falle. Utilice CONCURRENCY_LEVEL como
se especifÃca a continuación.
OPCIONES
--help Muestra el modo de uso.
--revision número
Cambia el número de revisión de los paquetes producidos a
número. Esto tiene algunas restricciones: la opción --revision
sólo tiene efecto en la fase de configuración (en otras
palabras, si existe un fichero llamado stamp-configure , esta
opción no tiene efecto -- ejecute make-kpkg clean o elimine
manualmente los ficheros stamp-configure y stamp-debian para que
lo tenga. (Recomiendo encarecidamente que ejecute make-kpkg
clean a menos que sepa lo que está haciendo). Adicionalmente,
los paquetes oficiales con las fuentes proporcionan su propio
número de versión y datos para las introducciones oficiales, y
por eso, make-kpkg. no modifica algunas cosas, incluyendo el
número de revisión de Debian. Si quiere cambiar el número de
revisión de unas fuentes oficiales (esto implica que existe
debian/official y no está vacÃo), asegúrese de eliminar
debian/official antes de ejecutar make-kpkg clean para que esta
opción tenga efecto. Por eso, si desea volver a ejecutar
make-kpkg con un número de versión diferente, tiene que
asegurarse de hacer borrón y cuenta nueva. La versión sólo puede
contener caracteres alfanuméricos y los caracteres ~ + . (tilde,
punto y signo más) y debe de contener un dÃgito. Consulte las
Normas de Debian (Debian Policy) para más detalles. Realmente,
esto es mentira: los responsables de los núcleos y módulos
oficiales tienen permiso para usar guiones, pero está altamente
desaconsejado para la mayorÃa de la gente, ya que no hay ningún
tipo de comprobación del número de versión, y dpkg y otros
pueden atascar al final de la compilación a menos que uno sepa
lo que está haciendo. Opcionalmente, puede anteponer a la
revisión un dÃgito seguido de dos puntos (:). Por omisión es
10.00.Custom a menos que esté establecida la variable de entorno
DEBIAN_REVISION_MANDATORY , en cuyo caso se genera un error si
no se especifica un número de versión, bien en la lÃnea de
órdenes o bien en el fichero de configuración.
--append-to-version tal
--append_to_version tal
Este argumento ( tal ) se añade al valor de la variable
EXTRAVERSION presente en el Makefile del núcleo. Dado que
EXTRAVERSION es un componente de la versión del núcleo, también
se añade al nombre del paquete, y, como tal, debe de cumplir las
normas a las que están sujetos los nombres de los paquetes
Debian. Esto quiere decir que sólo puede contener caracteres
alfanuméricos en minúsculas y los caracteres ~ - + . (tilde,
guión, signo más y punto). Las normas no permiten letras
mayúsculas en los paquetes nuevos. Si la variable de entorno
IGNORE_UPPERCASE_VERSION está establecida, make-kpkg pasará a
minúsculas los números de versión en el Makefile o en el fichero
localversion. Esto predomina sobre la variable de entorno
APPEND_TO_VERSION. Por favor, tenga en cuenta de que debe
ejecutar make-kpkg clean después de configurar el núcleo usando
make (x|menu)?config, ya que esto crea el fichero
include/linux/version.h sin el contenido de append_to_version
(tal). Este fichero no será actualizado por make-kpkg (make-kpkg
crea version.h si éste no existe, pero no lo toca si ya existe),
y el núcleo final _no_ tendrá el contenido de append_to_version
en su número de versión, esto hará que busque los módulos y
sÃmbolos en sitios incorrectos. La solución mas sencilla es
borrar include/linux/version.h después de configurar y antes de
compilar, o ejecutar make-kpkg clean después de configurar y
antes de compilar. Tenga en cuenta de que una vez que use
--append_to_version tal para configurar o construir la imagen
del núcleo, necesita usar la misma opción en ejecuciones
posteriores de make-kpkg (por ejemplo, para construir módulos
independientes, o cualquier cosa). make-kpkg no recuerda el
argumento tal entre ejecuciones (esto es diferente con el
argumento --revision, que si se recuerda). Si le molesta que
make-kpkg se queje acerca del uso de --append_to_version cuando
ya existe un fichero anterior, puede establecer la variable de
entorno VERSION_H_OK que deberÃa parar estos avisos.
--added-modules tal
--added_modules tal
El argumento debe ser una lista de módulos añadidos separada por
comas (que no estén en el árbol principal del núcleo) que desea
construir cuando invoque el objetivo modules_blah. Debe
proporcionar la ruta completa del directorio donde residen los
módulos, o sólo el nombre del módulo si se puede encontrar en
MODULE_LOC, que por omisión apunta a /usr/src/modules. Por
omisión se compilan todos los módulos en MODULE_LOC, cuando se
invocan los objetivos modules_blah.
--added-patches tal
--added_patches tal
El argumento debe de ser una lista separada por comas de parches
adicionales para el núcleo. Establece automáticamente la opción
de configuración del núcleo patch_the_kernel a YES.
A diferencia de con los módulos, sólo debe proporcionar la base
del nombre (n.t. del inglés basename) (no el nombre completo
del fichero con el parche). Adicionalmente, no se soporta
cualquier parche que intente cambiar el número de versión, bien
editando el fichero Makefile, o añadiendo un fichero
.localversion , e interrumpirá la compilación, debido a que el
número de versión ya ha sido fijado en debian/changelog.
Por cada fichero <nombre_parche> en la lista se sigue el
siguiente proceso: Si el fichero se puede encontrar en los
directorios ALL_PATCH_DIR/{apply,unpatch}/, entonces el fichero
ALL_PATCH_DIR/apply/<nombre_parche> se ejecutará durante la fase
de configuración (y presumiblemente esto aplicará el parche).
Correspondientemente, el fichero
ALL_PATCH_DIR/unpatch/<nombre_parche> debe de ejecutarse en la
fase de borrado. Por omisión todos los parches se aplican
invocando los ficheros ejecutables en ALL_PATCH_DIR/apply/ si es
requerido (Bien estableciendo la opción de configuración
patch_the_kernel o la variable de entorno PATCH_THE_KERNEL a
YES). Tenga en cuenta de que los parches son DES-instalados de
las fuentes del núcleo cuando se ejecuta el objetivo clean. Esto
se puede prevenir estableciendo la variable de entorno
NO_UNPATCH_BY_DEFAULT
Arriba, ALL_PATCH_DIR es por omisión un subdirectorio de
/usr/src/kernel-patches/.
Algunas veces puede ser conveniente aplicar los parches cuando
uno pide un parche especÃfico usando esta opción, sin necesidad
de tener que establecer explÃcitamente la variable de entorno.
Puesto que establecer la variable de entorno PATCH_THE_KERNEL a
YES puede ser peligroso, (puede darse el caso de que se apliquen
todos los parches cuando no querÃa aplicar ninguno, y no
especificó la opción added_patches), también puede establecer la
variable PATCH_THE_KERNEL a AUTO, en cuyo caso PATCH_THE_KERNEL
será establecida a YES por usted cuando invoque
--added-patches tal, pero no en otra situación. Además, tenga
en cuenta de que si algún parche instala un script en el
directorio ./debian/image.d/ , debe de invocarse a run-parts
sobre ese directorio nada más se construya la imagen del núcleo.
El lugar de la raÃz del paquete con la imagen siendo construida
debe pasarse en la variable de entorno IMAGE_TOP, y las
versiones del núcleo se pasan mediante la variable de entorno
version. De esta forma es posible, por ejemplo, de que un
parche inserte ficheros adicionales en la imagen.
Algunos de los paquetes con parches también tienen en cuenta
otras variables de entorno, esto se documenta en el directorio
doc apropiado (por ejemplo, deberÃa mirar en
/usr/share/doc/kernel-patch-tal/README-kernelpatch.Debian si
quiere información adicional para sobre el parche tal).
--arch tal
Útil para establecer la arquitectura cuando se esté realizando
compilación cruzada. La arquitectura se detecta automáticamente
si no está realizando compilación cruzada. El mismo efecto se
puede conseguir estableciendo la variable de entorno KPKG_ARCH.
El valor deberÃa ser lo que contenga DEB_HOST_ARCH_CPU cuando se
ejecute dpkg-architecture en el sistema objetivo, o puede ser
otra arquitectura en un entorno multi-arquitectura (como
i386/amd64).
--cross-compile tal
--cross_compile tal
Es útil para definir la cadena de caracteres del objetivo cuando
se esté realizando compilación cruzada. Use el objetivo falso
"-" si está compilando para otras arquitecturas de un entorno
multiarquitectura, como i386/amd64. El mismo efecto se puede
conseguir estableciendo la variable de entorno. Por favor tenga
en cuenta de que esto de ninguna manera define el compilador que
deberá usar el proceso de compilación del núcleo, si el
compilador por omisión que se utiliza en el proceso de
compilación no es el que se desea, por favor espeficique
explÃcitamente el que se debe utilizar. CROSS_COMPILE
--subarch tal
Algunas arquitecturas (Alpha, y m68k) requieren un núcleo
diferente para cada sub-arquitectura. Esta opción proporciona un
modo de especificarlo como argumento de make-kpkg. Tenga en
cuenta de que se necesita soporte adicional para
sub-arquitecturas en las fuentes del núcleo para que esto tenga
algún efecto. El mismo efecto se puede conseguir estableciendo
la variable de entorno KPKG_SUBARCH
--arch-in-name
--arch_in_name
Esta opción usa un nombre extendido para la imagen del núcleo
empaquetada, introduciendo la sub-arquitectura en el nombre de
ésta, de este modo se pueden crear scripts que creen múltiples
sub-aquitecturas, una después de otra. El mismo efecto se puede
conseguir estableciendo la variable de entorno ARCH_IN_NAME.
Tenga en cuenta de que sólo afecta al nombre del paquete, no a
la localización de los módulos y demás.
--pgpsign nombre
Establece la cadena a usar para firmar el fichero de cambios de
cada módulo externo en /usr/src/modules/ usando PGP. Esta opción
no tendrá en cuenta el comportamiento predeterminado ni la
configuración del sistema guardada en /etc/kernel-pkg.conf o
~/.kernel-pkg.conf.
--config objetivo
Cambia el tipo de configuración hecha desde el oldconfig por
omisión. objetivo debe ser uno de oldconfig, config,
menuconfig, gconfig, xconfig, randconfig, defconfig,
allmodconfig, allyesconfig, allnoconfig; old, menu, g, o x.
Esta opción es particularmente útil cuando se usa
PATCH_THE_KERNEL por si alguno de los parches cambia las
opciones de configuración disponibles. Note de que sin embargo
make-kpkg busca al arrancar algunas opciones en el fichero de
configuración, notablemente el hecho de que los módulos estén o
no habilitados, de manera que cambiar el estado durante esta
configuración retrasada resulta en un error. Si es necesario,
cree el fichero de configuración lo más próximo a lo deseado
antes de llamar a make-kpkg con esta opción.
--targets
Muestra una lista de objetivos conocidos. Lea la sección
Objetivos más abajo.
--noexec
Pasa la opción -n a make de forma que las órdenes se muestran en
pantalla pero no se ejecutan. Útil para depuración.
--verbose
Esto invoca make con la opción -V=1, que llama a las órdenes
Make de nivel superior, también es útil para ver que está
ocurriendo.
--initrd
Si make-kpkg está generando un paquete del tipo kernel-image ,
realizará cualquier acción necesaria para que el núcleo se pueda
cargar usando initrd. NOTA: en los núcleos antiguos, esto
requiere un parche (que no es estándar) cramfs de initrd a las
fuentes del núcleo, (a menos que la configuración del mkinitrd
se haya modificado para no usar cramfs) o se generará una imagen
del núcleo imposible de arrancar. El parche normalmente se
encontraba en las fuentes del núcleo proporcionadas por Debian.
Algunas arquitecturas todavÃa necesitan parches para arreglar
problemas con cramfs. Esta opción puede implicar dependencias
extra y modificaciones en los scripts del encargado del paquete.
No tiene efecto cuando make-kpkg no está generando un paquete
kernel-image. El mismo efecto se puede conseguir estableciendo
la variable de entorno INITRD a cualquier valor no nulo.
--zimage
Crea una imagen del núcleo del tipo zImage en vez de bzImage
(predeterminada). Útil para gente con problemas con los núcleos
bzImage.
--bzimage
Crea un núcleo bzImage. Útil para gente que quiera un núcleo
bzImage donde el núcleo predeterminado es un zImage.
.B --mkimage
Debe ser una orden que produzca una imagen initrd dado un
directorio. Se pasa a la opción -m del programa mkinitrd. Por
ejemplo, puede ser
"genromfs -d %s -f %s" o
"mkcramfs %s %s"
--rootcmd tal
La orden que proporciona acceso de superusuario (por ejemplo,
‘sudo’ o ‘fakeroot’), necesitado por la opción -r de
dpkg-buildpackage.
--us Esta opción se pasa a dpkg-buildpackage, indica que el
paquete no debe firmar las fuentes. Sólo es relevante
para el objetivo buildpackage.
--stem tal
Invoca a los paquetes tal-* en lugar de kernel-*. Esto es
útil para facilitar la transición de invocar los paquetes
kernel-* a linux-*, en preparación para núcleos distintos
a linux en la distribución. El valor predeterminado es
linux.
--us Esta opción se pasa a dpkg-buildpackage e indica qué
paquete no firma el fuente. Esto es únicamente relevante
para el objetivo buildpackage.
--uc Esta opción se pasa a dpkg-buildpackage, indica que el
paquete no debe firmar el fichero de cambios (changelog).
Sólo es relevante para el objetivo buildpackage.
Las opciones pueden acortarse a una única cadena más corta,
pudiendo introducirse además con el prefijo - o --, entre una
opción y su valor se puede usar tanto un espacio como un sÃmbolo
’=’. También puede usar la forma opción=valor; para más detalles
sobre ésta y otras variantes soportadas, lea la página del
manual Getopt::Long (3perl).
CONCURRENCY_LEVEL
Si está definida, esta variable de entorno establece el
nivel de concurrencia usado por make para compilar el
núcleo y el conjunto de módulos, usando la opción -j para
el make del objetivo build de make-kpkg. Si se usa debe
ser un entero (pequeño). Puede obtener el número actual
de procesadores usando la orden:
"grep -c ’^processor’ /proc/cpuinfo" ADVERTENCIA: NO
utilice la opción -j en MAKEFLAGS directamente, esto
podrÃa hacer que falle la compilación.
OBJETIVOS
clean Elimina del directorio con las fuentes del núcleo todos
los ficheros generados por el objetivo build, y ejecuta
make distclean. (Véa en el Makefile del núcleo de Linux
para más detalles). Tenga en cuenta que aunque se
preserva la lista de configuración del núcleo actual del
fichero .config, no se preserva el fichero
include/linux/autoconf.h. Este objetivo no debe
combinarse con otros, ya que make-kpkg lee todos los
datos antes de ejecutar cualquier objetivo, lo que hace
que los objetivos siguientes se ejecuten con los datos
viejos, algo que probablemente no es lo que desea.
buildpackage
Este objetivo ejecuta los objetivos clean, y binary, para
producir el paquete completo usando dpkg-buildpackage
binary Este objetivo produce los cuatro paquetes del núcleo de
Debian ejecutando los objetivos binary-indep y
binary-arch.
binary-indep
Este objetivo produce los paquetes independientes de la
arquitectura ejecutando los objetivos kernel_source,
kernel_manual y kernel_doc.
binary-arch
Este objetivo produce los paquetes dependientes de la
arquitectura ejecutando los objetivos kernel_headers y
kernel_image.
kernel_source
Este objetivo produce un paquete debianizado de las
fuentes del núcleo. Si la variable de entorno
SOURCE_CLEAN_HOOK apunta a un ejecutable, éste se
ejecutará desde el directorio temporal de las fuentes del
núcleo justo antes de empaquetarlo,
./debian/tmp-source/usr/src/kernel-source-X.X.XX, de esta
forma puede tomar acciones necesarias para ajustar el
núcleo a sus necesidades (eliminar arquitecturas, borrar
los directorios de control de versiones, find . -type d
-name CVS -prune -exec rm -rf {} ; etc). No tiene efecto
sobre otra cosa que no sean las fuentes del núcleo que
van a ser empaquetadas (si el script opera en el
directorio actual y sus descendientes las fuentes
originales del núcleo deberÃan permanecer intactas). Las
variables de entorno HEADER_CLEAN_HOOK y DOC_CLEAN_HOOK
son similares. DeberÃan apuntar a ejecutables, éstos se
ejecutarán respectivamente desde el directorio temporal
(tmp) de las cabeceras y documentación del núcleo justo
antes de empaquetarlo, de esta forma puede tomar acciones
necesarias para ajustar el núcleo a sus necesidades.
Sólo tiene efecto sobre las fuentes que se están
empaquetando.
kernel_headers
Este objetivo produce una paquete Debian que contiene las
cabeceras del núcleo de Linux.
kernel_manual
Este objetivo produce un paquete Debian que contiene la
sección 9 de las páginas de manual incluidas en el núcleo
Linux. Tenga en cuenta de que en realidad esto no es un
objetivo independiente, al invocarlo también se invoca el
objetivo kernel_doc , y se crea un paquete kernel-doc al
mismo tiempo.
kernel_doc
Este objetivo produce un paquete Debian que contiene la
documentación incluida con el núcleo de Linux. Éste se
puede invocar independientemente del objetivo
kernel_manual , pero no en al contrario.
kernel_image
Este objetivo produce un paquete Debian con la imagen del
núcleo de Linux y cualquier módulo configurado en el
fichero de configuración del núcleo .config. Si no hay
ningún fichero .config en el directorio con las fuentes
del núcleo se proporciona una configuración por omisión
parecida a la usada para crear los boot-floppies de
Debian.
Si existe el fichero ./debian/post-install y es
ejecutable, éste se ejecuta justo antes de crear el
paquete con la imagen del núcleo. Además, tenga en cuenta
de que si hay algún script en el directorio
./debian/image.d/ , se debe ejecutar run-parts en ese
directorio justo antes construir el paquete con la imagen
del núcleo. La localización de la raÃz del paquete con la
imagen que se está construyendo debe de pasarse mediante
la variable de entorno IMAGE_TOP, y la versión del núcleo
se pasa a través de la variable de entorno version para
todos los scripts.
En una instalación inicial, el paquete con la imagen
actualiza los enlaces simbólicos en el directorio destino
de los enlaces simbólicos (por omisión es el directorio
raÃz) para que apunten a la nueva imagen del núcleo en el
directorio de las imágenes del núcleo que es /boot. Si
el enlace simbólico ya apunta a la imagen actual del
núcleo no se hace nada. Si existe un enlace simbólico
anterior, éste se mueve a un fichero con el mismo nombre
pero con el sufijo .old, y se instala en su lugar un
nuevo enlace simbólico acorde a la nueva situación (la
variable minimal_swap en /etc/kernel-img.conf modifica
este comportamiento). No se realiza ninguna actuación en
las actualizaciones.
Por favor, lea la documentación acerca de enganches en
kernel-img.conf(5). Estos enganches son variables que
pueden apuntar a scripts que añadan o eliminen una lÃnea
a la lista del menú de grub durante la instalación o
desinstalación del núcleo. Se incluye un script de
ejemplo para añadir lÃneas al fichero de menú de grub en
el directorio /usr/share/doc/kernel-package/.
Además de las variables de enganche que pueda establecer
el administrador local, hay una serie de directorios en
los que los paquetes, o el administrador local, pueden
colocar scripts. Los directorios son
/etc/kernel/preinst.d/, /etc/kernel/postinst.d/,
/etc/kernel/prerm.d/, /etc/kernel/postrm.d/. y
/etc/kernel/preinst.d/<VERSIÓN>/,
/etc/kernel/postinst.d/<VERSIÓN>/,
/etc/kernel/prerm.d/<VERSIÓN>/,
/etc/kernel/postrm.d/<VERSIÓN>/. Si existen, el paquete
kernel-image ejecutará run-parts sobre los directorios
(incluyendo los que tengan un número de versión), usando
la versión a instalar o eliminar como argumento, en la
fase correspondiente de la instalación o desinstalación.
Antes de invocar estos script, se debe definir la
variable de entorno STEM al valor del argumento --stem (o
el valor predeterminado, Linux). Estos scripts se deben
invocar con dos argumentos, el primero debe ser la
version de la imagen del núcleo, y el segundo argumento
debe ser la localización de la propia imagen del núcleo.
Debido a que debconf es utilizado antes de que se invoque
este script, éste no debe mostrar mensajes de diagnóstico
a stdout (mientras postinst invoca db_stop , debconf no
restaura stdout, por lo tanto los mensajes a stdout
desaparecerán).
Durante la instalación, también ofrece ejecutar LILO (o
alternativas como loadlin, SILO, QUIK, VMELILO, ZIPL,
yaboot, PALO o GRUB ), creando un fichero de
configuración para los gestores de arranque si es
necesario. En ese momento también ofrece poner el nuevo
núcleo en un disquete, dando formato al disquete si fuese
necesario. Cuando se intente eliminar, se comprobará la
versión del núcleo en ejecución, negándose a desinstalar
un núcleo en ejecución. grub se merece una mención
especial, aunque no necesite ejecutarse después de
instalar la imagen del núcleo no está de más un cambio
automático a su menú después de instalar o desinstalar un
paquete con una imagen del núcleo.
build Este objetivo, es usado por el objetivo kernel_image ,
compila la imagen del núcleo de Linux.
modules
Este objetivo permite construir todos los módulos
añadidos y paquetes muy dependientes de la versión del
núcleo para la que han sido compilados al mismo tiempo
que se genera la imagen del núcleo. Este objetivo espera
encontrar los módulos o paquetes bajo /usr/src/modules,
y, para todos los subdirectorios, cambia a MODULE_LOC/x
(MODULE_LOC de forma predeterminada es /usr/src/modules
), y ejecuta la regla kdist en el fichero local
debian.rules. Este objetivo debe crear uno o varios
paquetes Debian con los módulos, y quizá produzca un
fichero tar comprimido, un fichero diff comprimido, con
las sumas md5 guardadas en un fichero de cambios usando
dpkg-genchanges. El fichero es firmado por la misma
identidad que se usa para firmar los paquetes del núcleo.
Esta opción es usada por los responsables de introducir
los paquetes a los archivos de Debian.
modules_config
Este objetivo permite configurar todos los paquetes
debajo de MODULE_LOC, que de forma predeterminada es
/usr/src/modules. Esto es útil si necesita modificar
manualmente algunos aspectos de configuración, o si
quiere compilar manualmente los módulos añadidos.
modules_image
Este objetivo permite construir todos los paquetes debajo
de MODULE_LOC, que de forma predeterminada es
/usr/src/modules, pero no crea las fuentes o los ficheros
diff, tampoco crea ni firma el fichero de cambios. Ésta
es la única opción relacionada con los módulos que
necesita si sólo quiere compilar los módulos para
instalarlos en una o más máquinas. Generalmente se usa
junto con kernel_image, especialmente si además se usa la
opción append_to_version (previene avisos espúreos). No
se debe invocar a menos de que ya tenga un directorio
./debian.
modules_clean
Este objetivo permite limpiar todos los paquetes bajo
MODULE_LOC, que de forma predeterminada es
/usr/src/modules, deberÃa de ser todo lo necesario para
deshacer el efecto de cualquiera de los otros objetivos
modules_. No se debe invocar a menos de que ya tenga un
directorio ./debian.
configure
Este objetivo ejecuta pronto la configuración (realmente,
config_target, establecido por --config que por omisión
es oldconfig ), de forma que pueda editar los ficheros
generados por make config en el directorio de las fuentes
del núcleo y estar seguro de que make-kpkg no los
sobreescribirá más tarde.
debian Este objetivo crea el directorio ./debian , y
opcionalmente aplica algún parche a las fuentes. Es
invocado por el objetivo configure. Probablemente use
este objetivo para aplicar algún parche a las fuentes y
después ejecutar manualmente la fase de configuración.
libc-kheaders
Este es un objetivo especial para el responsable de
libc-dev, puede usarlo para crear las cabeceras del
núcleo que necesita libc. Por favor, tenga en cuenta de
que es peligroso crear un paquete libc-kheaders que sea
diferente de las cabeceras con las que fue compilado
libc, se sabe que puede dañar sutilmente el sistema. Lea
/usr/share/kernel-package/README.headers para más
detalles. Crear e instalar un paquete de libc-kheaders
personalizado puede dañar el sistema y volverlo inusable
a menos que sepa lo que está haciendo. Está avisado.
VARIABLES DE ENTORNO
KPKG_DEBUG, si está definido, indica a make-kpkg que muestre
mensajes de depuración acerca de algunas funciones de shell
ejecutadas internamente. Probablemente no sea de interés para
quienes no estén depurando. Las siguientes variables
(documentadas arriba) afectan a make-kpkg:
DEBIAN_REVISION_MANDATORY APPEND_TO_VERSION VERSION_H_OK
PATCH_THE_KERNEL NO_UNPATCH_BY_DEFAULT KPKG_ARCH CROSS_COMPILE
KPKG_SUBARCH ARCH_IN_NAME INITRD SOURCE_CLEAN_HOOK MODULE_LOC
INITRD_OK CONCURRENCY_LEVEL IGNORE_UPPERCASE_VERSION
FICHEROS
Aparte de las opciones de ejecución, el fichero debian.rules
ejecutado por make-kpkg también busca el fichero de
configuración de usuario ~/.kernel-pkg.conf. Si no lo
encuentra, busca el fichero de configuración global del sistema
/etc/kernel-pkg.conf. La configuración predeterminada permite
que haya un predominio para el nombre completo y la dirección de
correo electrónico de la persona responsable de mantener los
paquetes en el sitio, pero el fichero /etc/kernel-pkg.conf (o
~/.kernel-pkg.conf. ) es realmente un pequeño Makefile, se
puede incluir cualquier directiva válida de make. Nota: Se debe
de tener mucho cuidado con este fichero, usted puede cambiar
totalmente el modo en que se ejecuta make editando este fichero.
Por favor, lea /usr/share/doc/kernel-package/Problems.gz para
ver una lista de problemas conocidos compilando imágenes del
núcleo. También puede encontrar un tutorial extensivo como
documentación en /usr/share/doc/kernel-package/README.gz y es
recomendable que lo lea antes de usar esta utilidad.
VÉASE TAMBIÉN
kernel-pkg.conf(5), kernel-img.conf(5), mkinitrd(8),
Getopt::Long(3perl), dpkg-deb(1), dpkg-source(1), make(1),
The Programmers manual, El manual de GNU Make y la extensiva
documentación en el directorio /usr/share/doc/kernel-package
AUTOR
Esta página del manual fue escrita por Manoj Srivastava
<srivasta@debian.org>, para el sistema Debian GNU/Linux.
TRADUCTOR
Traducción de Rubén Porras Campo
<debian-l10n-spanish@lists.debian.org> Actualización de Rudy
Godoy <rudy@kernel-panik.org>