Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=59faba1b316a7798a33752b3889193333f8af1a0
Commit:     59faba1b316a7798a33752b3889193333f8af1a0
Parent:     30acbabae38793c9c9acace4de5b1c1889570768
Author:     Trent Piepho <[EMAIL PROTECTED]>
AuthorDate: Wed Jun 27 14:09:54 2007 -0700
Committer:  Linus Torvalds <[EMAIL PROTECTED]>
CommitDate: Thu Jun 28 11:34:53 2007 -0700

    Fix Kconfig dependency problems wrt boolean menuconfigs
    
    If one has a dependency chain (tristate)FOO depends on (bool)BAR depends on
    (tristate)BAZ, build problems will result.  If BAZ=m, then BAR can be set
    y, which allows FOO=y.  It's possible to have FOO=y && BAZ=m, which
    wouldn't be allowed if FOO depended directly on BAZ.  In effect, the bool
    promotes the tristate from m to y.
    
    This ends up causing a problem with several menuconfigs that look like:
    
    menuconfig BAR
        bool
        depends on BAZ [tristate]
    if BAR
    config FOO
        tristate
    endif
    
    The solution used here is to add the dependencies of BAR to the if
    statement, so that items in the if block will gain a direct
    non-bool-promoted dependency on BAZ.  This is how it would work if a menu
    was used instead of an if block.
    
    Signed-off-by: Trent Piepho <[EMAIL PROTECTED]>
    Acked-by: Mauro Carvalho Chehab <[EMAIL PROTECTED]>
    Cc: "David S. Miller" <[EMAIL PROTECTED]>
    Acked-by: Jeff Garzik <[EMAIL PROTECTED]>
    Cc: Dominik Brodowski <[EMAIL PROTECTED]>
    Cc: Chas Williams <[EMAIL PROTECTED]>
    Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
    Signed-off-by: Linus Torvalds <[EMAIL PROTECTED]>
---
 drivers/atm/Kconfig         |    2 +-
 drivers/media/dvb/Kconfig   |    2 +-
 drivers/media/radio/Kconfig |    2 +-
 drivers/media/video/Kconfig |    6 +++---
 drivers/net/pcmcia/Kconfig  |    2 +-
 5 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/drivers/atm/Kconfig b/drivers/atm/Kconfig
index f5a47a4..5b4fab2 100644
--- a/drivers/atm/Kconfig
+++ b/drivers/atm/Kconfig
@@ -7,7 +7,7 @@ menuconfig ATM_DRIVERS
        depends on NETDEVICES && ATM
        default y
 
-if ATM_DRIVERS
+if ATM_DRIVERS && NETDEVICES && ATM
 
 config ATM_DUMMY
        tristate "Dummy ATM driver"
diff --git a/drivers/media/dvb/Kconfig b/drivers/media/dvb/Kconfig
index efd2b74..03ef88a 100644
--- a/drivers/media/dvb/Kconfig
+++ b/drivers/media/dvb/Kconfig
@@ -11,7 +11,7 @@ menuconfig DVB_CAPTURE_DRIVERS
        ---help---
          Say Y to select Digital TV adapters
 
-if DVB_CAPTURE_DRIVERS
+if DVB_CAPTURE_DRIVERS && DVB_CORE
 
 comment "Supported SAA7146 based PCI Adapters"
        depends on DVB_CORE && PCI && I2C
diff --git a/drivers/media/radio/Kconfig b/drivers/media/radio/Kconfig
index a6ac82a..194b102 100644
--- a/drivers/media/radio/Kconfig
+++ b/drivers/media/radio/Kconfig
@@ -9,7 +9,7 @@ menuconfig RADIO_ADAPTERS
        ---help---
          Say Y here to enable selecting AM/FM radio adapters.
 
-if RADIO_ADAPTERS
+if RADIO_ADAPTERS && VIDEO_DEV
 
 config RADIO_CADET
        tristate "ADS Cadet AM/FM Tuner"
diff --git a/drivers/media/video/Kconfig b/drivers/media/video/Kconfig
index 4cca551..4d45a40 100644
--- a/drivers/media/video/Kconfig
+++ b/drivers/media/video/Kconfig
@@ -11,7 +11,7 @@ menuconfig VIDEO_CAPTURE_DRIVERS
          webcams, analog TV, and hybrid analog/digital TV.
          Some of those devices also supports FM radio.
 
-if VIDEO_CAPTURE_DRIVERS
+if VIDEO_CAPTURE_DRIVERS && VIDEO_DEV
 
 config VIDEO_ADV_DEBUG
        bool "Enable advanced debug functionality"
@@ -347,7 +347,7 @@ endmenu # encoder / decoder chips
 
 config VIDEO_VIVI
        tristate "Virtual Video Driver"
-       depends on VIDEO_V4L2 && !SPARC32 && !SPARC64 && PCI && VIDEO_DEV
+       depends on VIDEO_V4L2 && !SPARC32 && !SPARC64 && PCI
        select VIDEO_BUF
        default n
        ---help---
@@ -691,7 +691,7 @@ menuconfig V4L_USB_DRIVERS
        depends on USB
        default y
 
-if V4L_USB_DRIVERS
+if V4L_USB_DRIVERS && USB
 
 source "drivers/media/video/pvrusb2/Kconfig"
 
diff --git a/drivers/net/pcmcia/Kconfig b/drivers/net/pcmcia/Kconfig
index 5d658bc..e8f55d8 100644
--- a/drivers/net/pcmcia/Kconfig
+++ b/drivers/net/pcmcia/Kconfig
@@ -19,7 +19,7 @@ menuconfig NET_PCMCIA
 
          If unsure, say N.
 
-if NET_PCMCIA
+if NET_PCMCIA && PCMCIA
 
 config PCMCIA_3C589
        tristate "3Com 3c589 PCMCIA support"
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to