Re: [kbuild-devel] Re: State of the new config & build system

Keith Owens
2001-12-29T03:21:54Z

On Fri, 28 Dec 2001 14:27:37 -0800 (PST),
Linus Torvalds <torvalds@transmeta.com> wrote:
>Note that I do _not_ want to mess up source files with magic comments. I
>absolutely detest those. They only detract from the real job of coding,
>and do not make anybody happier.
>
>We have a hierarchical filesystem. Most drivers already have
>
> driver.c
> driver.h
>
>(in fact _very_ few drivers are single-file) and some have a subdirectory
>of their own. So why not just have
>
> driver.conf
>
>and be done with it. No point in messing up the C file with stuff that
>doesn't add any information to either the programmer _or_ the compiler.

I would love to do that, with each driver/filesystem/... having an
associated control file that defined its config options, its help and
who to make it. That is, an "Insert New Facility" file, we could call
them driver.inf (ducks and runs ;).

There is one big problem in the way, makefile order controls link order
which controls init order. I have no problem with the link order
controlling init order, that is far better than the old Space.c code.
I intensely dislike makefile order controlling link order, it results
in loss of information, we have makefiles in a specific order with no
idea about whether that order is required or is just accidental.

IMHO the link order should be divorced from makefile order and made
explicit. Then you could have makefile fragments associated with each
driver. But the last time I tried to break the dependency between make
and link order, Linus shot me down in flames[1], so I have no intention
of going there again. As long as you have monolithic makefiles,
drivers.conf is going to be problematic.

[1] http://marc.theaimsgroup.com/?l=linux-kernel&m=97301359812683&w=2