Messages in this thread |  | | Date | Thu, 05 Dec 1996 01:00:24 -0700 (MST) | From | Rob Riggs <> | Subject | Re: source dependencies cleanup? (fwd) |
| |
On 05-Dec-96 "Joshua M. Thompson" wrote: > >Here's a case in point that happened just yesterday: I had a kernel that >had PPP compiled as a module. I built this kernel a few weeks ago, and >never did a "make clean" afterwards so the .o files were still lying >around. Yesterday, I needed to have that same kernel with PPP in the >kernel. By changing the configuration I was forced to rebuild the _entire_ >kernel. This seems downright silly. Why should I have to recompile, say, >the sound driver, just for a change in how PPP is configured? > >Since the configuration scripts are already divided up by subsystem >anyway, why not take the next logical step and create an autoconf.h-type >file for each subsystem? We could do this in three steps:
[snip]
I think there might be a much easier way to achieve what you want. Rather than changing almost every file in the source tree, why not write a utility to just 'touch' all of the unaffected object files after the configuration change.
The hard part here is setting up the dependancy information for each configurable parameter, but it should be easier than what you propose.
make config dependancies copy .config to .config.old change configuration compare .config to .config.old check the config dependancies remove any .o files that are affected touch the unaffected files make new kernel
Of course you could (even easier, but less fine grained) just touch all object files in unaffected subsystems. i.e. you change CONFIG_PPP then only files in linux/drivers/net get rebuilt.
Rob (rriggs@tesser.com)
|  |