[Pkg-iscsi-maintainers] [SCM] Debian iscsitarget packaging branch, master, updated. debian/1.4.20.1-2-21-gcff6ba4

Ritesh Raj Sarraf rrs at researchut.com
Tue Aug 3 05:54:39 UTC 2010


The following commit has been merged in the master branch:
commit e219edda01d1d17f755cd336aadcffd7a1f08dc3
Author: Ritesh Raj Sarraf <rrs at researchut.com>
Date:   Mon Aug 2 19:12:27 2010 +0530

    add dkms support
    
    Thanks to Evgeniv Golov's tp-smapi

diff --git a/debian/changelog b/debian/changelog
index 8ae2b70..c41f7f4 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -3,8 +3,9 @@ iscsitarget (1.4.20.2-1) unstable; urgency=low
   * New Upstream Bug Fix Release
   * Fix incorrect path installation. Correct path is /etc/iet/ 
   * Update Standards Version to 3.9.1 (No changes required) 
+  * Add DKMS support for iscsitarget kernel module building 
 
- -- Ritesh Raj Sarraf <rrs at debian.org>  Mon, 02 Aug 2010 18:39:22 +0530
+ -- Ritesh Raj Sarraf <rrs at debian.org>  Mon, 02 Aug 2010 19:11:57 +0530
 
 iscsitarget (1.4.20.1-2) unstable; urgency=low
 
diff --git a/debian/dkms.conf.in b/debian/dkms.conf.in
new file mode 100644
index 0000000..76dcc97
--- /dev/null
+++ b/debian/dkms.conf.in
@@ -0,0 +1,7 @@
+PACKAGE_NAME="iscsitarget"
+PACKAGE_VERSION="__VERSION__"
+MAKE[0]="make -C ${kernel_source_dir} M=${dkms_tree}/${PACKAGE_NAME}/${PACKAGE_VERSION}/build"
+CLEAN="make -C ${kernel_source_dir} M=${dkms_tree}/${PACKAGE_NAME}/${PACKAGE_VERSION}/build clean"
+AUTOINSTALL=yes
+BUILT_MODULE_NAME[0]="iscsi_trgt.ko"
+DEST_MODULE_LOCATION[0]=/kernel/drivers/iscsi
diff --git a/debian/iscsitarget-dkms.postinst b/debian/iscsitarget-dkms.postinst
new file mode 100644
index 0000000..4063bb8
--- /dev/null
+++ b/debian/iscsitarget-dkms.postinst
@@ -0,0 +1,24 @@
+#!/bin/sh
+
+set -e
+
+package=iscsitarget-dkms
+name=iscsitarget
+
+version=`dpkg-query -W -f='${Version}' "$package" \
+        |rev|cut -d- -f2-|rev|cut -d':' -f2|tr -d "\n"`
+
+isadded=`dkms status -m "$name" -v "$version"`
+
+if [ "x${isadded}" = "x" ] ; then
+        dkms add -m "$name" -v "$version"
+fi
+
+if [ "$1" = 'configure' ] ; then
+        dkms build -m "$name" -v "$version" && dkms install -m "$name" -v "$version" || true
+fi
+
+#DEBHELPER#
+
+exit 0
+
diff --git a/debian/iscsitarget-dkms.prerm b/debian/iscsitarget-dkms.prerm
new file mode 100644
index 0000000..8bc9449
--- /dev/null
+++ b/debian/iscsitarget-dkms.prerm
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+set -e
+
+package=iscsitarget-dkms
+name=iscsitarget
+
+version=`dpkg-query -W -f='${Version}' "$package" \
+        |rev|cut -d- -f2-|rev|cut -d':' -f2|tr -d "\n"`
+
+dkms remove -m "$name" -v "$version" --all || true
+
+#DEBHELPER#
+
+exit 0
+
diff --git a/debian/rules b/debian/rules
index 54aed38..a0bf1e7 100755
--- a/debian/rules
+++ b/debian/rules
@@ -29,6 +29,9 @@ PACKAGE=iscsitarget
 psource=iscsitarget-source
 pmodules = $(PACKAGE)-module-$(non_epoch_version)
 
+# DKMS package
+pdkms=iscsitarget-dkms
+
 MA_DIR ?= /usr/share/modass
 -include $(MA_DIR)/include/generic.make
 -include $(MA_DIR)/include/common-rules.make
@@ -220,16 +223,52 @@ install-indep:
 	cp debian/copyright \
 		debian/$(psource)/usr/src/modules/$(PACKAGE)/debian
 	
-#	 install debian/ files
+	# install debian/ files
 	cd debian ; cp changelog control compat *.modules.in rules copyright $(psource)/usr/src/modules/$(PACKAGE)/debian
 	
-#	 create toplevel module Makefile
+	# create toplevel module Makefile
 	echo "obj-m = kernel/" > debian/$(psource)/usr/src/modules/$(PACKAGE)/Makefile
 	
-#	 tar the stuff
+	# For DKMS
+	# Create the directories to install the source into
+	dh_installdirs -p$(pdkms)  usr/src/modules/$(PACKAGE)
+	dh_installdirs -p$(pdkms)  usr/src/modules/$(PACKAGE)/debian
+	dh_installdirs -p$(pdkms)  usr/src/modules/$(PACKAGE)/include
+	dh_installdirs -p$(pdkms)  usr/src/modules/$(PACKAGE)/kernel
+	dh_installdirs -p$(pdkms)  usr/src/modules/$(PACKAGE)/patches
+	
+	# Copy only the driver source to the proper location
+	cp kernel/*  debian/$(pdkms)/usr/src/modules/$(PACKAGE)/kernel/
+	cp include/* debian/$(pdkms)/usr/src/modules/$(PACKAGE)/include/
+	cp patches/* debian/$(pdkms)/usr/src/modules/$(PACKAGE)/patches/
+	
+	# Copy the needed debian/ pieces to the proper location
+	cp debian/*-module-* \
+		debian/$(pdkms)/usr/src/modules/$(PACKAGE)/debian
+	cp debian/control.modules.in \
+		debian/$(pdkms)/usr/src/modules/$(PACKAGE)/debian/control.in
+	cp debian/rules \
+		debian/$(pdkms)/usr/src/modules/$(PACKAGE)/debian
+	cp debian/changelog \
+		debian/$(pdkms)/usr/src/modules/$(PACKAGE)/debian
+	cp debian/copyright \
+		debian/$(pdkms)/usr/src/modules/$(PACKAGE)/debian
+	
+	# install debian/ files
+	cd debian ; cp changelog control compat *.modules.in rules copyright $(pdkms)/usr/src/modules/$(PACKAGE)/debian
+	
+	# create toplevel module Makefile
+	echo "obj-m = kernel/" > debian/$(pdkms)/usr/src/modules/$(PACKAGE)/Makefile
+
+
+	# tar the stuff
 	cd debian/$(psource)/usr/src/ ; tar cvjf iscsitarget.tar.bz2 modules ; rm -rf modules
 	
 	install -m 755 $(CURDIR)/debian/modass.iscsitarget-source $(CURDIR)/debian/$(psource)/usr/share/modass/overrides/iscsitarget-source
+
+        # Prepare dkms.conf from the dkms.conf.in template
+	sed "s/__VERSION__/$(DEB_UPSTREAM_VERSION)/g" debian/dkms.conf.in > debian/$(pdkms)/usr/src/$(sname)-$(sversion)/dkms.conf
+
 	dh_install -i
 
 install-arch:

-- 
Debian iscsitarget packaging



More information about the Pkg-iscsi-maintainers mailing list