linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* CML2 design philosophy heads-up
@ 2001-05-05 23:27 Eric S. Raymond
  2001-05-06 12:58 ` Alan Cox
                   ` (2 more replies)
  0 siblings, 3 replies; 160+ messages in thread
From: Eric S. Raymond @ 2001-05-05 23:27 UTC (permalink / raw)
  To: CML2, kbuild-devel

I've said before on these lists that one of the purposes of CML2's single-apex
tree design is to move the configuration dialog away from low-level platform-
specific questions towards higher-level questions about policy or intentions.

Or to put another way: away from hardware, towards capabilities.

As a concrete example, the CML2 rulesfile master for the m68k port
tree now has a section that looks like this:

# These were separate questions in CML1.  They enable on-board peripheral
# controllers in single-board computers.
derive MVME147_NET from MVME147 & NET_ETHERNET
derive MVME147_SCC from MVME147 & SERIAL
derive MVME147_SCSI from MVME147 & SCSI
derive MVME16x_NET from MVME16x & NET_ETHERNET
derive MVME16x_SCC from MVME16x & SERIAL
derive MVME16x_SCSI from MVME16x & SCSI
derive BVME6000_NET from BVME6000 & NET_ETHERNET
derive BVME6000_SCC from BVME6000 & SERIAL
derive BVME6000_SCSI from BVME6000 & SCSI

# These were separate questions in CML1
derive MAC_SCC from MAC & SERIAL
derive MAC_SCSI from MAC & SCSI
derive SUN3_SCSI from (SUN3 | SUN3X) & SCSI

If it isn't obvious, the intent is that if you specify (say) both 
MVME147 (a machine type) and SERIAL (a capability) you automatically 
get the specific driver support under MVME147_SCC.

This is different from the CML1 approach, which generally involved
explicitly specifying each driver with mutual dependencies described 
(if at all) in Configure.help.

I've created a number of derivations of this kind recently.  I'm not
going out of my way to do this, but what I am trying to do is reduce
the number of symbols undocumented in Configure.help to zero (I've got
it down to 243 from 547 when I started).  When I can eliminate the
need for a configuration question and associated help by writing this
kind of formula, I'm doing so.

This note is a heads-up.  If others with a stake in the configuration
system (port managers, etc.) have objections to moving further in this
direction, I need to hear about it, and about what you think we should
be doing instead.
-- 
		<a href="http://www.tuxedo.org/~esr/">Eric S. Raymond</a>

Never could an increase of comfort or security be a sufficient good to be
bought at the price of liberty.
	-- Hillaire Belloc

^ permalink raw reply	[flat|nested] 160+ messages in thread
* Re: Background to the argument about CML2 design philosophy
@ 2001-05-21  3:01 Ben Bridgwater
  0 siblings, 0 replies; 160+ messages in thread
From: Ben Bridgwater @ 2001-05-21  3:01 UTC (permalink / raw)
  To: Linux-Kernel

> derive MVME147_SCSI from MVME147 & SCSI

It seems that the preferred semantics would be:

default MVME147_SCSI from MVME147 & SCSI

That way the platform defines sane defaults, but no flexibility has been
taken away.

Presumably many of these defaulted options would also be ones that would
be configured not to be changeable in novice mode. The novice gets the
vanilla platform defaults without being bothered by detailed options,
and can switch to expert mode if they need more control. The experts get
all the options presented, but also get to benefit from the smart
platform defaults.

Ben

