Re: The longest build error ever, ever, ever seen :) (Re:linux-next: Tree for November 26)

From: Milton Miller
Date: Sun Nov 28 2010 - 01:55:23 EST


On Sat Nov 27 2010 around 13:13:03 EST, Valdis Kletnieks wrote:
> On Sat, 27 Nov 2010 08:45:55 PST, Greg KH said:
> > On Sat, Nov 27, 2010 at 09:56:45AM +0100, Zimny Lech wrote:
> > > Ave!
> > >
> > > 2010/11/26 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>:
> > > > Hi all,
> > > >
> > >
> > > OMG, LOL, this one is awesome :) The longest build error ever, ever,
> > > ever seen! Fscking awesome, someone gets Guiness World Record :)
> > >
> > > LD drivers/staging/built-in.o
> > > drivers/staging/rtl8192e/built-in.o: In function `rtl8192_setBBreg':
> > > (.text+0xae00): multiple definition of `rtl8192_setBBreg'
> > > drivers/staging/rtl8192u/built-in.o:(.text+0xa1a0): first defined here
> >
> > You built both of these drivers into the kernel, which causes the
> > problem. Try building them as modules, or just one as a module, and
> > that will solve the problem.
>
> We probably should create some Kconfig magic to prevent this situation?
>
> depends (othermodule != 'y') || (myself != 'y')
>
> or am I on the wrong track here?
>

A simple

depends on !OTHERMODULE

allows either to be built-in or both to be modular.

It also documents what conflicts.

(see Menu dependencies in Documentation/kbuild/kconfig-language.txt)

milton
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/