]> CyberLeo.Net >> Repos - FreeBSD/releng/9.2.git/blob - tools/tools/kernelcruft/kernelcruft.sh
- Copy stable/9 to releng/9.2 as part of the 9.2-RELEASE cycle.
[FreeBSD/releng/9.2.git] / tools / tools / kernelcruft / kernelcruft.sh
1 #!/bin/sh
2 #
3 # kernelcruft.sh
4 #
5 # Try to find *.c files in /sys which are orphaned
6 #
7 # $FreeBSD$
8
9 cd /sys/conf
10 cat files* | sed '
11 /^[     ]*#/d
12 s/[     ].*//
13 /^$/d
14 ' | sort -u > /tmp/_0
15
16 cd /sys
17 find * -name '*.c' -print | sed '
18 /\/compile\//d
19 /^boot/d
20 ' | sort -u > /tmp/_1
21
22 find * -name '*.[ch]' -print | xargs grep 'include.*c[>"]' > /tmp/_2
23
24 find * -name 'Makefile*' -print | xargs cat | sed '
25 /^      /d
26 s/:.*//
27 /^[     ]*$/d
28 ' > /tmp/_3
29
30 comm -13 /tmp/_0 /tmp/_1 | while read f
31 do
32         b=`basename $f`
33         if grep $b /tmp/_2 > /dev/null ; then
34                 # echo "2 $f"
35                 continue
36         fi
37         if grep $b /tmp/_3 > /dev/null ; then
38                 # echo "3 $f"
39                 continue
40         fi
41         echo $f
42 done
43