unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (Debian-5.0)
Page:
Section:
Apropos / Subsearch:
optional field

KERNEL-PKG.CONF(5)          Debian GNU/Linux manual         KERNEL-PKG.CONF(5)



NAME
       kernel-pkg.conf - site wide 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 Make-
       file snippet included during the kernel  packages  build  process,  and
       hence  you may put any legal Makefile 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-*  package maintainer. Set up at package installa-
              tion 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 installa-
              tion by the postinst.  Can  be  overridden  by  the  environment
              variable KPKG_EMAIL.

       pgp    Name to search for in the pgp database if separate modules (like
              pcmcia etc) are being built in /usr/src/modules/.  Can be  over-
              ridden  by  the environment variable PGP_SIGNATURE, and is over-
              ridden (again) by the --pgpsign option of  make-kpkg.   Defaults
              to maintainer.  (Optional)

       debian The  version  of the kernel packages, includes both the upstream
              Set to YES, this causes a make clean to be run  in  the  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)

       link_in_boot
              Set  to  True if you want the symbolic link to the kernel image,
              namely, vmlinuz in /boot rather than  the  default  /.   Can  be
              overridden  by  the environment variable LINK_IN_BOOT.  Defaults
              to undefined.  (Optional)

       kimage The kernel image type (i.e. zImage or bzImage). Can be  overrid-
              den  from the environment variable IMAGE_TYPE, and is overridden
              (again) by the  options  --zimage  or  --bzimage  of  make-kpkg.
              Defaults to bzImage.  (Optional)

       no_symlinks
              Whether  to use symlinks to the image file. Can be overridden by
              the  environment  variable  NO_SYMLINK  Mutually  exclusive   to
              reverse_symlinks.   Can be used with link_in_boot.  The image is
              placed in vmlinuz (instead  of  /boot/vmlinuz-X.X.XX).  The  old
              vmlinuz is moved to vmlinuz.old unconditionally. (Normally, that
              is only done if the version of the new image  differs  from  the
              old  one).  This  restricts  you  to two images, unless you take
              additional action and save copies of older images. This  is  for
              people  who  have  /boot  on a system that does not use symbolic
              links (and say, they use loadlin as a boot loader).  This  is  a
              Hack.  Defaults to  undefined (optional)

       reverse_symlinks
              Whether  to  use reverse symlinks (that is, the real file is the
              one without the version number, and the numbered version is  the
              link)  to  the  image file. Can be overridden by the environment
              variable REVERSE_SYMLINK Mutually exclusive to no_symlinks.  Can
              be  used  with link_in_boot.  Just like no_symlinks, except that
              the /boot/vmlinuz-X.XX is  symlinked  to  the  real  new  image,
              vmlinuz. This, too, restricts you to just two images unless fur-
              ther action is taken. The older symlinks are left dangling. This
              is  for  people with /boot on umsdos, and who can't see the link
              in dos, but do want to know the image  version  when  in  Linux.
              This is a Hack.  Defaults to  undefined. (optional)

       patch_the_kernel
              This  is  an  experts only variable. If set to YES (ENV variable
              PATCH_THE_KERNEL  overrides  this),  the  build  process  causes
              run-parts  to  be  run  over /usr/src/kernel-patches/$(architec-
              ture)/apply and (hopefully) reverses the process during clean by
              running   run-parts   over   /usr/src/kernel-patches/$(architec-
              ture)/unpatch.  The special architecture all is  used  for  arch
              independent patches.

       config_target
              What type of configure step to do.  Defaults to oldconfig, which
              is good for non-interactive (or minimally interactive) runs.  If
              you  are setting patch_the_kernel to YES and some of the patches
              change what configuration settings are available, then  you  may
              wish to set this to something else (like menuconfig or xconfig).
              (ENV variable CONFIG_TARGET overrides  this  setting.)   If  the
              value of config_target is other than config, oldconfig, menucon-
              fig or xconfig then it is reset to oldconfig.

       use_saved_config
              This is an experts only variable. If set  to  NO  (ENV  variable
              USE_SAVED_CONFIG  overrides  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 gain-
              ing superuser access (for  example,  `sudo'  or  `fakeroot')  as
              needed  by  dpkg-buildpackages' -r option. The environment vari-
              able 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  target.  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 environ-
              ment variable DELETE_BUILD_LINK overrides this.

       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 envi-
              ronment variable CLEAN_SOURCE overrides this.

       install_vmlinux
              Set to YES to install the uncompressed kernel  ELF  image  along
              with the bootable compressed kernel image (vmlinuz).  This image
              is necessary for profiling kernel and  userspace  with  oprofile
              (oprofile.sourceforge.net, i386 only).

       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 any-
              thing 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  facili-
              tate massaging 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 pack-
              aged -- if the script operates on the current directory and  its
              children, the original source tree should remain intact. This is
              to facilitate massaging of the kernel sources that are  packaged
              (for example, to remove version control directories, or to prune
              away unwanted architectures).

       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 head-
              ers 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 massaging 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 doc-
              umentation  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  massag-
              ing  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 documenta-
              tion   that   should   be   installed   in   /usr/share/doc/ker-
              nel-image-X.X.XX/  directory. There is no checking for name con-
              flicts, 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  kernels. With this option, kernel-source and
              kernel-header packages shall not be just full of  dangling  sym-
              links,  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_SYM-
              LINKS_IN_SRC overrides this.

       make_libc_headers
              This is meant to be used by the libc6 maintainer, when  he  com-
              piles  libc6,  to also package up the corresponding headers.  DO
              NOT SET THIS unless you know what you are doing,  since  a  mis-
              match  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.

       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  subarchitec-
              ture   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
              This variable should be set to a directory which contains archi-
              tecture  specific .config files (look at /usr/share/kernel-pack-
              age/Config for examples). This is useful for people who need  to
              compile  for  several architectures. Defaults to /usr/share/ker-
              nel-package/Config

       INITRD_CMD
              Set this variable to a space separated list of executables  that
              create  an  initial  RAM  disk.  This  only  has  any  effect if
              installing a kernel-image that uses an  initial  RAM  disk.  The
              commands  so  pointed  must be drop-in compatible with mkinitrd.
              This sets the built in default used by the  postinst  script  at
              installation  time, it can be overridden by the administrator at
              any target machine in  /etc/kernel-img.conf.   If  not  set,  it
              Defaults  to  a  subset of mkinitrd mkinitrd.yaird mkinitramfs ,
              the subset being decided based on  the  version  of  the  kernel
              being built, so one should refrain from setting this manually --
              unless one knows what one is doing.

       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

       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. Defaults to /usr/share/kernel-package/Config

       PATCH_DIR
              Set this variable, either in the environment or  in  the  config
              file,  to  point to the location where the add-on kernel patches
              are located. Defaults to /usr/src/kernel-patches/ARCHITECTURE

       ALL_PATCH_DIR
              Set this variable, either in the environment or  in  the  config
              file, to point to the location where the add-on arch independent
              kernel  patches   are   located.   Defaults   to   /usr/src/ker-
              nel-patches/all

       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 override 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   ~/.ker-
       nel-pkg.conf.

SEE ALSO
       make-kpkg(1), kernel-img.conf(5), make(1), The GNU Make manual.

BUGS
       There are no bugs.  Any resemblance thereof is delirium. Really.

AUTHOR
       This manual page was written by Manoj Srivastava <srivastaATdebian.org>,
       for the Debian GNU/Linux system.



Debian                            Jan  7 1997               KERNEL-PKG.CONF(5)