[linux-dvb] cx25840-core.c don't compil today

Andy Walls awalls at radix.net
Tue Jan 6 01:23:49 CET 2009


On Mon, 2009-01-05 at 15:10 +0100, Gregoire Favre wrote:
> Hello,
> 
> compilation of today v4l-hg fails at :
> 
>   CC [M]  /usr/src/CVS/v4l-dvb/v4l/cx23885-417.o
>   CC [M]  /usr/src/CVS/v4l-dvb/v4l/cx25840-core.o
> /usr/src/CVS/v4l-dvb/v4l/cx25840-core.c:186: error: duplicate 'static'
> make[2]: *** [/usr/src/CVS/v4l-dvb/v4l/cx25840-core.o] Error 1
> make[1]: *** [_module_/usr/src/CVS/v4l-dvb/v4l] Error 2
> make[1]: Leaving directory `/usr/src/linux-2.6.28-gentoo'
> make: *** [default] Error 2


I find the output of an sparse build amusing:

marune/build/v4l-dvb-master/v4l/cx25840-core.c:186:8: error: Just how static do you want this type to be?
/marune/build/v4l-dvb-master/v4l/cx25840-core.c:186: error: duplicate 'static'
make[3]: *** [/marune/build/v4l-dvb-master/v4l/cx25840-core.o] Error 1


The change that introduced it follows.  The first part of the change,
with the 2 "static"s is the problem.  The second part of the change, for
older kernels is correct.  Remove the duplicate static keyword and the
code will compile.


--- a/linux/drivers/media/video/cx25840/cx25840-core.c	Mon Jan 05 02:23:50 2009 -0200 
+++ b/linux/drivers/media/video/cx25840/cx25840-core.c	Mon Jan 05 02:34:20 2009 -0200 
@@ -183,11 +183,11 @@ static void cx25836_initialize(struct i2 
} 

#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 20) 
-static void cx25840_work_handler(struct work_struct *work) 
+static static void cx25840_work_handler(struct work_struct *work) 
{ 
	struct cx25840_state *state = container_of(work, struct cx25840_state, fw_work); 
#else 
-void cx25840_work_handler(void *arg) 
+static void cx25840_work_handler(void *arg) 
{ 
	struct cx25840_state *state = arg; 
#endif 



Regards,
Andy





More information about the linux-dvb mailing list