Hello Release Team,

I have recently added the dkms feature to sysprof. The dkms feature is very 
good, in that, it allows automatic building, installation and removal for 
kernel modules on kernel installs/upgrades/removes.

I think it is a good feature to have. The version of sysprof (1.0.12-3) in 
experimental has just this feature.

Would it be okay to upload that for Squeeze ? It will be nice for sysprof to 
auto-build its kernel module is Squeeze. I have attached the debdiff. Please 
let me know if I can re-upload it for Squeeze.


Ritesh

-- 
Ritesh Raj Sarraf | http://people.debian.org/~rrs
Debian - The Universal Operating System
diff -Nru sysprof-1.0.12/debian/changelog sysprof-1.0.12/debian/changelog
--- sysprof-1.0.12/debian/changelog	2010-06-14 20:46:22.000000000 +0530
+++ sysprof-1.0.12/debian/changelog	2010-10-03 18:06:33.000000000 +0530
@@ -1,3 +1,11 @@
+sysprof (1.0.12-3) experimental; urgency=low
+
+  * DKMS-ification of the package's kernel module 
+    + Add new package sysprof-module-dkms 
+  * Update Standards Version to 3.9.1 (No Changes Required) 
+
+ -- Ritesh Raj Sarraf <r...@debian.org>  Sun, 03 Oct 2010 18:06:11 +0530
+
 sysprof (1.0.12-2) unstable; urgency=low
 
   * Take maintenance (Closes: #445205)
diff -Nru sysprof-1.0.12/debian/control sysprof-1.0.12/debian/control
--- sysprof-1.0.12/debian/control	2010-06-14 20:46:22.000000000 +0530
+++ sysprof-1.0.12/debian/control	2010-10-03 18:06:33.000000000 +0530
@@ -3,7 +3,7 @@
 Priority: optional
 Maintainer: Ritesh Raj Sarraf <r...@debian.org>
 Build-Depends: debhelper (>= 7.0.50~), binutils-dev (>= 2.17), bzip2, libgtk2.0-dev (>= 2.6.0), libglade2-dev
-Standards-Version: 3.8.4
+Standards-Version: 3.9.1
 Homepage: http://www.daimi.au.dk/~sandmann/sysprof/
 Vcs-Git: git://git.debian.org/collab-maint/sysprof.git
 Vcs-Browser: http://git.debian.org/?p=collab-maint/sysprof.git
@@ -11,7 +11,7 @@
 Package: sysprof
 Architecture: i386 amd64
 Depends: ${shlibs:Depends}, ${misc:Depends}
-Recommends: sysprof-module-source
+Recommends: sysprof-module-source, sysprof-module-dkms
 Description: A system-wide Linux profiler
  Sysprof is a sampling CPU profiler that uses a Linux kernel module to profile
  the entire system, not just a single application. Sysprof handles shared
@@ -40,3 +40,17 @@
  .
  You need a Linux kernel version 2.6.11 or newer on an i386 or amd64
  processor.
+
+Package: sysprof-module-dkms
+Architecture: all
+Depends: debhelper (>= 4.1.0), build-essential, make, dkms (>= 1.95), bzip2, ${misc:Depends}
+Description: Source for the sysprof module - DKMS version
+ Sysprof is a sampling CPU profiler that uses a Linux kernel module to profile
+ the entire system, not just a single application. Sysprof handles shared
+ libraries and applications do not need to be recompiled. In fact they don't
+ even have to be restarted.
+ .
+ This package contains the dkms source for the sysprof's kernel module.
+ .
+ You need a Linux kernel version 2.6.11 or newer on an i386 or amd64
+ processor.
diff -Nru sysprof-1.0.12/debian/control.modules.in sysprof-1.0.12/debian/control.modules.in
--- sysprof-1.0.12/debian/control.modules.in	2010-06-14 20:46:22.000000000 +0530
+++ sysprof-1.0.12/debian/control.modules.in	2010-10-03 18:06:33.000000000 +0530
@@ -1,7 +1,7 @@
 Source: sysprof
 Section: devel
 Priority: optional
-Maintainer: Samuel Mimram <smim...@debian.org>
+Maintainer: Ritesh Raj Sarraf <r...@debian.org>
 Build-Depends: debhelper (>= 5.0.37), bzip2
 Standards-Version: 3.8.0
 
diff -Nru sysprof-1.0.12/debian/dkms.conf.in sysprof-1.0.12/debian/dkms.conf.in
--- sysprof-1.0.12/debian/dkms.conf.in	1970-01-01 05:30:00.000000000 +0530
+++ sysprof-1.0.12/debian/dkms.conf.in	2010-10-03 18:06:33.000000000 +0530
@@ -0,0 +1,7 @@
+PACKAGE_NAME="sysprof-module"
+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]="sysprof-module"
+DEST_MODULE_LOCATION[0]="/updates"
diff -Nru sysprof-1.0.12/debian/rules sysprof-1.0.12/debian/rules
--- sysprof-1.0.12/debian/rules	2010-06-14 20:46:22.000000000 +0530
+++ sysprof-1.0.12/debian/rules	2010-10-03 18:06:33.000000000 +0530
@@ -1,6 +1,12 @@
 #!/usr/bin/make -f
 # Uncomment this to turn on verbose mode.
