Messages in this thread | | | Date | Tue, 11 Jul 2006 23:37:33 +0200 | From | Jörn Engel <> | Subject | Re: RFC: cleaning up the in-kernel headers |
| |
On Tue, 11 July 2006 13:41:06 -0700, Randy.Dunlap wrote: > On Tue, 11 Jul 2006 21:41:07 +0200 Sam Ravnborg wrote: > > > > JÃrn Engel IIRC created a perl scrip that did this a year or two ago. > > > Try googling a bit. > > http://lkml.org/lkml/2003/10/1/74 > > That is version 2 of the script. There are also versions 3 & 4. > > http://marc.theaimsgroup.com/?l=linux-kernel&w=2&r=1&s=check+headers+for+complete+includes&q=t
Boy, it took me a while to remember what I did back then. In principle, the script just compiles trivial c files with a single #include <linux/foo.h> inside.
Not too bad in principle, but there were two problems I couldn't solve: 1. One of the goals should be to make a compile faster, not slower. Adding further includes hardly helps. 2. It is practically impossible to test every possible combination of #ifdefs in the various headers pulled in.
Problem 1 would be fairly simple, as the script could be changed slightly to prune single #include lines from headers and see if they still compile. But then there is problem 2.
One possibility to tackly problem 2 would be to create a set of config files to use for automatic testing. Instead of compiling once, a header must get compiled with every config in the set. Hopefully this set would not grow too big.
And in the end, there is just so much you can automate. Humans have to think about the changes before sending patches.
Jörn
-- Optimizations always bust things, because all optimizations are, in the long haul, a form of cheating, and cheaters eventually get caught. -- Larry Wall - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |