From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Monjalon Subject: [PATCH] scripts: add standard input to checkpatch Date: Wed, 2 Nov 2016 17:10:24 +0100 Message-ID: <1478103024-22641-1-git-send-email-thomas.monjalon@6wind.com> To: dev@dpdk.org Return-path: Received: from mail-wm0-f49.google.com (mail-wm0-f49.google.com [74.125.82.49]) by dpdk.org (Postfix) with ESMTP id BCFB12C71 for ; Wed, 2 Nov 2016 17:10:41 +0100 (CET) Received: by mail-wm0-f49.google.com with SMTP id n67so47202176wme.1 for ; Wed, 02 Nov 2016 09:10:41 -0700 (PDT) Received: from XPS13.localdomain (184.203.134.77.rev.sfr.net. [77.134.203.184]) by smtp.gmail.com with ESMTPSA id k74sm4041686wmd.18.2016.11.02.09.10.40 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 02 Nov 2016 09:10:40 -0700 (PDT) List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" It is now possible to check a patch by providing an email through stdin. It is especially useful to automate checkpatch run when receiving an email. Signed-off-by: Thomas Monjalon --- scripts/checkpatches.sh | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/scripts/checkpatches.sh b/scripts/checkpatches.sh index 5286fe6..0f3ed9d 100755 --- a/scripts/checkpatches.sh +++ b/scripts/checkpatches.sh @@ -53,7 +53,7 @@ print_usage () { Run Linux kernel checkpatch.pl with DPDK options. The environment variable DPDK_CHECKPATCH_PATH must be set. - The patches to check can be from files specified on the command line, + The patches to check can be from stdin, files specified on the command line, or latest git commits limited with -n option (default limit: origin/master). END_OF_HELP } @@ -90,6 +90,8 @@ check () { # elif [ -n "$2" ] ; then report=$(git format-patch --no-stat --stdout -1 $commit | $DPDK_CHECKPATCH_PATH $options - 2>/dev/null) + else + report=$($DPDK_CHECKPATCH_PATH $options - 2>/dev/null) fi [ $? -ne 0 ] || continue $verbose || printf '\n### %s\n\n' "$3" @@ -97,7 +99,15 @@ check () { # <patch> <commit> <title> status=$(($status + 1)) } -if [ -z "$1" ] ; then +if [ ! -t 0 ] ; then # stdin + subject=$(while read header value ; do + if [ "$header" = 'Subject:' ] ; then + echo $value + break + fi + done) + check '' '' "$subject" +elif [ -z "$1" ] ; then if [ $number -eq 0 ] ; then commits=$(git rev-list --reverse origin/master..) else -- 2.7.0