On Tue, 06 April 2010 Randy Dunlap <randy.dunlap@xxxxxxxxxx> wrote: > On Tue, 6 Apr 2010 10:56:35 +0200 Bruno Prémont wrote: > > > On Tue, 6 Apr 2010 10:40:06 +0200 Jiri Kosina <jkosina@xxxxxxx> wrote: > > > > > > [ adding Bruno to CC ] > > > > > > On Mon, 5 Apr 2010, Randy Dunlap wrote: > > > > > > > From: Randy Dunlap <randy.dunlap@xxxxxxxxxx> > > > > > > > > HID_PICOLCD should depend on LCD_CLASS_DEVICE, otherwise the > > > > build fails when HID_PICOLCD=y and LCD_CLASS_DEVICE=m: > > > > > > > > hid-picolcd.c:(.text+0x84523f): undefined reference to `lcd_device_unregister' > > > > hid-picolcd.c:(.text+0x8478ab): undefined reference to `lcd_device_register' > > > > hid-picolcd.c:(.text+0x84c15f): undefined reference to `lcd_device_unregister' > > > > That is weird, the > > > > #if defined(CONFIG_LCD_CLASS_DEVICE) || defined(CONFIG_LCD_CLASS_DEVICE_MODULE) > > feature support code > > #else > > empty stubs > > #endif > > > > blocks should have prevented LCD_CLASS support from being built if it > > was not enabled in configuration. > > > > Do you have the .config matching your build? > > Yes, it's attached. Thanks, here is the extract (only the pertinent items): CONFIG_BACKLIGHT_LCD_SUPPORT=y CONFIG_LCD_CLASS_DEVICE=m CONFIG_BACKLIGHT_CLASS_DEVICE=y CONFIG_HID_PICOLCD=y It triggers the issue by having PicoLCD built-in while one of the optional dependencies as a module. Any idea of how this can be solved with kbuild in order to keep the dependencies optional? Something that would satisfy the following pseudocode: if CONFIG_HID_PICOLCD == y assert(CONFIG_LCD_CLASS_DEVICE != m) One of my attempts did end up with a circular loop with regard to FB (some of the FB drivers did select INPUT)? I had something like: config HID_PICOLCD tristate ... config HID_PICOLCD_FB bool ... depends on HID_PICOLCD select FB select FB_... ... Then in the code I checked for CONFIG_HID_PICOLCD_FB instead of (CONFIG_FB or CONFIG_FB_MODULE). Thanks, Bruno -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html