Subject: Re: Config sugestion
To: Reinoud Zandijk <reinoud@netbsd.org>
From: David Brownlee <abs@netbsd.org>
List: tech-kern
Date: 07/27/2001 15:47:48
On Fri, 27 Jul 2001, Reinoud Zandijk wrote:
> Since i had to configure a NetBSD/i386 system again I ran against a pretty
> irritating and time consuming job : the machine had no PCI so i had to
> manually comment EVERYTHING that was related to the PCI since the kernel
> had to be small too.
>
> Therefore I would like to think of ways of specifying these kind of global
> choises in the configuration files... Options I considered are :
>
> 1) include #ifdef mechanism with variables that can be used
> # please put your configuration options here :
> #define PCI
> #define SCSI
> ....
> #ifdef PCI
> pci* at mainbus
> vga* at pci?
> # ifdef SCSI
> scsi* at pci?
> # endif
> #endif
>
> #ifdef SCSI
> scsi* at mainbus?
> #endif
>
The amiga and atari use something similar to this for building
variations on GENERIC and INSTALL. Its very flexible, but the
combinations of # for comment and cpp is unfortunate.
> 2) use a top-level include mechanism for clarity
> include "pci"
> include "ultra-pci"
>
I'd quite like to see GENERIC and similar converted to top
level includes for busses and MI options (COMPAT etc).
> 3) use a warning mechanism only ... i.e. dont consider them errors when
> some items are orphans ... just 'take the orphans to an orphanage' and
> cut the item / tree out of the resulting tree... a flag could be used
> to just treat them as warnings instead of errors.
It would be nice to be able to give config (or some related tool)
a config file and a list of 'modifiers' (drop pci bus, and any
option matching this regex) and it would spit out a suitably
stripped config file which you could hand tune.
It would need to have a reasonable knowledge of the tree structure
to handle dropping pci and 'eisa* at pceb?', but leaving
'eisa* at mainbus?'
> Unrelated : I would like to see a more clearer output ... esp. when there
> are errors.... a resulting device tree could be printed out in a structured
> way (option?) :
> - root
> +-- cpu
> +-- mainbus
> | +-- pcia
> | +-- scsi X
> +
>
> Any ideas comments / suggestions / 'shut-up'remarks ? ;) ???
I particularly like the last - please send patches :)
--
David/absolute -- www.netbsd.org: No hype required --