public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* How do we handle autoconfiguration?
@ 2000-12-26 23:13 Eric S. Raymond
  2000-12-27  9:57 ` Kai Henningsen
  2000-12-27 11:14 ` [KBUILD] " Giacomo A. Catenazzi
  0 siblings, 2 replies; 7+ messages in thread
From: Eric S. Raymond @ 2000-12-26 23:13 UTC (permalink / raw)
  To: Linus Torvalds
  Cc: Tim Wright, Kai Henningsen, André Dahlqvist,
	Giacomo Catenazzi, linux-kernel, linux-kbuild

Linus, replying to Alan:
>> If we do that I'd rather see a make autoconfig that does the lot from
>> proc/pci etc 8)
>
>Good point. No point in adding a new config option, we should just have a
>new configurator instead. Of course, it can't handle many of the
>questions, so it would still have to fall back on asking.

Andre forwarded this to me, asking:
>Would this sort of auto-configuration be difficult to implent in [CML2]?

Summary answer: 

CML2 doesn't handle this now -- and I'd prefer for it not to, as I
think a separate batch-mode autoconfigurator feeding its results to
CML2 as a partial config would be better design.  But it could be done
without much difficulty.

Detailed answer:

My original design for CML2 included a way to capture the results from
arbitrary procedural probes written in C or some scripting language
and use them in predicates.  Imagine something like this:

# PROCESSOR is string valued; we capture stdout from the probe
derive PROCESSOR from "myprobe1.sh"

# FOOFEATURE is boolean; we look at the return status from myprobe2.py 
derive FOOFEATURE from "myprobe2.py"

Alan, with simple probes that investigate proc/pci this would do exactly
what you want.  Such a feature would be easy to implement in CML2.  With 
a little work, I could even support inline probe procedures declared
in the rules file itself.

I backed away from this because Giacomo Catenazzi told me he was
working on a separate autoconfigurator that would generate config
files in CML1 format.  That's a cleaner design -- one would run his
autoconfigurator and then import the resulting config into the CML2
configurator as frozen (immutable) symbols.  Giacomo, what's the state 
of your project?

(kbuild people, this is one reason I want ifdefs gone from the
makefiles.  The autoconfigurator, whether it's Giacomo's or not,
should be able to pass FOO=n to tell CML2 that a given feature is
definitely not present.)

For later:

If Giacomo's attempt at an autoconfigurator fails, I will tackle
this problem -- but only with CML2 adopted and in place first.  
Otherwise handling all the grotty CML1 details would be just
too nasty.
--
						>>esr>>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

^ permalink raw reply	[flat|nested] 7+ messages in thread
* How do we handle autoconfiguration?
@ 2000-12-26 23:18 Eric S. Raymond
  2000-12-27 10:31 ` [KBUILD] " Giacomo A. Catenazzi
  0 siblings, 1 reply; 7+ messages in thread
From: Eric S. Raymond @ 2000-12-26 23:18 UTC (permalink / raw)
  To: Linus Torvalds
  Cc: Tim Wright, Kai Henningsen, André Dahlqvist, linux-kernel,
	linux-kbuild

I wrote:
>Giacomo, what's the state of your project?

Sigh, I got an address-invalid bounce from Giacomo.  Looks like he 
may have fallen off the net.
--
						>>esr>>



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

^ permalink raw reply	[flat|nested] 7+ messages in thread
* Re: [KBUILD] How do we handle autoconfiguration?
@ 2000-12-27  0:52 Michael Elizabeth Chastain
  0 siblings, 0 replies; 7+ messages in thread
From: Michael Elizabeth Chastain @ 2000-12-27  0:52 UTC (permalink / raw)
  To: esr, torvalds; +Cc: anedah-9, cate, kaih, linux-kbuild, linux-kernel, timw

esr> # PROCESSOR is string valued; we capture stdout from the probe
esr> derive PROCESSOR from "myprobe1.sh"
esr> 
esr> # FOOFEATURE is boolean; we look at the return status from myprobe2.py 
esr> derive FOOFEATURE from "myprobe2.py"

I think this is cool.

esr> (kbuild people, this is one reason I want ifdefs gone from the
esr> makefiles.  The autoconfigurator, whether it's Giacomo's or not,
esr> should be able to pass FOO=n to tell CML2 that a given feature is
esr> definitely not present.)

Yeah, we have to make an essential transition from 3-valued logic
("y"/"m"/"n" in some contexts and "y"/"m"/NULL in other contexts) to
4-valued logic ("y"/"m"/"n"/NULL).

Michael
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2000-12-27 16:42 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2000-12-26 23:13 How do we handle autoconfiguration? Eric S. Raymond
2000-12-27  9:57 ` Kai Henningsen
2000-12-27 11:14 ` [KBUILD] " Giacomo A. Catenazzi
2000-12-27 14:27   ` Giacomo A. Catenazzi
2000-12-27 16:10   ` Eric S. Raymond
  -- strict thread matches above, loose matches on Subject: below --
2000-12-26 23:18 Eric S. Raymond
2000-12-27 10:31 ` [KBUILD] " Giacomo A. Catenazzi
2000-12-27  0:52 Michael Elizabeth Chastain

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox