From: Adrian Bunk <bunk@kernel.org>
To: Sam Ravnborg <sam@ravnborg.org>
Cc: Roman Zippel <zippel@linux-m68k.org>,
linux-kbuild <linux-kbuild@vger.kernel.org>,
LKML <linux-kernel@vger.kernel.org>
Subject: Re: kconfig - a suggestion how to fix the select issue
Date: Sun, 4 May 2008 12:04:29 +0300 [thread overview]
Message-ID: <20080504090429.GH5838@cs181133002.pp.htv.fi> (raw)
In-Reply-To: <20080504082732.GB17276@uranus.ravnborg.org>
On Sun, May 04, 2008 at 10:27:32AM +0200, Sam Ravnborg wrote:
> On Sun, May 04, 2008 at 11:11:45AM +0300, Adrian Bunk wrote:
> > On Sun, May 04, 2008 at 09:10:41AM +0200, Sam Ravnborg wrote:
> > >...
> > >
> > > config A
> > > bool "a"
> > >
> > > config B
> > > bool "b"
> > > depends on A
> > >
> > > config C
> > > bool "c"
> > > require B
> > >
> > > The require dependency will have impact on visibility.
> > > C shall only be visible if all symbols it require are
> > > visible. Note that visible does not imply 'chosen'.
> > > In this case C would be visible when A is chosen.
> > >
> > > When the user then choose C and B is not chosen
> > > then the user is prompted to choose B.
> > >
> > > So user has to chose B in order to have C chosen.
> > >...
> > > Comments?
> >
> >
> > Given:
> >
> > config A
> > tristate "a"
> >
> > config B
> > tristate "b"
> > depends on A
> >
> > config C
> > bool "c"
> > require B
> >
> > CONFIG_A=m
> >
> >
> > Will C be visible?
> If you followed my description then you would see
> that the visibility of C are determineded by the dependencies
> of C (none in this case) and the dependencies of the symbol
> it requires. In this case B. B dpens on A and A equals m so B is
> visible thus C is visible.
*shudder*
> > The underlying problem is that we use bool for two different cases:
> > - non-modular driver (answer would be "no")
> > - enable feature in driver (answer would be "depends on the value of D")
> Lets try to agree on the semantics with bools first please.
> When we have that in place lets extend it to modular - OK?
I doubt the "extension" works this way since most of the interesting
cases are with tristates.
But OK, here's some fun with bools:
config X86
def_bool y
config A
bool "a"
config B
bool "b"
depends on A
config D
bool "d"
depends on !B if X86
config E
bool "e"
config C
bool "c"
depends on D || E
requires B
Given:
- CONFIG_A=y
- CONFIG_B=n
- CONFIG_D=y
- CONFIG_E=n
Will C be visible?
> Sam
cu
Adrian
--
"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed
next prev parent reply other threads:[~2008-05-04 9:05 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-05-04 7:10 kconfig - a suggestion how to fix the select issue Sam Ravnborg
2008-05-04 8:11 ` Adrian Bunk
2008-05-04 8:27 ` Sam Ravnborg
2008-05-04 9:04 ` Adrian Bunk [this message]
2008-05-04 10:38 ` Sam Ravnborg
2008-05-04 11:55 ` Adrian Bunk
2008-05-04 12:17 ` Sam Ravnborg
2008-05-04 12:57 ` Adrian Bunk
2008-05-04 12:37 ` Oleg Verych
2008-05-04 10:12 ` Bernd Petrovitsch
2008-05-04 17:59 ` Matthias Schniedermeyer
2008-05-04 12:55 ` David Collier-Brown
2008-05-04 15:01 ` Oleg Verych
2008-05-04 19:28 ` Rene Herman
2008-05-04 19:32 ` Sam Ravnborg
2008-05-06 8:19 ` Jan Engelhardt
2008-05-06 15:52 ` Oleg Verych
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20080504090429.GH5838@cs181133002.pp.htv.fi \
--to=bunk@kernel.org \
--cc=linux-kbuild@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=sam@ravnborg.org \
--cc=zippel@linux-m68k.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox