| Subject | 2.6.23-rc6-mm1 - Mostly working, with a kbuild oddity | From | Valdis.Kletnieks@vt ... | Date | Tue, 18 Sep 2007 15:32:57 -0400 |
| |
On Tue, 18 Sep 2007 01:18:41 PDT, Andrew Morton said: > > ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.23-rc6/2.6.23-rc6-mm1/
% uname -a Linux turing-police.cc.vt.edu 2.6.23-rc6-mm1 #1 SMP PREEMPT Tue Sep 18 12:32:13 EDT 2007 x86_64 x86_64 x86_64 GNU/Linux % uptime 15:11:48 up 36 min, 1 user, load average: 0.05, 0.11, 0.09
Had a few issues, all self-inflicted (the biggie was 2 iptables modules that needed fixing for the net namespace changes in git-net.patch - stuck an &init_net in the right 2 places, a new #include line, and all was good).
I *did* have an odd issue with an out-of-tree GPL driver for a webcam. (It's from http://mxhaard.free.fr/ if anybody cares).
The Makefile does this:
make -C /lib/modules/`uname -r`/build SUBDIRS=/home/valdis/src/gspcav1-20070508 CC=cc modules
and has this sort of stuff in it:
DEFINES += -DGSPCA_ENABLE_DEBUG DEFINES += -DCONFIG_USB_GSPCA_MODULE=1 -DMODULE -D__KERNEL__ DEFINES += -DVID_HARDWARE_GSPCA=0xFF -DGSPCA_VERSION=\"$(VERSION)\"
In -rc4-mm1, $DEFINES got added to the compile command - in -rc6-mm1, I had to namually add a 'CFLAGS += $(DEFINES)' or GSPCA_VERSION came up undefined.
The actual problematic code in the Makefile:
-- begin Makefile snippet ifneq ($(KERNELRELEASE),) # We were called by kbuild CFLAGS += $(DEFINES) obj-m += gspca.o gspca-objs := gspca_core.o decoder/gspcadecoder.o
else # We were called from command line
KERNEL_VERSION = `uname -r` KERNELDIR := /lib/modules/$(KERNEL_VERSION)/build PWD := $(shell pwd) MODULE_INSTALLDIR = /lib/modules/$(KERNEL_VERSION)/kernel/drivers/usb/media/ MODULE_INSTALLDIR2 = /lib/modules/$(KERNEL_VERSION)/kernel/drivers/media/video/
default: $(MAKE) -C $(KERNELDIR) SUBDIRS=$(PWD) CC=$(CC) modules
install: mkdir -p $(MODULE_INSTALLDIR) rm -f $(MODULE_INSTALLDIR)spca5xx.ko rm -f $(MODULE_INSTALLDIR2)gspca.ko install -c -m 0644 gspca.ko $(MODULE_INSTALLDIR) /sbin/depmod -ae
uninstall: rm -f $(MODULE_INSTALLDIR)gspca.ko /sbin/depmod -aq
endif --- end Makefile snippet
The Make definitely falls into the 'else' part (verified by adding an 'echo' to the default: target). Adding the CFLAGS += to the else, or moving the line above the if, makes it work. [unhandled content-type:application/pgp-signature] |