lkml.org 
[lkml]   [2010]   [May]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Subjectmmotm 2010-05-19 - Kconfig dependency list from hell...
    From
    Date
    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]
    \
     
     \ /
      Last update: 2010-05-20 17:25    [W:0.036 / U:29.980 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site