1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352
|
.\" Hey, Emacs! This is an -*- nroff -*- source file.
.\" Copyright (c) 1997 Manoj Srivastava <srivasta@debian.org>
.\"
.\" This is free documentation; you can redistribute it and/or
.\" modify it under the terms of the GNU General Public License as
.\" published by the Free Software Foundation; either version 2 of
.\" the License, or (at your option) any later version.
.\"
.\" The GNU General Public License's references to "object code"
.\" and "executables" are to be interpreted as the output of any
.\" document formatting or typesetting system, including
.\" intermediate and printed output.
.\"
.\" This manual is distributed in the hope that it will be useful,
.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
.\" GNU General Public License for more details.
.\"
.\" You should have received a copy of the GNU General Public
.\" License along with this manual; if not, write to the Free
.\" Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139,
.\" USA.
.\"
.\" $Id: kernel-pkg.conf.5,v 1.37 2003/09/01 17:09:15 srivasta Exp $
.\"
.TH KERNEL\-PKG.CONF 5 "Jan 7 1997" "Debian" "Debian GNU/Linux manual"
.\" NAME should be all caps, SECTION should be 1-8, maybe w/ subsection
.\" other parms are allowed: see man(7), man(1)
.SH NAME
kernel\-pkg.conf \- configuration file for make\-kpkg
.SH SYNOPSIS
.I /etc/kernel\-pkg.conf
or
.I ~/.kernel\-pkg.conf
.SH "DESCRIPTION"
The file
.I /etc/kernel\-pkg.conf
or
.I ~/.kernel\-pkg.conf
is actually a
.BR Makefile
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
.I ~/.kernel\-pkg.conf
exists, it is loaded in favor of the system wide configuration file
.IR /etc/kernel\-pkg.conf .
.PP
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
.BR make\-kpkg .
.PP
At the moment, the user modifiable variables supported are:
.TP
.B maintainer
Local kernel (image, header, doc, etc.) package maintainer. Set up at
package installation by the
.IR postinst .
Can be overridden by the environment variable
.BR 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.
.TP
.B email
The email address of that person. Set up at package installation by
the
.IR postinst .
Can be overridden by the environment variable
.BR KPKG_EMAIL .
.TP
.B pgp
A key-ID to use when signing packages. Usually passed along to
.I dpkg\-buildpackage
using the
.I \-k
option, and also third party modules in the
.B KMAINT
environment variable, if separate modules (like pcmcia, etc.) are being
built in
.IR $MODULE_PATH .
Can be overridden by the environment variable
.BR PGP_SIGNATURE ,
and is overridden (again) by the
.IR \-\-pgpsign
option of
.BR make\-kpkg .
Defaults to
.IR maintainer .
(Optional)
.TP
.B debian
The version of the kernel packages, includes both the upstream version
and the Debian revision. Can be overridden
by the environment variable
.BR DEBIAN_REVISION ,
and is overridden (again) by the
.IR \-\-revision
option of
.BR make\-kpkg .
Defaults to
.I <VERSION>-10.0.0.Custom
(Optional)
.TP
.B debian_revision_mandatory
Normally unset. If this, or the environment variable
.B DEBIAN_REVISION_MANDATORY
are set, then not providing a Debian revision results in an error (and
.B make\-kpkg
shall not provide a default value of 10.0.0.Custom)
.TP
.B kimage
The kernel image type (i.e. zImage or bzImage). Can be
overridden from the environment variable
.BR IMAGE_TYPE ,
and is overridden (again) by the options
.IR \-\-zimage
or
.IR \-\-bzimage
of
.BR make\-kpkg .
Defaults to
.IR bzImage .
(Optional)
.TP
.B config_target
What type of configure step to do.
Defaults to oldconfig, which is good for non\-interactive (or minimally
interactive) runs.
(ENV variable
.B CONFIG_TARGET
overrides this setting.) If the value of config_target is not
recognized, then it is reset to oldconfig.
.TP
.B use_saved_config
This is an experts only variable. If set to NO (ENV
variable
.B USE_SAVED_CONFIG
overrides this), the file .config.save in the top level directory is
ignored.
.TP
.B root_cmd
This is a variable meant to be passed on to
.B dpkg\-buildpackage
in the
.I buildpackage
target.
This should be set to a means of gaining superuser access (for
example,
.I `sudo'
or
.IR `fakeroot' )
as needed by
.BR dpkg\-buildpackages '
\-r option. The environment variable
.B ROOT_CMD
overrides this. Use the environment variable
.B UNSIGN_SOURCE
to pass an option to dpkg\-buildpackage to not sign the
source; similarly, use the environment variable
.B UNSIGN_CHANGELOG
to pass an option to dpkg\-buildpackage to not sign the
changelog. Again, this variable is only useful for the
.I buildpackage
target. Set the environment variable
.B ROOT_CMD
if you just wish to build the kernel image, for instance.
.TP
.B delete_build_link
If set to YES, the symbolic link
.I /lib/modules/$VERSION/build
shall be removed from the resulting .deb package. The environment
variable
.B DELETE_BUILD_LINK
overrides this. The default is unset. Note that this is case
sensitive, yes shall not work.
.TP
.B 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
.B CLEAN_SOURCE
overrides this. The default is unset. Note that this is case
sensitive, yes shall not work.
.TP
.B 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.
.TP
.B 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.
.TP
.B 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,
.IR ./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
example, to remove version control directories, or to prune away
unwanted architectures).
.TP
.B 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).
.TP
.B 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).
.TP
.B extra_docs
This variable should be set to the path of any extra documentation
that should be installed in
.I /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
.B EXTRA_DOCS
overrides this, and would most likely be how extra documentation is
specified.
.TP
.B 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 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
.B KPKG_FOLLOW_SYMLINKS_IN_SRC
overrides this. The default is unset.
.TP
.B make_libc_headers
This is meant to be used by the
.I libc6
maintainer, when he compiles
.IR libc6 ,
to also package up the corresponding headers.
.B DO NOT SET THIS
unless you know what you are doing, since a mismatch between the
headers you package and
.I libc6
may well
create a subtle instability in all code compiled on your machine. You
have been warned. The environment variable
.B MAKE_LIBC_HEADERS
overrides this. The default is unset.
.TP
.B CONCURRENCY_LEVEL
If defined, this variable sets the concurrency level of make used to
compile the kernel and the modules set using
.I -j
flags to the sub make in the
.B build
target of
.B make\-kpkg.
Should be a (small) integer, if used.
.TP
.B ARCH_IN_NAME
If defined, this variable causes
.B 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.
.B Please note
that only the package
.I name
is affected, not module locations etc.
.TP
.B 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
.I .config
files (look at
.I /usr/share/kernel\-package/Config
for examples). This is useful for people who need to compile for
several architectures. Defaults to
.I /usr/share/kernel\-package/Config
.TP
.B IMAGEDIR
If you want the image to be stored elsewhere than
.I /boot
set this variable to the dir where you want the image. This may be of
help to
.B loadlin
users. Defaults to
.IR /boot .
.TP
.B 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
.I /usr/src/modules
.TP
.PP
The value of a variable can be set so:
.IP a)
Defaults exist in the rules file. These are the values used if no
customization is done.
.IP b)
Variables can be set in the config file
.IR /etc/kernel\-pkg.conf .
These values override the defaults.
.IP c)
Variables can also be set by setting a corresponding environment
variable. These values override the config file and the defaults.
.IP d)
Using
.B make\-kpkg
options, or, if using the rules file directly, on
command line
.br
.BI "# xxx/rules DEBIAN_REVISION=2.0a kernel_image"
.br
This overrides all the above methods.
.SH FILES
The file described here is
.I /etc/kernel\-pkg.conf
or
.IR ~/.kernel\-pkg.conf .
.SH "SEE ALSO"
.BR make (1),
.BR make\-kpkg (1),
.BR kernel\-img.conf (5),
.B The GNU Make manual
.SH BUGS
There are no bugs. Any resemblance thereof is delirium. Really.
.SH AUTHOR
This manual page was written by Manoj Srivastava <srivasta@debian.org>,
for the Debian GNU/Linux system.
|