Re: New kbuild filename: Kbuild

From: Sam Ravnborg
Date: Fri Oct 29 2004 - 12:17:45 EST


On Fri, Oct 29, 2004 at 12:59:03PM +0100, Christoph Hellwig wrote:
> On Thu, Oct 28, 2004 at 09:00:20PM +0200, Sam Ravnborg wrote:
> > kbuild: Prefer Kbuild as name of the kbuild files
> >
> > The kbuild syntax is unique and does only have very few things in common with
> > usual Makefile syntax. So to avoid confusion make the filename 'Kbuild' be
> > the preferred name as replacement for 'Makefile'.
> > No global renaming planned to take place for now, but new stuff expected to use
> > the new 'Kbuild' filename.
>
> Disagree. These are just makefiles, and renaming for the sake of it
> doesn't buy us.
Makefiles are valid input files to make, and the kbuild files has
for a long time had their own documented syntax.
Introduce the Kbuild name just makes this even more apperant for the reader.

When we in two years time start to deal with external modules that only support
kernel 2.6.10 and never then we can avoid the ugly:

ifeq ($(KERNELRELEASE),)
...

To separate out the real makefile and the Kbuild stuff.

> If you really want to improve things implement something like
>
> module foo.ko
> sources foo.c blah.c
> sources foobar.c if FOO_BAR
>
> in Kconfig and get rid of driver makefiles compeltely

I'm in favour of this too - but so far Roman has rejected it.
But this still leaves out the other parts where the Kbuild name makes
more sense.

PArt of the longer term plaaning is a split of
arch/$(ARCH)/Makefile in a Kbuild.define and Kbuild.rules part.
This split will allows the kbuild infrastructure to be used
also for the top-level part of the kernel - and the next generation
kbuild will read in all relevant Kbuild files and create a single
Makfilefile for that part of the kernel compilation.

This is part of the vision at least - introducing kbuild
contant in Kconfig files is not a hindering for this.

Sam
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/