Import Debian changes 1.8.5-1
[hcoop/debian/openafs.git] / debian / openafs-modules-dkms.dkms
diff --git a/debian/openafs-modules-dkms.dkms b/debian/openafs-modules-dkms.dkms
new file mode 100644 (file)
index 0000000..81b2a46
--- /dev/null
@@ -0,0 +1,47 @@
+# DKMS configuration for the OpenAFS kernel module.  -*- sh -*-
+
+# For i386 and amd64, extract the architecture from the kernel version string.
+# The version string will look like 3.2.0-4-686-pae or 3.2.0-4-amd64.  This
+# allows building amd64 kernel modules on the i386 architecture.  Further
+# cases like this can be added later if other architectures have similar
+# issues.
+ARCH=`echo "$kernelver" | cut -d- -f 3`
+case "$ARCH" in
+  amd64)     AFS_SYSNAME="amd64_linuxXX" ;;
+  486 | 686) AFS_SYSNAME="i386_linuxXX"  ;;
+  *)         AFS_SYSNAME="UNKNOWN"       ;;
+esac
+
+# The kernel version should be part of the SYSNAME.  We really only support
+# 2.6 and later, but be complete.
+case "$kernelver" in
+  2.2.*)       AFS_SYSKVERS=22 ;;
+  2.4.*)       AFS_SYSKVERS=24 ;;
+  2.6.* | 3.*) AFS_SYSKVERS=26 ;;
+  *)           AFS_SYSKVERS=26 ;;
+esac
+AFS_SYSNAME=`echo "$AFS_SYSNAME" | sed "s/XX\$/$AFS_SYSKVERS/"`
+
+# The version is replaced at build time by dh_dkms invoked in debian/rules.
+PACKAGE_NAME="openafs"
+PACKAGE_VERSION="#MODULE_VERSION#"
+
+# General DKMS settings.
+BUILT_MODULE_NAME[0]="$PACKAGE_NAME"
+DEST_MODULE_LOCATION[0]="/updates/dkms/"
+AUTOINSTALL=yes
+
+# Tell configure the sysname if we were able to determine it.
+if [ "${AFS_SYSNAME}" = 'UNKNOWN' ] ; then
+    CONFIGURE_SYSNAME=
+else
+    CONFIGURE_SYSNAME="--with-afs-sysname=${AFS_SYSNAME}"
+fi
+
+# Set the build and clean rules.
+MAKE[0]="(./configure --disable-linux-syscall-probing ${CONFIGURE_SYSNAME} \
+                      --with-linux-kernel-packaging                        \
+                      --with-linux-kernel-headers=${kernel_source_dir}     \
+          && make                                                          \
+          && mv src/libafs/MODLOAD-*/openafs.ko .)"
+CLEAN="rm -f openafs.ko && make clean"