Messages in this thread |  | | From | (Brian Blackmore) | Subject | Re: source dependencies cleanup? (fwd) | Date | 6 Dec 1996 20:20:34 -0000 |
| |
"Joshua M. Thompson" <invid@optera.com> wrote: [ deletion ] >> There are interdependencies between sections of the system and thus configs >> overlap. Not a big problem but one to take care about.
>This will be the hard part, and that's why I will have my new Configure >script generate both the new seperate config headers and the old >all-in-one autoconf.h. It'll allow the source to be modified bit by bit; >unmodified sources will simply recompile when they don't need to, and the >modified sources will only compile if they are affected by the change. [ deletion ]
What I am about to suggest is possibly a bad idea, but sometimes good ideas come from bad ones :-)
Assuming mkdep ends up handling #ifdef's correctly (if it doesn't problems occur in some of the network code) then autoconf.h could be defined as ...
#ifndef MAKE_DEPEND #include <config/network.h> #include <config/scsi.h> #include <config/fs.h> #endif
this would allow mkdep to be passed a -DMAKE_DEPEND which would cause it to avoid all the configuration dependancies.
Dependancies to CONFIG_* options could then be calculated by a separate utility doing much the same job as mkdep except making a dependancy from the .o file who's source references a CONFIG_ option to the .h file which may define it and stored in a separate .config-depend file which would be included in a makefile much the same way as a .depend file is.
When a reconfiguration takes place whichever configuration script was being used would ensure only those config/*.h files which have actually changed would be updated and thus make would only change those files that are required.
-- Brian http://www.wonderland.org/~eternal/
|  |