Re: i2c-designware-core: KBUILD_MODNAME undeclared [was: Buildregressions/improvements in v3.6-rc1]

From: Jean Delvare
Date: Fri Aug 31 2012 - 08:45:06 EST


Hi Jiri, Geert,

On Wed, 15 Aug 2012 22:01:38 +0200, Jiri Slaby wrote:
> On 08/04/2012 11:24 AM, Geert Uytterhoeven wrote:
> > Below is the list of build error/warning regressions/improvements in
> > v3.6-rc1[1] compared to v3.5[2].
> ...
> > + drivers/i2c/busses/i2c-designware-core.c: error: 'KBUILD_MODNAME' undeclared (first use in this function):
>
> This is a real problem we are facing here. It happens on PPC when all
> I2C_DESIGNWARE_PLATFORM, I2C_DESIGNWARE_PCI and DYNAMIC_DEBUG are set.
>
> It's because i2c-designware-core.c is used in two modules
> (i2c-designware-platform and i2c-designware-pci) and KBUILD_MODNAME is
> not defined for those because (scripts/Makefile.lib):
> # $(modname_flags) #defines KBUILD_MODNAME as the name of the module
> # it will end up in (or would, if it gets compiled in)
> # Note: Files that end up in two or more modules are compiled
> # without the KBUILD_MODNAME definition. The reason is
> # that any made-up name would differ in different configs.
>
> But DYNAMIC_DEBUG needs KBUILD_MODNAME for dev_dbg used in that source.
>
> Any ideas? Why is it not a separate module for example?

It should be. Axel Lin has posted a patch which does that and it should
fix your problem:
https://lkml.org/lkml/2012/6/13/233

Please test and confirm it does the right thing. I'll push the patch
upstream if it does.

--
Jean Delvare
--
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/