Subject: Re: FYI: more options defop'ted: DDB, network protocols, COMPAT_*
To: Greg A. Woods <woods@most.weird.com>
From: Jonathan Stone <jonathan@DSG.Stanford.EDU>
List: current-users
Date: 07/06/1998 11:26:13
>I only asked if it were necessary to run "make depend" after a config
>run that changed only automatically generated opt_*.h files.

Oh. I misunderstood about changing nothing else but opt_*.h files.

Strictly speaking, the answer may still be "yes", because:

[snip]

>  Such a mistake should only happen if someone has #ifdef'ed a
>#include somewhere, and that should not be done for the kernel.)


In fact there's a cliche' in kernel network code which looks like

	#include <param.h>
		 /*... other headers */

	#ifdef NS	/* xerox
	       /* include NS external declarations */
	#endif

	#ifdef NETATALK
	       /* include NS external declarations */
	#endif


That's used in network drivers and CPU-specific softinterrupt
handlers.  It means declarations for a given protocol stack are only
present if the protocol is configured.  which in turn moves one class
of errors from link-time to compile-time.

Besides, since non-developers can't be expected to _really_ know if
turning on an option that was previously off adds new .o files to
their Makefile or not, I think saying "always rerun make depend" is as
good as we can get.