When debugging (using --profile or --show-trying) you want to avoid supressing output, use --quiet instead. While at it, extend documentation for SPFLAGS use. For instance one can use: $ export COCCI=scripts/coccinelle/misc/irqf_oneshot.cocci $ make coccicheck DEBUG_FILE="poo.err" MODE=report SPFLAGS="--profile --show-trying" M=./drivers/mfd/arizona-irq.c Expand Documentation/coccinelle.txt as well. v4: expand Documentation/coccinelle.txt v3: rebased, resolve conflicts, expand Documentation/coccinelle.txt v2: use egrep instead of the *"=--option"* check, this doesn't work for disjunctions.
Showing the changes to scripts (1 of 2 files). Show all
Unified · Split
| @@ -32,6 +32,27 @@ fi · 31 unmodified lines | ||
| 32 | 32 | |
| 33 | 33 | FLAGS="--very-quiet" |
| 34 | 34 | |
| 35 | +# You can use SPFLAGS to append extra arguments to coccicheck or override any | |
| 36 | +# heuristics done in this file as Coccinelle accepts the last options when | |
| 37 | +# options conflict. | |
| 38 | +# | |
| 39 | +# A good example for use of SPFLAGS is if you want to debug your cocci script, | |
| 40 | +# you can for instance use the following: | |
| 41 | +# | |
| 42 | +# $ export COCCI=scripts/coccinelle/misc/irqf_oneshot.cocci | |
| 43 | +# $ make coccicheck MODE=report DEBUG_FILE="all.err" SPFLAGS="--profile --show-trying" M=./drivers/mfd/arizona-irq.c | |
| 44 | +# | |
| 45 | +# "--show-trying" should show you what rule is being processed as it goes to | |
| 46 | +# stdout, you do not need a debug file for that. The profile output will be | |
| 47 | +# be sent to stdout, if you provide a DEBUG_FILE the profiling data can be | |
| 48 | +# inspected there. | |
| 49 | +# | |
| 50 | +# --profile will not output if --very-quiet is used, so avoid it. | |
| 51 | +echo $SPFLAGS | egrep -e "--profile|--show-trying" 2>&1 > /dev/null | |
| 52 | +if [ $? -eq 0 ]; then | |
| 53 | + FLAGS="--quiet" | |
| 54 | +fi | |
| 55 | + | |
| 35 | 56 | # spatch only allows include directories with the syntax "-I include" |
| 36 | 57 | # while gcc also allows "-Iinclude" and "-include include" |
| 37 | 58 | COCCIINCLUDE=${LINUXINCLUDE//-I/-I } |