Kconfig: fix problem in HID menu
diff mbox

Message ID 20090517175617.81323cc1.krzysztof.h1@wp.pl
State New, archived
Headers show

Commit Message

Krzysztof Helt May 17, 2009, 3:56 p.m. UTC
From: Krzysztof Helt <krzysztof.h1@wp.pl>

Following syntax does not work properly if there is an options FOO2 depending on the FOO:

config FOO
	tristate "Foo" if EMBEDDED
	depends on FUD
	default !EMBEDDED

config FOO2
	bool "Foo2"
	depends on FOO

If the EMBEDDED is not selected the FOO option is selected
and it cannot be unselected.

The change of the FOO definition:

config FOO
	tristate "Foo" 
	depends on EMBEDDED && FUD
	default !EMBEDDED

fixes the issue.

This is likely a bug in Kconfig tool.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
---

--
To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Jiri Slaby May 18, 2009, 8:21 a.m. UTC | #1
On 05/17/2009 05:56 PM, Krzysztof Helt wrote:
> Following syntax does not work properly if there is an options FOO2 depending on the FOO:
> 
> config FOO
> 	tristate "Foo" if EMBEDDED
> 	depends on FUD
> 	default !EMBEDDED
> 
> config FOO2
> 	bool "Foo2"
> 	depends on FOO
> 
> If the EMBEDDED is not selected the FOO option is selected
> and it cannot be unselected.

Uhuh, but that's correct behaviour. We don't want to bother user with
tons of drivers unless he is compiling for embedded. Or am I missing
something?

> The change of the FOO definition:
> 
> config FOO
> 	tristate "Foo" 
> 	depends on EMBEDDED && FUD
> 	default !EMBEDDED
> 
> fixes the issue.

This does something different. You offer regular user to turn it off and
defaults to n for embedded. This is not what we want, I suppose.

> This is likely a bug in Kconfig tool.

In that case, you want to fix the tool, not the configs.
--
To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Krzysztof Helt May 18, 2009, 8:49 a.m. UTC | #2
On Mon, 18 May 2009 10:21:25 +0200
Jiri Slaby <jirislaby@gmail.com> wrote:

> On 05/17/2009 05:56 PM, Krzysztof Helt wrote:
> > Following syntax does not work properly if there is an options FOO2 depending on the FOO:
> > 
> > config FOO
> > 	tristate "Foo" if EMBEDDED
> > 	depends on FUD
> > 	default !EMBEDDED
> > 
> > config FOO2
> > 	bool "Foo2"
> > 	depends on FOO
> > 
> > If the EMBEDDED is not selected the FOO option is selected
> > and it cannot be unselected.
> 
> Uhuh, but that's correct behaviour. We don't want to bother user with
> tons of drivers unless he is compiling for embedded. Or am I missing
> something?
> 

I see now. I was little surprised by this. Please ignore my patch.

Regards,
Krzysztof
--
To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Jiri Slaby May 18, 2009, 8:56 a.m. UTC | #3
On 05/18/2009 10:49 AM, Krzysztof Helt wrote:
> I see now. I was little surprised by this.

There was a thread where we decided to do that this way. I can't find it
now, I didn't give the searching much time though.
--
To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch
diff mbox

diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig
index 7e67dcb..c52204d 100644
--- a/drivers/hid/Kconfig
+++ b/drivers/hid/Kconfig
@@ -153,8 +153,8 @@  config HID_KENSINGTON
 	Support for Kensington Slimblade Trackball.
 
 config HID_LOGITECH
-	tristate "Logitech" if EMBEDDED
-	depends on USB_HID
+	tristate "Logitech"
+	depends on EMBEDDED && USB_HID
 	default !EMBEDDED
 	---help---
 	Support for Logitech devices that are not fully compliant with HID standard.
@@ -205,8 +205,8 @@  config HID_NTRIG
 	Support for N-Trig touch screen.
 
 config HID_PANTHERLORD
-	tristate "Pantherlord devices support" if EMBEDDED
-	depends on USB_HID
+	tristate "Pantherlord devices support"
+	depends on EMBEDDED && USB_HID
 	default !EMBEDDED
 	---help---
 	Support for PantherLord/GreenAsia based device support.