Re: [2.6 patch] sound drivers select'ing ISAPNP must depend on PNP && ISA

2005-07-24 Thread Bodo Eggert
On Sat, 23 Jul 2005, Adrian Bunk wrote:
> On Tue, Jul 19, 2005 at 10:50:53PM +0200, Bodo Eggert wrote:

> > OTOH, the build system
> > should automatically propagate the dependencies. I asume that should be
> > easy, except for having the time to implement that.
> >...
> 
> There are nontrivial problems:
> E.g. what should happen if you select option A that depends on (B || C)?

You should in effect depend on ($original_depends) && (B || C). You'll 
just need to append all (recursive) dependencies in the selecting option.


last_length:=-1; /* impossible value */
while |options_with_unresolved_selects| > 0 do begin
if |options_with_unresolved_selects| == last_length
then goto circular_recursion_detected;
last_length:=|options_with_unresolved_selects|;

for i in options_with_unresolved_selects do begin
for s in i->unresolved_selects do
if 0 == |s->unresolved_selects|
then begin
add(i->depends, s->depends)
delete_from(i->unresolved_selects, s)
end
if 0 == |i->unresolved_selects|
then delete_from(options_with_unresolved_selects, i);
end
end

> There's one opinion that options should be either select'able _or_ user 
> visible.

That would only result in ugly workarounds. Think about the kernel 
libraries. You'll want to manually select them, and you'll want to 
automatically select them, and you want both to be visible.

-- 
Funny quotes:
22. When everything's going your way, you're in the wrong lane and and going
the wrong way.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [2.6 patch] sound drivers select'ing ISAPNP must depend on PNP && ISA

2005-07-23 Thread Adrian Bunk
On Tue, Jul 19, 2005 at 10:50:53PM +0200, Bodo Eggert wrote:
> On Tue, 19 Jul 2005, Adrian Bunk wrote:
> > On Sun, Jul 17, 2005 at 05:07:48PM +0200, Bodo Eggert wrote:
> 
> > > In sound/isa/Kconfig, select ISAPNP and depend on ISAPNP are intermixed, 
> > > resulting in funny behaviour. (Soundcarts get selectable if other 
> > > soundcards are selected).
> > > 
> > > This patch changes the "depend on ISAPNP"s to select.
> > >...
> > 
> > I like the idea of this patch, but it brings to more drivers to a 
> > violation of the "if you select something, you have to ensure that the 
> > dependencies of what you select are fulfilled" rule causing link errors 
> > with invalid .config's.
> 
> That should be mentioned in kconfig-language.txt. OTOH, the build system
> should automatically propagate the dependencies. I asume that should be
> easy, except for having the time to implement that.
>...

There are nontrivial problems:
E.g. what should happen if you select option A that depends on (B || C)?

There's one opinion that options should be either select'able _or_ user 
visible.

The current policy in the kernel is not 100% dogmatic regarding this 
issue, but it shouldn't be violated without a good reason.

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

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [2.6 patch] sound drivers select'ing ISAPNP must depend on PNP && ISA

2005-07-19 Thread Bodo Eggert
On Tue, 19 Jul 2005, Adrian Bunk wrote:
> On Sun, Jul 17, 2005 at 05:07:48PM +0200, Bodo Eggert wrote:

> > In sound/isa/Kconfig, select ISAPNP and depend on ISAPNP are intermixed, 
> > resulting in funny behaviour. (Soundcarts get selectable if other 
> > soundcards are selected).
> > 
> > This patch changes the "depend on ISAPNP"s to select.
> >...
> 
> I like the idea of this patch, but it brings to more drivers to a 
> violation of the "if you select something, you have to ensure that the 
> dependencies of what you select are fulfilled" rule causing link errors 
> with invalid .config's.

That should be mentioned in kconfig-language.txt. OTOH, the build system
should automatically propagate the dependencies. I asume that should be
easy, except for having the time to implement that.


BTW: How can you select something to be at least a module?
BTW2: In bool options, depending on FOO seems to be equal to depending on 
  FOO!=n. Is this assumption correct?

-- 
Top 100 things you don't want the sysadmin to say:
49. What's this switch for anyways...?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[2.6 patch] sound drivers select'ing ISAPNP must depend on PNP && ISA

2005-07-19 Thread Adrian Bunk
On Sun, Jul 17, 2005 at 05:07:48PM +0200, Bodo Eggert wrote:

> In sound/isa/Kconfig, select ISAPNP and depend on ISAPNP are intermixed, 
> resulting in funny behaviour. (Soundcarts get selectable if other 
> soundcards are selected).
> 
> This patch changes the "depend on ISAPNP"s to select.
>...

I like the idea of this patch, but it brings to more drivers to a 
violation of the "if you select something, you have to ensure that the 
dependencies of what you select are fulfilled" rule causing link errors 
with invalid .config's.

This patch (on top of your patch) fixes this problem.

Signed-off-by: Adrian Bunk <[EMAIL PROTECTED]>

---

 sound/isa/Kconfig |   14 +++---
 1 files changed, 7 insertions(+), 7 deletions(-)

--- linux-2.6.13-rc3-mm1-full/sound/isa/Kconfig.old 2005-07-19 
18:27:21.0 +0200
+++ linux-2.6.13-rc3-mm1-full/sound/isa/Kconfig 2005-07-19 18:28:44.0 
+0200
@@ -15,7 +15,7 @@
 
 config SND_AD1816A
tristate "Analog Devices SoundPort AD1816A"
-   depends on SND
+   depends on SND && PNP && ISA
select ISAPNP
select SND_OPL3_LIB
select SND_MPU401_UART
@@ -81,7 +81,7 @@
 
 config SND_ES968
tristate "Generic ESS ES968 driver"
-   depends on SND
+   depends on SND && PNP && ISA
select ISAPNP
select SND_MPU401_UART
select SND_PCM
@@ -162,7 +162,7 @@
 
 config SND_INTERWAVE
tristate "AMD InterWave, Gravis UltraSound PnP"
-   depends on SND
+   depends on SND && PNP && ISA
select SND_RAWMIDI
select SND_CS4231_LIB
select SND_GUS_SYNTH
@@ -177,7 +177,7 @@
 
 config SND_INTERWAVE_STB
tristate "AMD InterWave + TEA6330T (UltraSound 32-Pro)"
-   depends on SND
+   depends on SND && PNP && ISA
select SND_RAWMIDI
select SND_CS4231_LIB
select SND_GUS_SYNTH
@@ -293,7 +293,7 @@
 
 config SND_ALS100
tristate "Avance Logic ALS100/ALS120"
-   depends on SND
+   depends on SND && PNP && ISA
select ISAPNP
select SND_OPL3_LIB
select SND_MPU401_UART
@@ -307,7 +307,7 @@
 
 config SND_AZT2320
tristate "Aztech Systems AZT2320"
-   depends on SND
+   depends on SND && PNP && ISA
select ISAPNP
select SND_OPL3_LIB
select SND_MPU401_UART
@@ -332,7 +332,7 @@
 
 config SND_DT019X
tristate "Diamond Technologies DT-019X, Avance Logic ALS-007"
-   depends on SND
+   depends on SND && PNP && ISA
select ISAPNP
select SND_OPL3_LIB
select SND_MPU401_UART

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/