diff options
| author | Nicolas Palix <npalix.work@gmail.com> | 2010-10-08 15:27:40 -0400 |
|---|---|---|
| committer | Michal Marek <mmarek@suse.cz> | 2010-10-13 08:26:06 -0400 |
| commit | 2c1160c87465ee2d61eee14596e5376d2ff74f31 (patch) | |
| tree | 4cd5fb75c6aa6a75937681bac4c7f2f07dfdb6b4 /scripts | |
| parent | e90f6590219a0082618b9b6828458b1c74f37cc0 (diff) | |
Coccinelle: Add a new mode named 'chain'
spatch now returns -1 when a virtual rule (given with
-D on the command line) is not defined in the semantic patch.
Using this spatch feature, coccicheck is now
tries several modes by default, in the order:
patch, report, context, org
Signed-off-by: Nicolas Palix <npalix.work@gmail.com>
Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Michal Marek <mmarek@suse.cz>
Diffstat (limited to 'scripts')
| -rwxr-xr-x | scripts/coccicheck | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/scripts/coccicheck b/scripts/coccicheck index ef78c875a0e3..c7beb63de2e8 100755 --- a/scripts/coccicheck +++ b/scripts/coccicheck | |||
| @@ -16,6 +16,7 @@ if [ "$C" = "1" -o "$C" = "2" ]; then | |||
| 16 | else | 16 | else |
| 17 | ONLINE=0 | 17 | ONLINE=0 |
| 18 | FLAGS="-very_quiet" | 18 | FLAGS="-very_quiet" |
| 19 | OPTIONS="-dir $srctree" | ||
| 19 | fi | 20 | fi |
| 20 | 21 | ||
| 21 | if [ ! -x "$SPATCH" ]; then | 22 | if [ ! -x "$SPATCH" ]; then |
| @@ -25,11 +26,11 @@ fi | |||
| 25 | 26 | ||
| 26 | if [ "$MODE" = "" ] ; then | 27 | if [ "$MODE" = "" ] ; then |
| 27 | if [ "$ONLINE" = "0" ] ; then | 28 | if [ "$ONLINE" = "0" ] ; then |
| 28 | echo 'You have not explicitly specified the mode to use. Fallback to "report".' | 29 | echo 'You have not explicitly specified the mode to use. Using default "chain" mode.' |
| 30 | echo 'All available modes will be tried (in that order): patch, report, context, org' | ||
| 29 | echo 'You can specify the mode with "make coccicheck MODE=<mode>"' | 31 | echo 'You can specify the mode with "make coccicheck MODE=<mode>"' |
| 30 | echo 'Available modes are: report, patch, context, org' | ||
| 31 | fi | 32 | fi |
| 32 | MODE="report" | 33 | MODE="chain" |
| 33 | fi | 34 | fi |
| 34 | 35 | ||
| 35 | if [ "$ONLINE" = "0" ] ; then | 36 | if [ "$ONLINE" = "0" ] ; then |
| @@ -71,10 +72,15 @@ coccinelle () { | |||
| 71 | sed -ne 's|^//#||p' $COCCI | 72 | sed -ne 's|^//#||p' $COCCI |
| 72 | echo '' | 73 | echo '' |
| 73 | fi | 74 | fi |
| 75 | fi | ||
| 74 | 76 | ||
| 75 | $SPATCH -D $MODE $FLAGS -sp_file $COCCI $OPT -dir $srctree || exit 1 | 77 | if [ "$MODE" = "chain" ] ; then |
| 78 | $SPATCH -D patch $FLAGS -sp_file $COCCI $OPT $OPTIONS || \ | ||
| 79 | $SPATCH -D report $FLAGS -sp_file $COCCI $OPT $OPTIONS || \ | ||
| 80 | $SPATCH -D context $FLAGS -sp_file $COCCI $OPT $OPTIONS || \ | ||
| 81 | $SPATCH -D org $FLAGS -sp_file $COCCI $OPT $OPTIONS || exit 1 | ||
| 76 | else | 82 | else |
| 77 | $SPATCH -D $MODE $FLAGS -sp_file $COCCI $OPT $OPTIONS || exit 1 | 83 | $SPATCH -D $MODE $FLAGS -sp_file $COCCI $OPT $OPTIONS || exit 1 |
| 78 | fi | 84 | fi |
| 79 | 85 | ||
| 80 | } | 86 | } |
