On Tue, Jul 11, 2006 at 11:37:33PM +0200, Jörn Engel wrote:
> 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.
Sure, but it seems quite useful for this task.
> 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.
For me, this is not a goal.
It might perhaps be a side effect, but I care about correctness, not
about compile time.
> 2. It is practically impossible to test every possible combination of
> #ifdefs in the various headers pulled in.
It's not perfect, but it finds a subset of the problems.
There also other possible problems like stuff only used in a #define.
The perfect is the enemy of the good.
> 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.
i don't think the header cleanup could be completely automated.
But if automated tools help that's a good thing.
> Jörn
cu
Adrian
--
"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]