From mboxrd@z Thu Jan 1 00:00:00 1970 From: Linus Torvalds Subject: Re: select validation (was: Re: [2.6 patch] HID: fix default building of all quirky devices) Date: Thu, 16 Oct 2008 11:47:55 -0700 (PDT) Message-ID: References: <20081015041346.GE4710@cs181140183.pp.htv.fi> <20081015050557.GB20183@cs181140183.pp.htv.fi> <20081015073011.GE20183@cs181140183.pp.htv.fi> Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Return-path: Received: from smtp1.linux-foundation.org ([140.211.169.13]:60625 "EHLO smtp1.linux-foundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754146AbYJPSsp (ORCPT ); Thu, 16 Oct 2008 14:48:45 -0400 In-Reply-To: Sender: linux-input-owner@vger.kernel.org List-Id: linux-input@vger.kernel.org To: Geert Uytterhoeven Cc: Jiri Kosina , Adrian Bunk , zippel@linux-m68k.org, sam@ravnborg.org, linux-input@vger.kernel.org, linux-kernel@vger.kernel.org, Jiri Slaby , Mauro Carvalho Chehab On Thu, 16 Oct 2008, Geert Uytterhoeven wrote: > > Would it be possible for kconfig to check for invalid usage of select? > > Like you should not use select to enable something that has > dependencies. However, that would fail in case both the selector option > and the selected option depend on the same. Well, at least in theory you may actually want to select something that has dependencies, even if you don't want to select the dependencies. For example, some feature may be enabled by default on some architecture or with some config. Example: bool SUPPORT_FEATURE default y depends on EXPERIMENTAL depends on !EMBEDDED depends on X86 which is just another way of saying bool SUPPORT_FEATURE default X86 && !EMBEDDED && EXPERIMENTAL and it's still possible that some code wants to do a select SUPPORT_FEATURE because the dependency isn't a _code_ dependency, it's a default-value dependency. Now, you could say that then you should use that second version (ie the "default X86 && !EMBEDDED && EXPERIMENTAL" version), but the thing is, "depends on" is actually a more powerful and can result in more readable setup (because you can have multiple "depends on" lines and they are all logically anded together. Do we do that? I dunno. But I wouldn't be surprised if we do. Linus