]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - scripts/headers_check.pl
headers_check.pl: disallow extern's
[linux-2.6-omap-h63xx.git] / scripts / headers_check.pl
index 488a3b1f760f77009d8a2a0f65b17aca9e7f3b9d..5bdd9753007a3ae6103bdab7838e94413677cf68 100644 (file)
@@ -14,7 +14,9 @@
 #    Only include files located in asm* and linux* are checked.
 #    The rest are assumed to be system include files.
 #
-# 2) TODO: check for leaked CONFIG_ symbols
+# 2) It is checked that prototypes does not use "extern"
+#
+# 3) TODO: check for leaked CONFIG_ symbols
 
 use strict;
 
@@ -33,6 +35,7 @@ foreach my $file (@files) {
        while ($line = <FH>) {
                $lineno++;
                check_include();
+               check_prototypes();
        }
        close FH;
 }
@@ -54,3 +57,10 @@ sub check_include
                }
        }
 }
+
+sub check_prototypes
+{
+       if ($line =~ m/^\s*extern\b/) {
+               printf STDERR "$filename:$lineno: extern's make no sense in userspace\n";
+       }
+}