]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
* README.modules: Add documentation for module-assistant and recommend
authorRuss Allbery <rra@debian.org>
Sun, 8 May 2005 20:33:22 +0000 (20:33 +0000)
committerRuss Allbery <rra@debian.org>
Sun, 8 May 2005 20:33:22 +0000 (20:33 +0000)
    it when using Debian kernels.  Mention divergences from upstream in
    module naming.  (Closes: #253168)  Emphasize that the kernel source
    tree used for make-kpkg must be identically configured to the kernel
    the module will be used with.

debian/README.modules
debian/changelog
debian/control

index d2c8e0168c7e5f13bea770ae4716ec223fe03902..421da8384402fa1dfbd5e330c1a48e42dd37044d 100644 (file)
@@ -1,35 +1,93 @@
-                      Building Kernel Modules
-----------------------------------------
+                         Building Kernel Modules
+                         -----------------------
 
+The easiest way to get AFS modules is to install prebuilt modules.  For
+example, if you are running kernel 2.4.27-2-686-smp, you might try:
 
- The easiest way to get AFS modules is to install prebuilt modules.
-Fore example if you are running kernel 2.2.18 you might try
+    apt-get install openafs-modules-2.4.27-2-686-smp
 
-apt-get install openafs-modules-2.2.18
+Pre-built modules are not provided with Debian, but many organizations
+that use OpenAFS build their own and provide them locally.
 
-If this doesn't work, then you will need to build your own modules.
-This means having kernel sources available.  You should install a
-kernel sources package and untar it in /usr/src.  Then, install
+If this doesn't work, you will need to build your own modules.  There are
+two methods for doing this.
+
+When following either method, be aware that the Debian package creates a
+module named openafs, not libafs as is used by upstream.  It also prefers
+not to add the .mp extension for modules built for SMP kernels; the
+indication of whether the module is for an SMP kernel should go into the
+package name via something like --append_to_version, not into the file
+name of the module.
+
+module-assistant
+----------------
+
+This method is the best one to use when using the kernels that come with
+Debian, since module-assistant knows how to get the right header files to
+build modules for your currently running kernel.
+
+First, install module-assistant and then prepare the kernel headers and
+install openafs-modules-source:
+
+    apt-get install module-assistant
+    module-assistant prepare openafs-modules
+
+(If you want to build modules for a different kernel than your currently
+running one, pass the -l flag to module-assistant.  See the man page.)
+module-assistant may be able to find the right packages itself or it may
+tell you to install particular packages.  Once you've finished with that,
+build the module with:
+
+    module-assistant auto-build openafs-modules
+
+You may prefer to pass module-assistant the -t flag to get more
+conventional output.  If everything works correctly, the openafs-modules
+deb should be created in /usr/src.  You can use dpkg -i to install it.
+
+module-assistant will take care of naming the openafs-modules package
+correctly so that it matches the name of the kernel-image package and
+installs its modules into the correct directory.
+
+make-kpkg
+---------
+
+This method works well when you're also building your own kernel, rather
+than using the pre-packaged Debian one.
+
+Install a kernel source package and untar it in /usr/src.  Then, install
 openafs-modules-source.
 
-apt-get install openafs-modules-source
+    apt-get install openafs-modules-source
 
-Next, unpack openafs-modules-source
+Next, unpack openafs-modules-source:
 
-cd /usr/src
-tar xzf openafs.tar.gz
+    cd /usr/src
+    tar xzf openafs.tar.gz
 
 Now, change into your kernel source tree.  You should then create a
-.config file; the easiest way to do this is to run make menuconfig or
-to copy in a kernel configuration from the same version of the kernel.
+.config file; the easiest way to do this is to run make menuconfig or to
+copy in a kernel configuration from the same version of the kernel.
 Debian kernel packages store a copy of their kernel configuration in
-/boot/config.version_number.  Finally build the modules
+/boot/config.version_number.
+
+The kernel configuration needs to be identical to the configuration that
+produced the kernel that you're using.  Ideally, you would build the
+kernel image you're going to use with make-kpkg kernel_image and install
+that along with the module image, although as long as the configuration is
+identical, you may be able to get away with using a pre-built kernel.  (A
+better approach, if you're using pre-built kernels, may be to use
+module-assistant as described above.)
+
+Finally, build the modules:
 
-make-kpkg configure
-make-kpkg modules_image
+    make-kpkg modules_image
 
 You may need to use the --append_to_version switch to add version suffixes
-like -686 if your modules install into /lib/modules/version-686.
-Ignore any errors about genchanges.sh failing.  An openafs-modules deb
-should be created.  Use dpkg -i to install this version.
+like -686 or -smp to match your kernel and install the OpenAFS module into
+a directory like /lib/modules/version-686.  Be aware that the Debian
+OpenAFS packages build either a regular module or an SMP module, not both,
+so the generated package will only work with a kernel with the same SMP
+configuration.
 
+An openafs-modules deb should be created in /usr/src.  Use dpkg -i to
+install this version.
index 6d1bbdafe0b716210f7d968ec1ed3ac6faa06140..0fdced11421503c4ee0d0800782f23619a992b29 100644 (file)
@@ -6,6 +6,11 @@ openafs (1.3.81-5) unstable; urgency=low
     or ext3 and that XFS and ReiserFS will not work.  upserver and
     upclient are now provided.  Provide some information about why
     kaserver is not provided.  (Closes: #249315)
+  * README.modules: Add documentation for module-assistant and recommend
+    it when using Debian kernels.  Mention divergences from upstream in
+    module naming.  (Closes: #253168)  Emphasize that the kernel source
+    tree used for make-kpkg must be identically configured to the kernel
+    the module will be used with.
   * Overhaul the module build rules.
     - Use debhelper to build the module binary package.
     - Let debhelper handle the module postinst and prerm control scripts.
index 4c95a142d59924c16e887cc7411104339fb812fa..c55adf1cf23b5e1aff7ea881e5e514d6fcfd435f 100644 (file)
@@ -76,7 +76,7 @@ Description: The AFS distributed filesystem- development libraries
 
 Package: openafs-modules-source
 Priority: extra
-Depends: bison, flex, debhelper (>= 4.0.0), libpam0g-dev, libncurses5-dev, kernel-package, comerr-dev
+Depends: bison, flex, debhelper (>= 4.0.0), libpam0g-dev, libncurses5-dev, kernel-package | module-assistant, comerr-dev
 Architecture: all
 Description: The AFS distributed filesystem- Module Sources
  AFS is a distributed filesystem allowing cross-platform sharing of