Subject: Re: What should contain?
To: None <tech-kern@NetBSD.ORG>
From: Guenther Grau <>
List: tech-kern
Date: 02/04/1997 15:17:20

Gordon W. Ross wrote:
> The cleanest way, in general, to solve such problems is to use the
> model where, for any file xyzzy.c, there is an xyzzy.h header that
> defines anything exported by the .c file.  While this is a good
> general principle for library-ish things, a larger software base
> such as our kenel usually wants an interface definition header file
> for each "module."   We can consider things like arch/sun3 as one
> implementation of the "cpu" with cpu.h defining the interface.
> I'm inclined to suggest that things like sharable drivers (i.e.
> sys/dev/*) and sharable code modules (i.e. arch/m68k/*) should
> stick to the simpler model, where each individually sharable
> module exports a header file describing the interface.  If the
> interface also happens to be part of a module interface (i.e.
> cpu.h) then the latter should include the needed header.
> Comments?

I can only second that. This seems reasonable to me to support
proper share of MI code/header.