| kernel-pkg.conf(5) - phpMan
KERNEL-PKG.CONF(5) Debian GNU/Linux manual KERNEL-PKG.CONF(5)
NAME
kernel-pkg.conf - configuration file for make-kpkg
SYNOPSIS
/etc/kernel-pkg.conf or ~/.kernel-pkg.conf
DESCRIPTION
The file /etc/kernel-pkg.conf or ~/.kernel-pkg.conf is actually a Makefile snippet
included during the kernel packages build process, and hence you may put any legal Make‐
file directive in that file (just make very sure you know what you are doing). If the per
user configuration file ~/.kernel-pkg.conf exists, it is loaded in favor of the system
wide configuration file /etc/kernel-pkg.conf.
All the variables have reasonable default values, and maybe overridden on a per run or a
per individual basis by using environment variables. Some of the variables can further be
overridden by options to make-kpkg.
At the moment, the user modifiable variables supported are:
maintainer
Local kernel (image, header, doc, etc.) package maintainer. Set up at package
installation by the postinst. Can be overridden by the environment variable
KPKG_MAINTAINER. Please note that any apostrophes "'" shall have to be quoted like
so: maintainer = John O'\''Brien. Yes, this is ugly, but this works.
email The email address of that person. Set up at package installation by the postinst.
Can be overridden by the environment variable KPKG_EMAIL.
pgp A key-ID to use when signing packages. Usually passed along to dpkg-buildpackage
using the -k option, and also third party modules in the KMAINT environment vari‐
able, if separate modules (like pcmcia, etc.) are being built in $MODULE_PATH. Can
be overridden by the environment variable PGP_SIGNATURE, and is overridden (again)
by the --pgpsign option of make-kpkg. Defaults to maintainer. (Optional)
debian The version of the kernel packages, includes both the upstream version and the
Debian revision. Can be overridden by the environment variable DEBIAN_REVISION, and
is overridden (again) by the --revision option of make-kpkg. Defaults to <VER‐
SION>-10.0.0.Custom (Optional)
debian_revision_mandatory
Normally unset. If this, or the environment variable DEBIAN_REVISION_MANDATORY are
set, then not providing a Debian revision results in an error (and make-kpkg shall
not provide a default value of 10.0.0.Custom)
kimage The kernel image type (i.e. zImage or bzImage). Can be overridden from the environ‐
ment variable IMAGE_TYPE, and is overridden (again) by the options --zimage or
--bzimage of make-kpkg. Defaults to bzImage. (Optional)
config_target
What type of configure step to do. Defaults to oldconfig, which is good for
non-interactive (or minimally interactive) runs. (ENV variable CONFIG_TARGET over‐
rides this setting.) If the value of config_target is not recognized, then it is
reset to oldconfig.
use_saved_config
This is an experts only variable. If set to NO (ENV variable USE_SAVED_CONFIG over‐
rides this), the file .config.save in the top level directory is ignored.
root_cmd
This is a variable meant to be passed on to dpkg-buildpackage in the buildpackage
target. This should be set to a means of gaining superuser access (for example,
`sudo' or `fakeroot') as needed by dpkg-buildpackages' -r option. The environment
variable ROOT_CMD overrides this. Use the environment variable UNSIGN_SOURCE to
pass an option to dpkg-buildpackage to not sign the source; similarly, use the
environment variable UNSIGN_CHANGELOG to pass an option to dpkg-buildpackage to not
sign the changelog. Again, this variable is only useful for the buildpackage tar‐
get. Set the environment variable ROOT_CMD if you just wish to build the kernel
image, for instance.
delete_build_link
If set to YES, the symbolic link /lib/modules/$VERSION/build shall be removed from
the resulting .deb package. The environment variable DELETE_BUILD_LINK overrides
this. The default is unset. Note that this is case sensitive, yes shall not work.
do_clean
Set to YES, this causes a make clean to be run in the kernel source tree after
building the kernel image package. The environment variable CLEAN_SOURCE overrides
this. The default is unset. Note that this is case sensitive, yes shall not work.
install_vmlinux
Set to YES to install the uncompressed kernel ELF image along with the bootable
compressed kernel image (vmlinuz). The default is unset. Note that this is case
sensitive, yes shall not work.
image_clean_hook
Set to point to an executable, this shall cause that executable to run from the top
level of the (temporary) kernel image tree before the kernel image is packaged.
This has no effect on anything other than the image that is being packaged -- if
the script operates on the current directory and its children, the original source
tree should remain intact. This is to facilitate messaging of the kernel image
that is packaged.
source_clean_hook
Set to point to an executable, this shall cause that executable to run from the top
level of the (temporary) kernel source tree before the sources are packaged,
./debian/tmp-source/usr/src/kernel-source-X.X.XX. This has no effect on anything
other than the sources that are being packaged -- if the script operates on the
current directory and its children, the original source tree should remain intact.
This is to facilitate messaging of the kernel sources that are packaged (for exam‐
ple, to remove version control directories, or to prune away unwanted architec‐
tures).
header_clean_hook
Set to point to an executable, this shall cause that executable to run from the top
level of the kernel headers before the headers are packaged. This has no effect on
anything other than the sources that are being packaged -- if the script operates
on the current directory and its children, the original source tree should remain
intact. This is to facilitate messaging of the kernel headers that are packaged
(for example, to remove version control directories, or to prune away unwanted
architectures).
doc_clean_hook
Set to point to an executable, this shall cause that executable to run from the top
of the documentation tree before kernel documentation is packaged. This has no
effect on anything other than the documentation that is being packaged -- if the
script operates on the current directory and its children, the original source tree
should remain intact. This is to facilitate messaging of the kernel documentation
that is packaged (for example, to remove version control directories, or to prune
away unwanted architectures).
extra_docs
This variable should be set to the path of any extra documentation that should be
installed in /usr/share/doc/kernel-image-X.X.XX/ directory. There is no checking
for name conflicts, and the files are not compressed. Hence, if you want the files
to be compressed, please precompress it and provide the path of the compressed
file. The environment variable EXTRA_DOCS overrides this, and would most likely be
how extra documentation is specified.
kpkg_follow_symlinks_in_src
This option is especially useful for people who use symlink farms to compile ker‐
nels. With this option, kernel-source and kernel-header packages shall not be just
full of dangling symlinks, instead, the symbolic links shall be followed. Please
note that any symbolic links in the kernel sources would be flattened as well. The
environment variable KPKG_FOLLOW_SYMLINKS_IN_SRC overrides this. The default is
unset.
make_libc_headers
This is meant to be used by the libc6 maintainer, when he compiles libc6, to also
package up the corresponding headers. DO NOT SET THIS unless you know what you are
doing, since a mismatch between the headers you package and libc6 may well create a
subtle instability in all code compiled on your machine. You have been warned. The
environment variable MAKE_LIBC_HEADERS overrides this. The default is unset.
CONCURRENCY_LEVEL
If defined, this variable sets the concurrency level of make used to compile the
kernel and the modules set using -j flags to the sub make in the build target of
make-kpkg. Should be a (small) integer, if used.
ARCH_IN_NAME
If defined, this variable causes make-kpkg to use an extended name for the kernel
image package by embedding the subarchitecture in the image name, so one could
write a script to create multiple subarchitectures one after the other. Please
note that only the package name is affected, not module locations etc.
CONFDIR
Set this variable, either in the environment or in the config file, to point to the
location where the kernel config files are located. These are architecture specific
.config files (look at /usr/share/kernel-package/Config for examples). This is use‐
ful for people who need to compile for several architectures. Defaults to
/usr/share/kernel-package/Config
IMAGEDIR
If you want the image to be stored elsewhere than /boot set this variable to the
dir where you want the image. This may be of help to loadlin users. Defaults to
/boot.
MODULE_LOC
Set this variable, either in the environment or in the config file, to point to the
location where the add-on modules are located. Defaults to /usr/src/modules
The value of a variable can be set so:
a) Defaults exist in the rules file. These are the values used if no customization is
done.
b) Variables can be set in the config file /etc/kernel-pkg.conf. These values over‐
ride the defaults.
c) Variables can also be set by setting a corresponding environment variable. These
values override the config file and the defaults.
d) Using make-kpkg options, or, if using the rules file directly, on command line
# xxx/rules DEBIAN_REVISION=2.0a kernel_image
This overrides all the above methods.
FILES
The file described here is /etc/kernel-pkg.conf or ~/.kernel-pkg.conf.
SEE ALSO
make(1), make-kpkg(1), kernel-img.conf(5), The GNU Make manual
BUGS
There are no bugs. Any resemblance thereof is delirium. Really.
AUTHOR
This manual page was written by Manoj Srivastava <srivasta AT debian.org>, for the Debian
GNU/Linux system.
Debian Jan 7 1997 KERNEL-PKG.CONF(5)
|