Re: kbuild: Implicit dependence on the C compiler

From: H. Peter Anvin
Date: Sat Jan 29 2005 - 20:19:52 EST


Sam Ravnborg wrote:

make KBUILD_NOCMDDEP=1
will do what you want - at least I have it in my tree now.
I could not just ignore 'gcc' - but had to ignore the full commandline.

This is due to more complex commands like:
rm -f file; $(LD) ...


That's probably the right behaviour actually.

Within the Makefile.lib when I check KBUILD_NOCMDDEP there is no
knowledge of the actual command being executed. And an implmentation
that just filtered out $(CC) was too ugly.
And due to the above mentioned command I could not just skip the first
word on the command line.


I will push my bk tree soon and it will show up in next -mm.

It is not perfect in the sense that the last part of the build will get
redone (GEN .version and onwards). This is fixable but not worth it
right now.

So with current implmentation executing:

make

make KBUILD_NOCMDDEP=1 CROSS_COMPILE=i586-pc-linux-gnu-

will result in only a few files being rebuild - and not the whole
kernel as before.

That's fair. You got what you asked for.

-hpa
-
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/