diff options
author | Mauro Carvalho Chehab <mchehab@infradead.org> | 2007-12-10 06:24:02 -0200 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@infradead.org> | 2007-12-10 06:24:02 -0200 |
commit | 61e5a6aab4808f04a473de863f5a902dab216b93 (patch) | |
tree | 3df2854948eb5ae2895d2be333685e9f17d35752 | |
parent | b6b28e59f3a63abba79eda2ef1de8b4e76e8cdc8 (diff) | |
download | mediapointer-dvb-s2-61e5a6aab4808f04a473de863f5a902dab216b93.tar.gz mediapointer-dvb-s2-61e5a6aab4808f04a473de863f5a902dab216b93.tar.bz2 |
Add a tool for checking codingstyle and report to emacs "Compile" command
From: Mauro Carvalho Chehab <mchehab@infradead.org>
For those who develp using emacs, checking a patch is now a matter of asking
emacs to compile, using "make checkemacs" command.
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
-rw-r--r-- | INSTALL | 2 | ||||
-rw-r--r-- | v4l/Makefile | 5 | ||||
-rwxr-xr-x | v4l/scripts/check.pl | 51 |
3 files changed, 58 insertions, 0 deletions
@@ -106,3 +106,5 @@ update - updates the tree from master repository commit - commits the change, asking for a commit msg push - sends outgoing stuff to master repository + +checkemacs - checks codingstyle and reports to emacs diff --git a/v4l/Makefile b/v4l/Makefile index 75e9c50ef..f78842c70 100644 --- a/v4l/Makefile +++ b/v4l/Makefile @@ -395,6 +395,11 @@ push:: make -C .. push ################################################# +# Consistency checks +checkemacs:: + scripts/check.pl + +################################################# # Help help:: @cat ../INSTALL diff --git a/v4l/scripts/check.pl b/v4l/scripts/check.pl new file mode 100755 index 000000000..3e6eb6e47 --- /dev/null +++ b/v4l/scripts/check.pl @@ -0,0 +1,51 @@ +#!/usr/bin/perl + +my $cmd=shift; + +if ($cmd) { + $cmd="diff -upr /dev/null $cmd"; +} else { + $cmd="hg diff"; +} + +$checkpatch=$ENV{CHECKPATCH}; + +if (!$checkpatch) { + $checkpatch="/lib/modules/`uname -r`/build/scripts/checkpatch.pl"; +} + +my $cp_version; +open IN,"$checkpatch|"; +while (<IN>) { + tr/A-Z/a-z/; + if (m/version\s*:\s*([\d\.]+)/) { + $cp_version = $1; + } +} +close IN; + +my $intree_checkpatch = "scripts/checkpatch.pl --no-tree"; +if (!open IN,"$intree_checkpatch|") { + $intree_checkpatch = "v4l/".$intree_checkpatch; + open IN,"$intree_checkpatch|"; +} +while (<IN>) { + tr/A-Z/a-z/; + if (m/version\s*:\s*([\d\.]+)/) { + if ($1 > $cp_version) { + print "# WARNING: $checkpatch version $cp_version is\n" + ."# older than $intree_checkpatch version" + ." $1.\n# Using in-tree one.\n#\n"; + $cp_version = $1; + $checkpatch = $intree_checkpatch; + } + } +} +close IN; + +open IN,"$cmd | $checkpatch -q --nosignoff --emacs -|"; +while (<IN>) { + s|#[\d]+:\s*FILE:\s*|../|; + print "$_"; +} +close IN; |