Messages in this thread | | | Subject | mmotm 2010-05-19 - Kconfig dependency list from hell... | From | Valdis.Kletnieks@vt ... | Date | Thu, 20 May 2010 11:21:43 -0400 |
| |
On Wed, 19 May 2010 16:13:09 PDT, akpm@linux-foundation.org said: > The mm-of-the-moment snapshot 2010-05-19-16-12 has been uploaded to > > http://userweb.kernel.org/~akpm/mmotm/
Looks like some code to sort the dependency list and eliminate duplicates is called for. I hit '?' on a new prompt, and saw this:
CONFIG_COMEDI_FC:
Enable support for shared functions for low-level drivers. This module is not used directly by end-users. Rather, it is used by many other comedi drivers.
To compile this driver as a module, choose M here: the module will be called comedi_fc.
Symbol: COMEDI_FC [=n] Prompt: Comedi shared functions for low-level driver support Defined at drivers/staging/comedi/Kconfig:1294 Depends on: STAGING [=y] && !STAGING_EXCLUDE_BUILD [=n] Location: -> Device Drivers -> Staging drivers (STAGING [=y]) -> Exclude Staging drivers from being built (STAGING_EXCLUDE_BUILD [=n])
Selected by: COMEDI_TEST [=n] && STAGING [=y] && !STAGING_EXCLUDE_BUILD [=n] && COMEDI_MISC_DRIVERS [=n] || COMEDI_DAS16M1 [=n] && STAGING [=y] && !STAGING_EXCLUDE_BUILD [=n] && COMEDI_ISA_DRIVERS [=n] && ISA [=n] || COMEDI_DAS16 [=n] && STAGING [=y] && !STAGING_EXCLUDE_BUILD [=n] && COMEDI_ISA_DRIVERS [=n] && ISA [=n] || COMEDI_DAS800 [=n] && STAGING [=y] && !STAGING_EXCLUDE_BUILD [=n] && COMEDI_ISA_DRIVERS [=n] && ISA [=n] || COMEDI_DAS1800 [=n] && STAGING [=y] && !STAGING_EXCLUDE_BUILD [=n] && COMEDI_ISA_DRIVERS [=n] && ISA [=n] || COMEDI_DT282X [=n] && STAGING [=y] && !STAGING_EXCLUDE_BUILD [=n] && COMEDI_ISA_DRIVERS [=n] && ISA [=n] || COMEDI_ADDI_APCI_3001 [=n] && STAGING [=y] && !STAGING_EXCLUDE_BUILD [=n] && COMEDI_PCI_DRIVERS [=n] && PCI [=y] || COMEDI_ADDI_APCI_3120 [=n] && STAGING [=y] && !STAGING_EXCLUDE_BUILD [=n] && COMEDI_PCI_DRIVERS [=n] && PCI [=y] || COMEDI_ADL_PCI9111 [=n] && STAGING [=y] && !STAGING_EXCLUDE_BUILD [=n] && COMEDI_PCI_DRIVERS [=n] && PCI [=y] || COMEDI_ADL_PCI9118 [=n] && STAGING [=y] && !STAGING_EXCLUDE_BUILD [=n] && COMEDI_PCI_DRIVERS [=n] && PCI [=y] || COMEDI_AMPLC_PCI224 [=n] && STAGING [=y] && !STAGING_EXCLUDE_BUILD [=n] && COMEDI_PCI_DRIVERS [=n] && PCI [=y] || COMEDI_GSC_HPDI [=n] && STAGING [=y] && !STAGING_EXCLUDE_BUILD [=n] && COMEDI_PCI_DRIVERS [=n] && PCI [=y] || COMEDI_CB_PCIDAS64 [=n] && STAGING [=y] && !STAGING_EXCLUDE_BUILD [=n] && COMEDI_PCI_DRIVERS [=n] && PCI [=y] || COMEDI_CB_PCIDAS [=n] && STAGING [=y] && !STAGING_EXCLUDE_BUILD [=n] && COMEDI_PCI_DRIVERS [=n] && PCI [=y] || COMEDI_S626 [=n] && STAGING [=y] && !STAGING_EXCLUDE_BUILD [=n] && COMEDI_PCI_DRIVERS [=n] && PCI [=y] || COMEDI_NI_MIO_CS [=n] && STAGING [=y] && !STAGING_EXCLUDE_BUILD [=n] && COMEDI_PCMCIA_DRIVERS [=n] && PCMCIA [=y] && COMEDI_NI_TIO [=n] && COMEDI_NI_COMMON [=n] || COMEDI_USBDUXFAST [=n] && STAGING [=y] && !STAGING_EXCLUDE_BUILD [=n] && COMEDI_USB_DRIVERS [=n] && USB [=y] || COMEDI_NI_LABPC [=n] && STAGING [=y] && !STAGING_EXCLUDE_BUILD [=n] && COMEDI_NI_COMMON [=n]
(Last line wrapped for readability). That includes these dups:
19 !STAGING_EXCLUDE_BUILD [=n] 18 STAGING [=y] 9 COMEDI_PCI_DRIVERS [=n] 5 COMEDI_ISA_DRIVERS [=n]
It would probably be harder to reduce these:
1 PCI [=y] || COMEDI_S626 [=n] 1 PCI [=y] || COMEDI_NI_MIO_CS [=n] 1 PCI [=y] || COMEDI_GSC_HPDI [=n] 1 PCI [=y] || COMEDI_CB_PCIDAS64 [=n] 1 PCI [=y] || COMEDI_CB_PCIDAS [=n] 1 PCI [=y] || COMEDI_AMPLC_PCI224 [=n] 1 PCI [=y] || COMEDI_ADL_PCI9118 [=n] 1 PCI [=y] || COMEDI_ADL_PCI9111 [=n] 1 PCI [=y] || COMEDI_ADDI_APCI_3120 [=n] 1 ISA [=n] || COMEDI_DT282X [=n] 1 ISA [=n] || COMEDI_DAS800 [=n] 1 ISA [=n] || COMEDI_DAS1800 [=n] 1 ISA [=n] || COMEDI_DAS16 [=n] 1 ISA [=n] || COMEDI_ADDI_APCI_3001 [=n]
(Is there a reason these don't print with () around them? It looks like it needs them to enforce proper semantics...)
[unhandled content-type:application/pgp-signature] | |