^ permalink raw reply	[flat|nested] 160+ messages in thread
* Re: Background to the argument about CML2 design philosophy
@ 2001-05-21 17:36 Wayne.Brown
  2001-05-21 17:58 ` Eric S. Raymond
  0 siblings, 1 reply; 160+ messages in thread
From: Wayne.Brown @ 2001-05-21 17:36 UTC (permalink / raw)
  To: esr; +Cc: David Woodhouse, Arjan van de Ven, linux-kernel



On 05/21/2001 at 05:04:40 AM esr@thyrsus.com wrote:

>See, I've already written off the chronic bellyachers.  Since I can't
>please them without scrapping the whole plan, I'm going to ignore
>them.  In particular, anybody who repeated "fsck Python..." after Linus
>ruled that Python is not an issue and Greg Banks announced the C
>implementation of CML2 has got a sufficiently severe case of
>rectocranial insertion that they've defined themselves out of the
>conversation.

I probably qualify as one of the bellyachers.  If so, I apologize.  It was not
my intention to disparage the work of Eric or anyone else involved in this
project.

Speaking from the perspective of a user of the CML tools, rather than as a
developer, all I've been trying to say is this:  When I type "make menuconfig"
or "make oldconfig" in the future, I want to see the same interface and the same
results that I've always seen, because it's always worked for me in the past.
It really doesn't matter to me if, down underneath, this is being done by CML1,
CML2, or a little man in my computer who slaughters chickens and reads their
entrails for omens to determine dependencies.  Right now I can grab a new -pre
or -ac patch, use oldconfig, and have a compile going in a few minutes, without
knowing or caring about the details of the config process.  In the rare case
that a patch breaks an existing driver, it takes only a couple of minutes with
menuconfig to disable that driver and compile without it, and then put it back
in when it's fixed.  And when, every once in a great while, I decide to scrap my
.config and start over, I can fly through all the menuconfig options very
quickly and make my customary selections almost without thinking about it.

I just want to be able to keep using the tools in this way.  If that's not going
to be possible... well, I'll adapt.  But from my point of view, learning a new
set of tools just to keep doing the same things I've always done isn't a
pleasant prospect.  I understand that changes may be necessary to meet others'
needs, but I'd like to see those changes made without affecting the way my own
needs are met.

I'm off my soapbox now and won't bellyache about it any further.

Wayne



^ permalink raw reply	[flat|nested] 160+ messages in thread
* Re: Background to the argument about CML2 design philosophy
@ 2001-05-21 19:05 Wayne.Brown
  0 siblings, 0 replies; 160+ messages in thread
From: Wayne.Brown @ 2001-05-21 19:05 UTC (permalink / raw)
  To: esr; +Cc: David Woodhouse, Arjan van de Ven, linux-kernel



On 05/21/2001 at 12:58:57 esr@thyrsus.com wrote:

>CML2 drops its configuration results in the same place, in the same
>formats, as CML1.  So you should in fact be able to type `make menuconfig'
>and `make oldconfig' with good results.  Have you actually tried this?

No, I haven't tried it yet.  I usually wait for things like this to be included
in Linus' or Alan's kernels before trying them.  In this case, I might have
tried it by now but I only have Python 1.5.2 on my system and don't want to
upgrade it until/unless it's absolutely necessary.  So I probably won't see CML2
until Linus puts it in 2.5.  My comments have been based on your descriptions of
it on lkml.

Wayne



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

end of thread, other threads:[~2001-05-23  1:52 UTC | newest]

Thread overview: 160+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-05-05 23:27 CML2 design philosophy heads-up Eric S. Raymond
2001-05-06 12:58 ` Alan Cox
2001-05-07 17:59   ` Tom Rini
2001-05-07 21:57     ` Alan Cox
2001-05-08  9:44       ` Eric S. Raymond
2001-05-08 12:42       ` Helge Hafting
2001-05-08  1:31     ` Eric S. Raymond
2001-05-08  1:43       ` Tom Rini
2001-05-08  1:56         ` Eric S. Raymond
2001-05-08  6:57           ` David Weinehall
2001-05-08  7:00             ` Eric S. Raymond
2001-05-08  6:59           ` Jamie Lokier
2001-05-08  7:15             ` Eric S. Raymond
2001-05-08 14:15               ` Rogier Wolff
2001-05-13 14:22 ` Jes Sorensen
2001-05-13 15:25   ` Eric S. Raymond
2001-05-15 14:43     ` Pavel Machek
2001-05-17  7:26       ` Eric S. Raymond
2001-05-17  7:47         ` Keith Owens
2001-05-17  9:35           ` Michael Meissner
2001-05-17 16:34             ` Tom Rini
2001-05-18  7:43               ` Eric S. Raymond
2001-05-18  8:20                 ` Alan Cox
2001-05-18 14:53                   ` Eric S. Raymond
2001-05-18 14:06                     ` David Lang
2001-05-18 15:09                     ` Keith Owens
2001-05-18 15:19                       ` Arjan van de Ven
2001-05-18 15:39                       ` Alan Cox
2001-05-18 15:58                         ` [kbuild-devel] " Eric S. Raymond
2001-05-18 16:01                           ` Alan Cox
2001-05-18 16:34                             ` Eric S. Raymond
2001-05-18 16:43                               ` Christoph Hellwig
2001-05-18 16:45                               ` Arjan van de Ven
2001-05-18 17:17                                 ` Eric S. Raymond
2001-05-18 17:22                                   ` Arjan van de Ven
2001-05-18 17:25                                     ` Eric S. Raymond
2001-05-19  5:54                                 ` Ben Ford
2001-05-18 17:33                               ` Alan Cox
2001-05-18 18:25                                 ` Eric S. Raymond
2001-05-18 19:13                                   ` Alan Cox
2001-05-18 19:44                                     ` Eric S. Raymond
2001-05-18 20:38                                       ` Alan Cox
2001-05-19  1:49                               ` Aaron Lehmann
2001-05-18 19:12                       ` Jes Sorensen
2001-05-18 15:11                     ` Arjan van de Ven
2001-05-18 15:26                       ` Eric S. Raymond
2001-05-18 15:34                         ` Charles Cazabon
2001-05-18 14:30                           ` David Lang
2001-05-18 15:47                             ` Charles Cazabon
2001-05-18 15:42                           ` Alan Cox
2001-05-19  5:44                           ` Ben Ford
2001-05-19  6:40                           ` Pete Zaitcev
2001-05-19 10:10                             ` Ben Ford
2001-05-19 10:55                               ` Arjan van de Ven
2001-05-19 16:13                               ` Alan Cox
2001-05-19 21:54                                 ` Ben Ford
2001-05-20  0:08                                   ` Alan Cox
2001-05-18 15:37                         ` Arjan van de Ven
2001-05-18 15:49                           ` Eric S. Raymond
2001-05-18 16:16                             ` Arjan van de Ven
2001-05-18 17:04                               ` Eric S. Raymond
2001-05-20 11:19                           ` David Woodhouse
2001-05-20 15:18                             ` Eric S. Raymond
2001-05-20 15:34                               ` Keith Owens
2001-05-20 15:34                             ` David Woodhouse
2001-05-20 15:44                               ` Eric S. Raymond
2001-05-20 18:31                                 ` Background to the argument about CML2 design philosophy Jonathan Morton
2001-05-20 20:13                                   ` Eric S. Raymond
2001-05-20 15:56                               ` CML2 design philosophy heads-up David Woodhouse
2001-05-20 17:14                                 ` Background to the argument about CML2 design philosophy Eric S. Raymond
2001-05-21  0:45                                   ` Jes Sorensen
2001-05-21  9:14                                   ` Helge Hafting
2001-05-21 11:32                                   ` Jonathan Morton
2001-05-22 20:38                                     ` Eric S. Raymond
2001-05-21 12:15                                   ` David Woodhouse
2001-05-21 12:31                                     ` Alan Cox
2001-05-21 23:11                                     ` Jonathan Morton
2001-05-20 17:47                                 ` David Woodhouse
2001-05-20 20:47                                   ` Eric S. Raymond
2001-05-20 20:59                                     ` Arjan van de Ven
2001-05-20 22:51                                     ` David Woodhouse
2001-05-21  1:13                                       ` Eric S. Raymond
2001-05-21  6:41                                       ` David Woodhouse
2001-05-21 10:04                                         ` Eric S. Raymond
2001-05-21 11:05                                         ` David Woodhouse
2001-05-22 13:45                                       ` David Woodhouse
2001-05-22 17:17                                         ` David Woodhouse
2001-05-22 16:21                                       ` John Stoffel
2001-05-21  3:33                                     ` Nicolas Pitre
2001-05-21 20:38                                     ` John Stoffel
2001-05-22  0:59                                       ` Keith Owens
2001-05-22  9:24                                         ` Daniel Phillips
2001-05-23  1:51                                           ` Keith Owens
2001-05-21 23:00                                     ` Jonathan Morton
2001-05-20 20:59                                   ` David Woodhouse
2001-05-20 21:10                                   ` Robert M. Love
2001-05-21  3:38                                     ` Nicolas Pitre
2001-05-18 17:07                       ` CML2 design philosophy heads-up Daniel Phillips
2001-05-18 15:38                     ` Alan Cox
2001-05-18 16:04                       ` Eric S. Raymond
2001-05-18 16:09                         ` [kbuild-devel] " Christoph Hellwig
2001-05-18 16:43                           ` Michael Meissner
2001-05-18 17:13                             ` Arjan van de Ven
2001-05-18 17:22                             ` Eric S. Raymond
2001-05-18 17:42                               ` Christoph Hellwig
2001-05-18 17:42                                 ` Alan Cox
2001-05-18 18:28                                 ` John Cowan
2001-05-18 17:23                         ` Alan Cox
2001-05-18 17:41                           ` Eric S. Raymond
2001-05-18 15:54                     ` Christer Weinigel
2001-05-18 15:59                     ` Jonathan Morton
2001-05-18 16:17                       ` Eric S. Raymond
2001-05-18 17:35                       ` Mike Galbraith
2001-05-18 20:03                         ` Alan Cox
2001-05-18 16:02                     ` [kbuild-devel] " Kai Germaschewski
2001-05-18 19:12                 ` frank
2001-05-15 20:32     ` Jes Sorensen
2001-05-15 21:33       ` Eric S. Raymond
2001-05-18 15:19         ` Jes Sorensen
2001-05-18 15:37           ` Justin Carlson
2001-05-18 15:42           ` Eric S. Raymond
2001-05-18 15:53             ` Alan Cox
2001-05-18 15:51           ` [kbuild-devel] " John Cowan
2001-05-18 15:58             ` Christoph Hellwig
2001-05-18 16:00               ` John Cowan
2001-05-18 17:15                 ` Mike Castle
2001-05-18 17:28                   ` Christoph Hellwig
2001-05-21  0:29             ` Jes Sorensen
2001-05-21  1:58               ` Mike Castle
2001-05-21  6:33                 ` Ben Ford
2001-05-21  9:55                   ` Jes Sorensen
2001-05-21 16:59                   ` Mike Castle
2001-05-21 17:03                     ` Alan Cox
2001-05-21  7:21                 ` arjan
2001-05-21  3:47               ` Nicolas Pitre
2001-05-21  2:10             ` Robert M. Love
2001-05-21  2:35               ` Jakob Østergaard
2001-05-21  5:01                 ` Mike Galbraith
2001-05-21  9:58                 ` Jes Sorensen
2001-05-21 15:36                   ` Tom Rini
2001-05-21 16:24                     ` Eric S. Raymond
2001-05-21  6:11               ` Mike A. Harris
2001-05-21 12:08                 ` Robert M. Love
2001-05-21 12:29                   ` Alan Cox
2001-05-21 16:39                     ` Brent D. Norris
2001-05-21 17:48                       ` Eric S. Raymond
2001-05-21 15:18                 ` Wichert Akkerman
2001-05-21 15:21                   ` Alan Cox
2001-05-21 15:52                   ` Alexander Viro
2001-05-18 16:22           ` Steven Cole
     [not found]   ` <0105210958040I.10237@spc.esa.lanl.gov>
     [not found]     ` <20010521090130.F9965@opus.bloom.county>
2001-05-21 16:13       ` Steven Cole
2001-05-18 17:10 ` Ruth Ivimey-Cook
2001-05-21  3:01 Background to the argument about CML2 design philosophy Ben Bridgwater
2001-05-21 17:36 Wayne.Brown
2001-05-21 17:58 ` Eric S. Raymond
2001-05-21 20:00   ` Urban Widmark
2001-05-22  2:42     ` Eric S. Raymond
2001-05-22 14:42     ` john slee
2001-05-22 17:28       ` Daniel Phillips
2001-05-21 19:05 Wayne.Brown

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).