a) it isn't 8 seconds worth of fast, which is the mkdep time.
b) it requires you to recompile every touched file every time you make
any update to your system, even if you don't want those files to be
compiled. Call the time to recompile the dependencies as it goes X.
Call the time to recompile the object code Y. So the total is X + Y.
c) because of b) (and a)!), it is a lot slower than a makedep follwed
by a conditional recompilation. Suppose the makedep takes an extra
20% of Y, but that after the makedep I only have to actually recompile
50% of my files. Then the time to recompile is
0.2*Y + 0.5*Y = 0.7*Y
This cannot be worse that X+Y!! You would only have a chance of winning
out if I had to recompile 80% of my files after an upgrade, which is
not the case.
In any case, what really happens is that I run mkdep, which takes 0s
effectively, and then get a slightly worse approximation to the files
taht I need to recompile. Say I have to recompile 60% instead of 50%.
Then the total time used is
0 + 0.6*Y = 0.6*Y
> "make config" seems to result in most things being re-compiled anyway
> as a result of <linux/config.h> and <linux/autoconf.h> being touched.
> This could be avoided but only at the expense of splitting the config
> options into several files.
Good point.
---------------------------------------------------------------------
Peter T. Breuer Phd. Ing.,
Area de Ingenieria Telematica E-mail: ptb@it.uc3m.es
Dpto. Ingenieria Tel: +34 1 624 99 47
Universidad Carlos III de Madrid Fax: +34 1 624 94 30/65
Butarque 15, E-28911 Leganes URL: http://www.it.uc3m.es/~ptb
Spain