Subject: Re: [BUILD_FAILURE] linux-next: 20081125 - 8390 network driver build fails

From: Randy Dunlap <[email-masked]>
Date: Tue, 25 Nov 2008 11:46:54 -0800

Alan Cox wrote:
>> The problem is that both 8390.c and 8390p.c #include lib8390.c
>> and when they are both linked to built-in drivers (not loadable
>> modules), the symbols in lib8390.c are duplicated.  I think.
> 
> And the symbols in question are static so are scoped within the file
> only. Thats why it looks to me as if someone has done "#define static" in
> another patch somewhere in -next.

Try again:

  LD      drivers/net/built-in.o
drivers/net/8390p.o: In function `ei_get_stats':
(.text+0x1050): multiple definition of `ei_get_stats'
drivers/net/8390.o:(.text+0xe20): first defined here
drivers/net/8390p.o: In function `ei_start_xmit':
(.text+0x1100): multiple definition of `ei_start_xmit'
drivers/net/8390.o:(.text+0xef0): first defined here
drivers/net/8390p.o: In function `ei_tx_timeout':
(.text+0xec0): multiple definition of `ei_tx_timeout'
drivers/net/8390.o:(.text+0xce0): first defined here
drivers/net/8390p.o: In function `ei_set_multicast_list':
(.text+0x1000): multiple definition of `ei_set_multicast_list'
drivers/net/8390.o:(.text+0xea0): first defined here
make[2]: *** [drivers/net/built-in.o] Error 1

and none of these functions is static in lib8390.c.

~Randy