Kernel makefiles (Was: sd.c) (fwd)

Jim Nance (
Thu, 6 Jul 95 8:18:14 EDT

> > PS2. Could somebody put a proper dependency rule for making modules?
> > Every time I "make modules" everything gets compiled again (exept the fs
> [...]
> What happened to the ideas to sanitize the makefiles? 1.3 should be a good
> opportunity to change this, with lots of time to debug before the next
> even release.

I am working on it. I talked to Linus about it once, and he told me that
it would not go in before 1.3. I sent him a large set of patches against
1.2.1 because I figured 1.3 would be out in the next day or so :-) Anyway,
by the time 1.3 did come out those patches would not go in. This is
probably a good thing anyway, since my code tends to get better the more
times I rewrite it. I just sent Linus a very small patch against 1.3.6 which
starts things rolling again.

The first thing I am trying to do with the Makefiles is to make them all
include a common file which will contain the rules. Once this is done
it should be possible to change the behavior of the kernel build by changing
this one file. After I get the kernel to build exactly like it does now
using the common rules file, I will try to add the features that people
have asked for. These include:

1) Ability to make only selected modules
2) Ability to put the .o files in a seperate directory tree
3) Ability to compile kernels with different sets of configuration
options from the same source tree (with out having to destroy
one kernel's .o files to build the other)
4) Ability to change config options w/o having to recompile almost
every file.
5) Others I can not remember

I have done a set of patches that implemented item 1, and another set of
patches that implemented item 2. I did not think that either of these patches
were very clean, so its good that I am doing them again.

One thing which needs to be done, which I am not trying to do, is change the
way make config works. It causes so much argument every time it gets
discussed that I am scared to alter it. Does any brave soul want to try this?