Skip to contentSkip to conversation

coccicheck: Allow the user to give a VERBOSE= argument

PATCH In review Bernd Schubert 2 participants 6 messages Jan 22, 2013 – Feb 1, 2013 Coccinelle/Semantic Patches (SmPL)

lore
Share & tools
lore
#0 lore raw

PATCH 1/2 coccicheck: Allow the user to give a VERBOSE= argument

Simply running "make coccicheck" returns very verbose output and warnings might not be noticed. Allow the user to set the verbosity level.

CC Julia Lawall <[email protected]>
CC Nicolas Palix <[email protected]>
CC cocci at systeme.lip6.fr
---
 scripts/coccicheck |    8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
scripts/coccicheck +7 -1
index 1a49d1c..eab0b00 100755
@@ -2,6 +2,12 @@
 
 SPATCH="`which ${SPATCH:=spatch}`"
 
+if [ -z "$VERBOSE" ] ; then
+	RUN_VERBOSE=0
+else
+	RUN_VERBOSE=$VERBOSE
+fi
+
 if [ "$C" = "1" -o "$C" = "2" ]; then
     ONLINE=1
 
@@ -55,7 +61,7 @@ coccinelle () {
 #
 #    $SPATCH -D $MODE $FLAGS -parse_cocci $COCCI $OPT > /dev/null
 
-    if [ "$ONLINE" = "0" ] ; then
+    if [ "$RUN_VERBOSE" != "0" ] ; then
 
 	FILE=`echo $COCCI | sed "s|$srctree/||"`
 
#1 lore raw

PATCH 2/2 coccicheck: Allow to show the executed command line

On my system one of the tests failed with
"Fatal error: exception Failure("No OCaml compiler found! Install either ocamlopt or ocamlopt.opt")".

Investigating such issues is easier if the executed command line is being shown.

CC Julia Lawall <[email protected]>
CC Nicolas Palix <[email protected]>
CC cocci at systeme.lip6.fr
---
 scripts/coccicheck |   28 +++++++++++++++++++++-------
 1 file changed, 21 insertions(+), 7 deletions(-)
scripts/coccicheck +21 -7
index eab0b00..fb98534 100755
@@ -52,6 +52,14 @@ if [ "$ONLINE" = "0" ] ; then
     echo ''
 fi
 
+run_cmd() {
+	if [ "$RUN_VERBOSE" != "0" ] ; then
+		echo "Running: $@"
+	fi
+	eval $@
+}
+
+
 coccinelle () {
     COCCI="$1"
 
@@ -97,15 +105,21 @@ coccinelle () {
     fi
 
     if [ "$MODE" = "chain" ] ; then
-	$SPATCH -D patch   $FLAGS -sp_file $COCCI $OPT $OPTIONS               || \
-	$SPATCH -D report  $FLAGS -sp_file $COCCI $OPT $OPTIONS -no_show_diff || \
-	$SPATCH -D context $FLAGS -sp_file $COCCI $OPT $OPTIONS               || \
-	$SPATCH -D org     $FLAGS -sp_file $COCCI $OPT $OPTIONS -no_show_diff || exit 1
+	run_cmd $SPATCH -D patch   \
+		$FLAGS -sp_file $COCCI $OPT $OPTIONS               || \
+	run_cmd $SPATCH -D report  \
+		$FLAGS -sp_file $COCCI $OPT $OPTIONS -no_show_diff || \
+	run_cmd $SPATCH -D context \
+		$FLAGS -sp_file $COCCI $OPT $OPTIONS               || \
+	run_cmd $SPATCH -D org     \
+		$FLAGS -sp_file $COCCI $OPT $OPTIONS -no_show_diff || exit 1
     elif [ "$MODE" = "rep+ctxt" ] ; then
-	$SPATCH -D report  $FLAGS -sp_file $COCCI $OPT $OPTIONS -no_show_diff && \
-	$SPATCH -D context $FLAGS -sp_file $COCCI $OPT $OPTIONS || exit 1
+	run_cmd $SPATCH -D report  \
+		$FLAGS -sp_file $COCCI $OPT $OPTIONS -no_show_diff && \
+	run_cmd $SPATCH -D context \
+		$FLAGS -sp_file $COCCI $OPT $OPTIONS || exit 1
     else
-	$SPATCH -D $MODE   $FLAGS -sp_file $COCCI $OPT $OPTIONS || exit 1
+	run_cmd $SPATCH -D $MODE   $FLAGS -sp_file $COCCI $OPT $OPTIONS || exit 1
     fi
 
 }
maintainer
#2 lore raw
In reply to Bernd Schubert

Hi,

Thank you Bernd for your proposition.

I added Michal in CC, who is responsible for the integration.

I was wondering if the V variable which already exists would not be better than introducing a new variable. Bernd, is there any reason to not use V ?

Your patch also remove the check of the ONLINE variable. In doing so, I think that your patch will badly interfere with the online checking performed with the C variable. Am I missing something ?

Regards,

Quoted 39 lines · Bernd Schubert

Simply running "make coccicheck" returns very verbose output and warnings might not be noticed. Allow the user to set the verbosity level.

CC Julia Lawall <[email protected]>
CC Nicolas Palix <[email protected]>
CC cocci at systeme.lip6.fr
---
 scripts/coccicheck |    8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
scripts/coccicheck +7 -1
index 1a49d1c..eab0b00 100755
@@ -2,6 +2,12 @@
 
 SPATCH="`which ${SPATCH:=spatch}`"
 
+if [ -z "$VERBOSE" ] ; then
+       RUN_VERBOSE=0
+else
+       RUN_VERBOSE=$VERBOSE
+fi
+
 if [ "$C" = "1" -o "$C" = "2" ]; then
     ONLINE=1
 
@@ -55,7 +61,7 @@ coccinelle () {
 #
 #    $SPATCH -D $MODE $FLAGS -parse_cocci $COCCI $OPT > /dev/null
 
-    if [ "$ONLINE" = "0" ] ; then
+    if [ "$RUN_VERBOSE" != "0" ] ; then
 
        FILE=`echo $COCCI | sed "s|$srctree/||"`
 
Signature · 1 line
Nicolas Palix
#3 lore raw

Hello Nicolas,

Quoted 5 lines · Nicolas Palix

Hi,

Thank you Bernd for your proposition.

I added Michal in CC, who is responsible for the integration.

Oh, sorry, I CCed everyone, but forgot Michal.

Quoted 3 lines

I was wondering if the V variable which already exists would not be better than introducing a new variable. Bernd, is there any reason to not use V ?

I'm fine using 'V' either.

Quoted 4 lines

Your patch also remove the check of the ONLINE variable. In doing so, I think that your patch will badly interfere with the online checking performed with the C variable. Am I missing something ?

Hmm, I probably should have told in the patch description that verbosity defaults to 0 now. Shall I revert or make an extra patch for that? With the current patch and ONLINE != 0 nothing will change.

Cheers,
Bernd

Quoted 47 lines

Regards,

Quoted 39 lines · Bernd Schubert

Simply running "make coccicheck" returns very verbose output and warnings might not be noticed. Allow the user to set the verbosity level.

CC Julia Lawall <[email protected]>
CC Nicolas Palix <[email protected]>
CC cocci at systeme.lip6.fr
---
  scripts/coccicheck |    8 +++++++-
  1 file changed, 7 insertions(+), 1 deletion(-)
scripts/coccicheck +7 -1
index 1a49d1c..eab0b00 100755
@@ -2,6 +2,12 @@
 
  SPATCH="`which ${SPATCH:=spatch}`"
 
+if [ -z "$VERBOSE" ] ; then
+       RUN_VERBOSE=0
+else
+       RUN_VERBOSE=$VERBOSE
+fi
+
  if [ "$C" = "1" -o "$C" = "2" ]; then
      ONLINE=1
 
@@ -55,7 +61,7 @@ coccinelle () {
  #
  #    $SPATCH -D $MODE $FLAGS -parse_cocci $COCCI $OPT > /dev/null
 
-    if [ "$ONLINE" = "0" ] ; then
+    if [ "$RUN_VERBOSE" != "0" ] ; then
 
         FILE=`echo $COCCI | sed "s|$srctree/||"`
 
maintainer
#4 lore raw

Hi,

Quoted 5 lines · Bernd Schubert

Hello Nicolas,

Quoted 1 line · Nicolas Palix
Quoted 8 lines
Quoted 5 lines

Hi,

Thank you Bernd for your proposition.

I added Michal in CC, who is responsible for the integration.

Oh, sorry, I CCed everyone, but forgot Michal.

Michal, should we consider adding you to the MAINTAINERS of Coccinelle ?

Quoted 8 lines
Quoted 5 lines

I was wondering if the V variable which already exists would not be better than introducing a new variable. Bernd, is there any reason to not use V ?

I'm fine using 'V' either.

OK. Could you resubmit with V, please ?

Quoted 11 lines
Quoted 6 lines

Your patch also remove the check of the ONLINE variable. In doing so, I think that your patch will badly interfere with the online checking performed with the C variable. Am I missing something ?

Hmm, I probably should have told in the patch description that verbosity defaults to 0 now. Shall I revert or make an extra patch for that? With the current patch and ONLINE != 0 nothing will change.

I am personally fine with cutting off the verbosity by default. Could you add a comment on how to turn it on in the initial message of the ONLINE mode which is currently only about false positives, and add few words in the change log ?

About your other patch, could you resubmit it with V too ?

Thanks.

Regards,

Quoted 56 lines

Cheers,
Bernd

Quoted 48 lines

Regards,

Quoted 40 lines · Bernd Schubert

Simply running "make coccicheck" returns very verbose output and warnings might not be noticed. Allow the user to set the verbosity level.

CC Julia Lawall <[email protected]>
CC Nicolas Palix <[email protected]>
CC cocci at systeme.lip6.fr
---
  scripts/coccicheck |    8 +++++++-
  1 file changed, 7 insertions(+), 1 deletion(-)
scripts/coccicheck +7 -1
index 1a49d1c..eab0b00 100755
@@ -2,6 +2,12 @@
 
  SPATCH="`which ${SPATCH:=spatch}`"
 
+if [ -z "$VERBOSE" ] ; then
+       RUN_VERBOSE=0
+else
+       RUN_VERBOSE=$VERBOSE
+fi
+
  if [ "$C" = "1" -o "$C" = "2" ]; then
      ONLINE=1
 
@@ -55,7 +61,7 @@ coccinelle () {
  #
  #    $SPATCH -D $MODE $FLAGS -parse_cocci $COCCI $OPT > /dev/null
 
-    if [ "$ONLINE" = "0" ] ; then
+    if [ "$RUN_VERBOSE" != "0" ] ; then
 
         FILE=`echo $COCCI | sed "s|$srctree/||"`
 
Signature · 1 line
Nicolas Palix