Package: kqemu-source Version: 1.3.0~pre9-12 Severity: grave Tags: patch Justification: renders package unusable
When running the following: $ m-a -t build kqemu <SNIP> # Build the module ./configure --kernel-path=/lib/modules/2.6.24-etchnhalf.1-amd64/build Source path /usr/src/modules/kqemu C compiler gcc Host C compiler gcc make make host CPU x86_64 kernel sources /lib/modules/2.6.24-etchnhalf.1-amd64/build kbuild type 2.6 /usr/bin/make make[2]: Entering directory `/usr/src/modules/kqemu' make -C /lib/modules/2.6.24-etchnhalf.1-amd64/build M=`pwd` modules make[3]: Entering directory `/usr/src/linux-headers-2.6.24-etchnhalf.1-amd64' CC [M] /usr/src/modules/kqemu/kqemu-linux.o make[4]: *** No rule to make target `/usr/src/modules/kqemu/kqemu-mod-x86.o', needed by `/usr/src/modules/kqemu/kqemu-mod.o'. Stop. make[3]: *** [_module_/usr/src/modules/kqemu] Error 2 make[3]: Leaving directory `/usr/src/linux-headers-2.6.24-etchnhalf.1-amd64' make[2]: *** [kqemu.ko] Error 2 make[2]: Leaving directory `/usr/src/modules/kqemu' make[1]: *** [binary-modules] Error 2 make[1]: Leaving directory `/usr/src/modules/kqemu' make: *** [kdist_build] Error 2 BUILD FAILED! If I don't use m-a and run the following: $ cd /usr/src/modules/kqemu/ $ debian/rules build $ debian/rules binary-modules <The same error as before> However, if I run the following: $ cd /usr/src/modules/kqemu/ $ debian/rules build $ debian/rules ARCH=x86_64 binary-modules <SNIP> # Build the module ./configure --kernel-path=/usr/src/linux Source path /usr/src/modules/kqemu C compiler gcc Host C compiler gcc make make host CPU x86_64 kernel sources /usr/src/linux kbuild type 2.6 /usr/bin/make make[1]: Entering directory `/usr/src/modules/kqemu' make -C /usr/src/linux M=`pwd` modules make[2]: Entering directory `/usr/src/linux-headers-2.6.24-etchnhalf.1-amd64' cp /usr/src/modules/kqemu/kqemu-mod-x86_64.o /usr/src/modules/kqemu/kqemu-mod.o LD [M] /usr/src/modules/kqemu/kqemu.o Building modules, stage 2. MODPOST 1 modules CC /usr/src/modules/kqemu/kqemu.mod.o LD [M] /usr/src/modules/kqemu/kqemu.ko make[2]: Leaving directory `/usr/src/linux-headers-2.6.24-etchnhalf.1-amd64' make[1]: Leaving directory `/usr/src/modules/kqemu' # Install the module <SNIP> So, I reckon debian/rules isn't setting ARCH properly. This very humble patch for debian/rules fixes this, but someone should probably make sure it does it in a Debian-approved way, rather than my hackish way: diff -Naur debian.old/rules debian/rules --- debian.old/rules 2008-11-12 11:04:05.000000000 +0000 +++ debian/rules 2008-11-12 11:02:20.000000000 +0000 @@ -64,7 +64,7 @@ # Build the module ./configure --kernel-path=$(KSRC) - $(MAKE) + $(MAKE) ARCH=$(DEB_BUILD_GNU_CPU) # Install the module install -D -m 0644 kqemu.ko debian/$(PACKAGE)-$(KVERS)/lib/modules/$(KVERS)/misc/kqemu.ko The build log from m-a and patch are also attached. Cheers, Chris Mortimore
diff -Naur debian.old/rules debian/rules --- debian.old/rules 2008-11-12 11:04:05.000000000 +0000 +++ debian/rules 2008-11-12 11:02:20.000000000 +0000 @@ -64,7 +64,7 @@ # Build the module ./configure --kernel-path=$(KSRC) - $(MAKE) + $(MAKE) ARCH=$(DEB_BUILD_GNU_CPU) # Install the module install -D -m 0644 kqemu.ko debian/$(PACKAGE)-$(KVERS)/lib/modules/$(KVERS)/misc/kqemu.ko