-#export DH_VERBOSE=1
+export DH_VERBOSE=1
+
+# DKMS package
+pdkms=sysprof-module-dkms
+PACKAGE=sysprof-module
+
+DEB_UPSTREAM_VERSION=$(shell dpkg-parsechangelog | sed -rne 's,^Version: ([^-]+).*,\1,p')
 
 # This has to be exported to make some magic below work.
 export DH_OPTIONS
@@ -53,6 +59,22 @@
 		install -m 0644 $$f debian/tmp/modules/sysprof-module/debian/; \
 	done
 	cp module/* debian/tmp/modules/sysprof-module/
+
+        # For DKMS
+	# Create the directories to install the source into
+	dh_installdirs -p$(pdkms)  usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)
+	dh_installdirs -p$(pdkms)  usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)/debian
+	install -D -m 0755 debian/rules.modules debian/$(pdkms)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)/debian/rules
+	for f in debian/*.modules.in debian/control debian/compat debian/copyright debian/changelog; do \
+		install -m 0644 $$f debian/$(pdkms)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)/debian/; \
+	done
+	cp module/* debian/$(pdkms)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)/
+
+	# Prepare dkms.conf from the dkms.conf.in template
+	sed "s/__VERSION__/$(DEB_UPSTREAM_VERSION)/g" debian/dkms.conf.in > debian/$(pdkms)/usr/src/$(PACKAGE)-$(DEB_UPSTREAM_VERSION)/dkms.conf
+
+
+
 	cd debian/tmp/; tar jcvf ../sysprof-module-source/usr/src/sysprof-module.tar.bz2 modules; cd ../../
 	rm -rf debian/tmp/modules
 	
diff -Nru sysprof-1.0.12/debian/sysprof-module-dkms.postinst sysprof-1.0.12/debian/sysprof-module-dkms.postinst
--- sysprof-1.0.12/debian/sysprof-module-dkms.postinst	1970-01-01 05:30:00.000000000 +0530
+++ sysprof-1.0.12/debian/sysprof-module-dkms.postinst	2010-10-03 18:06:33.000000000 +0530
@@ -0,0 +1,24 @@
+#!/bin/sh
+
+set -e
+
+package=sysprof-module-dkms
+name=sysprof-module
+
+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 -Nru sysprof-1.0.12/debian/sysprof-module-dkms.prerm sysprof-1.0.12/debian/sysprof-module-dkms.prerm
--- sysprof-1.0.12/debian/sysprof-module-dkms.prerm	1970-01-01 05:30:00.000000000 +0530
+++ sysprof-1.0.12/debian/sysprof-module-dkms.prerm	2010-10-03 18:06:33.000000000 +0530
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+set -e
+
+package=sysprof-module-dkms
+name=sysprof-module
+
+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
+

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to