Print this page
11506 smatch resync


  24         shift
  25     elif [[ "$1" == "--target" ]] ; then
  26         shift
  27         TARGET="$1"
  28         shift
  29     elif [[ "$1" == "--log" ]] ; then
  30         shift
  31         LOG="$1"
  32         shift
  33     elif [[ "$1" == "--wlog" ]] ; then
  34         shift
  35         WLOG="$1"
  36         shift
  37     elif [[ "$1" == "--help" ]] ; then
  38         usage
  39     else
  40             break
  41     fi
  42 done
  43 




  44 SCRIPT_DIR=$(dirname $0)
  45 if [ -e $SCRIPT_DIR/../smatch ] ; then
  46     cp $SCRIPT_DIR/../smatch $SCRIPT_DIR/../bak.smatch
  47     CMD=$SCRIPT_DIR/../bak.smatch
  48 elif which smatch | grep smatch > /dev/null ; then
  49     CMD=smatch
  50 else
  51     echo "Smatch binary not found."
  52     exit 1
  53 fi
  54 
  55 make clean
  56 find -name \*.c.smatch -exec rm \{\} \;
  57 make -j${NR_CPU} $ENDIAN -k CHECK="$CMD -p=kernel --file-output --succeed $*" \
  58         C=1 $TARGET 2>&1 | tee $LOG

  59 find -name \*.c.smatch -exec cat \{\} \; -exec rm \{\} \; > $WLOG
  60 find -name \*.c.smatch.sql -exec cat \{\} \; -exec rm \{\} \; > $WLOG.sql
  61 find -name \*.c.smatch.caller_info -exec cat \{\} \; -exec rm \{\} \; > $WLOG.caller_info
  62 
  63 echo "Done.  The warnings are saved to $WLOG"



  24         shift
  25     elif [[ "$1" == "--target" ]] ; then
  26         shift
  27         TARGET="$1"
  28         shift
  29     elif [[ "$1" == "--log" ]] ; then
  30         shift
  31         LOG="$1"
  32         shift
  33     elif [[ "$1" == "--wlog" ]] ; then
  34         shift
  35         WLOG="$1"
  36         shift
  37     elif [[ "$1" == "--help" ]] ; then
  38         usage
  39     else
  40             break
  41     fi
  42 done
  43 
  44 # receive parameters from environment, which override
  45 [ -z "${SMATCH_ENV_TARGET:-}" ] || TARGET="$SMATCH_ENV_TARGET"
  46 [ -z "${SMATCH_ENV_BUILD_PARAM:-}" ] || BUILD_PARAM="$SMATCH_ENV_BUILD_PARAM"
  47 
  48 SCRIPT_DIR=$(dirname $0)
  49 if [ -e $SCRIPT_DIR/../smatch ] ; then
  50     cp $SCRIPT_DIR/../smatch $SCRIPT_DIR/../bak.smatch
  51     CMD=$SCRIPT_DIR/../bak.smatch
  52 elif which smatch | grep smatch > /dev/null ; then
  53     CMD=smatch
  54 else
  55     echo "Smatch binary not found."
  56     exit 1
  57 fi
  58 
  59 make clean
  60 find -name \*.c.smatch -exec rm \{\} \;
  61 make -j${NR_CPU} $ENDIAN -k CHECK="$CMD -p=kernel --file-output --succeed $*" \
  62         C=1 $BUILD_PARAM $TARGET 2>&1 | tee $LOG
  63 BUILD_STATUS=${PIPESTATUS[0]}
  64 find -name \*.c.smatch -exec cat \{\} \; -exec rm \{\} \; > $WLOG
  65 find -name \*.c.smatch.sql -exec cat \{\} \; -exec rm \{\} \; > $WLOG.sql
  66 find -name \*.c.smatch.caller_info -exec cat \{\} \; -exec rm \{\} \; > $WLOG.caller_info
  67 
  68 echo "Done. Build with status $BUILD_STATUS. The warnings are saved to $WLOG"
  69 exit $BUILD_STATUS