Wichert Akkerman wrote: > I've finally gotten around to making a simple skeleton for packaging > kernel modules. When I have some more free time I'll expand it a bit > and write some documentation to go with it. Oh, and I might test it > since it's currently completely untested :). > > Anyway, for the interested the files are at > http://www.wi.leidenuniv.nl/~wichert/debian/
I wrote up some basic docs on this a while ago and gave them to Manoj. here they are again. Kernel-package add on modules from the packager's perspective. ------------------------------------------------------------- This explains how you, a developer, can integrate your package with kernel-package, so when the user runs "make-kpkg modules_image", kernel-package builds your kernel modules. First, you need to make your package pack up its _source_ into a .deb file. When this .deb is installed, it should place the source in /usr/src/modules/<package>, or something similar. Or it can just install a tarball in /usr/src/ that the user must manually unpack. There are advantages and disadvantages to both approaches. When the user runs make-kpkg, kernel-package looks at all the directories in /usr/src/modules/. It cd's into each of them, and runs "./debian/rules <target>". The rest is up to you; your debian/rules file must provide the various targets kernel-package calls, which are: a) kdist_image Compiles the modules and generates a .deb file containing them. b) kdist_configure Configures your package. c) kdist Generates the .deb, and also generates a .changes file so the package may be uploaded. Additionally, the following information is provided in the environment to your debian/rules: a) KVERS Contains the kernel version b) KSRC Contains the location of the kernel sources c) KMAINT Contains the Name of the maintainer to pass to PGP d) KEMAIL Caontains the email address of the maintainer You typically want to put the .deb file you create in $(KSRC)/.. , which is typically /usr/src, but may be something different. You should encode the version of the kernel the modules are built for in the package name, so you might use somthing like "<package>_$(KVERS)" as the package name. KMAINT and KEMAIL should be used in the .changes file generated by the kdist target. -- see shy jo