select is evil: another reason

From: Russell King
Date: Wed May 09 2007 - 05:14:19 EST


drivers/net/Kconfig:2279:warning: 'select' used by config symbol 'UCC_GETH' refers to undefined symbol 'UCC_FAST'
drivers/input/keyboard/Kconfig:170:warning: 'select' used by config symbol 'KEYBOARD_ATARI' refers to undefined symbol 'ATARI_KBD_CORE'
drivers/input/mouse/Kconfig:161:warning: 'select' used by config symbol 'MOUSE_ATARI' refers to undefined symbol 'ATARI_KBD_CORE'

The select statements are in generic Kconfig files. The symbols they
are selecting are in arch-private Kconfig files. Don't do that -
those symbols are undefined for other architectures.

If you must do that then do:

config ATARI_KBD_CORE
bool
+ default y if KEYBOARD_ATARI || MOUSE_ATARI

in our m68k Kconfig file, and in arch/powerpc/sysdev/qe_lib/Kconfig:

config UCC_FAST
bool
- default n
+ default y if UCC_GETH

and kill those three select statements in the generic Kconfig files.

Note also that the select in:

config UCC_FAST
bool
default n
select UCC

config UCC
bool
default y if UCC_FAST || UCC_SLOW

is absolutely absurd. Either use select in UCC_FAST _or_ default y if ...
in UCC but not both.

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of:
-
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/