Updated README with subarch-specific stuff.

svn path=/branches/kernel-image-2.6.11/; revision=3148
This commit is contained in:
Jurij Smakov 2005-05-19 01:01:40 +00:00
parent 28a52d3732
commit 32599383b3
2 changed files with 56 additions and 14 deletions

69
README
View File

@ -1,27 +1,70 @@
Migrating to the common kernel-image package
--------------------------------------------
Files for architecture <arch> should be placed into arch/<arch>.
Minimally, this directory should contain a control.in, config.default
and at least one flavour configuration file config.<flavour>. It can
optionally contain config.common, Makefile.inc and multiple flavour
configuration files. For arches with subarches the subdirectory
arch/<arch>/<subarch> with the same file structure must be created
for each subarch.
Config files
------------
All the config files live in the arch subdirectory. The config
file for a particular subarch is constructed by concatenating
the following files (any of them can be missing):
Configuration files are constructed dynamically by concatenating a number
of config files as described below. Any of the files, except the .default
and lowest-level .<flavour> files, may be missing.
For architecture without subarches:
Configuration file for kernel-image:
arch/config.common
arch/<arch>/config.common
arch/<arch>/config.<flavour>
Configuration file for kernel-headers:
arch/<arch>/config.default
For architecture with subarches:
y concatenating:
arch/config.common
arch/<arch>/config.common
arch/<arch>/<subarch>/config.common
arch/<arch>/<subarch>/config.<flavour>
Configuration file for kernel-headers:
arch/<arch>/<subarch>/config.default
arch/config.common - architecture-independent config file
arch/<arch>/config.common - subarch-independent config file
for a particular architecture
arch/<arch>/config.<subarch> - subarch-specific config file.
arch/<arch>/config.default - the arch-specific config file used
to build the kernel-headers.
It is possible to avoid the inclusion of the arch-independent
config file (handy for the transitional period) by setting the
include_common_config variable to 'no' in arch/<arch>/Makefile.inc.
include_common_config variable to 'no' in Makefile.inc.
Debian and arch/subarch specific patches
-----------------------------
This is not really settled yet. Ideally we would like to integrate all
this stuff into the kernel-source package. So for now it is probably
reasonable to assume that common-arch debian patches are going to be
in debian/patches directory. As I understand, we will not need the
kernel-tree stuff, as the source with patches is going to accompany each
upload. So we might just place them there along with the list, which will
determine the order of application. For unmerged arch/subarch specific
patches we can do the same in the arch/subarch directory: patches/
subdir will contain patches and a list. Currently the kernel is patched
using the kernel-source package only.
Control file
------------
The master control file debian/control must be generated before
the package is uploaded. debian/rules contains the debian/control
target, which generates the control file by concatenating the
common debian/control.in and all the arch/<arch>/control.in
files, and performing the variable substitution. Currently the
following variables are going to be substituted:
common debian/control.in and all the control.in files found in
and in subdirectories of arch/<arch>, and performing the variable
substitution. Currently the following variables are going to be
substituted:
@karch@ Replaced by the architecture string, identical to
DEB_HOST_ARCH, as returned by dpkg-architecture.

View File

@ -11,7 +11,6 @@ SHELL := sh -e
debver := $(version)-$(abiname)
uver := $(subst .,_,$(version))
debnum := -$(abiname)
bpkg := kernel-build-$(debver)
kbpkg := kernel-kbuild-$(version)-$(abiname)
kpatch := /usr/src/kernel-patches/all/$(version)/apply/debian $(version)-$(ktver)
DEBIAN_UPSTREAM_VERSION := $(version)