From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wi0-f178.google.com (mail-wi0-f178.google.com [209.85.212.178]) by dpdk.org (Postfix) with ESMTP id 8DF6F5963 for ; Fri, 23 Oct 2015 17:54:38 +0200 (CEST) Received: by wicfx6 with SMTP id fx6so37327265wic.1 for ; Fri, 23 Oct 2015 08:54:38 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references; bh=LRRhX5OlSNn1KyJm71AhQSEn6zR7L4OSlJWovRYsNU0=; b=Ys/ceZUUWS31xuRrSIlpApwBTyt5xnFClV3HS7P7NwFYsE5NLIDUt8WPYwz7ZdnFKu UvlzuH0IrNRPtx+tlHDMZIzT3uJV5UyGSNPwVg1e6ZfgnHZ42UZp6BvhfTgFjcBBh3nR x9owLUS8J+3VwjVUvwBk8rAAwdS2IwFY2sBYWV/fTMwYxbNZGKDJuExBbdpNe7I7bwWu Fhqs33rmdZ58fCgy4XtBaQkxuo6FwCcFtEDGjqzJirPKQYjtqhl0+x2NtJp13Z9f7ccQ xbR/KrApYd8igk2ocJUa6F0RsP/xnMkoPHapHrYKCcuJmzlKlES2xWAX0eiSE1CaKGKi zPwQ== X-Gm-Message-State: ALoCoQlM2eQsz6VOpq4/k6lCn2vVy+InLO/9ovseR2E6laecEwPkfqZts7CoX+qM/g2JdpEbEz7k X-Received: by 10.194.179.165 with SMTP id dh5mr6524321wjc.134.1445615678393; Fri, 23 Oct 2015 08:54:38 -0700 (PDT) Received: from localhost.localdomain (136-92-190-109.dsl.ovh.fr. [109.190.92.136]) by smtp.gmail.com with ESMTPSA id cq8sm2187837wib.12.2015.10.23.08.54.37 for (version=TLSv1/SSLv3 cipher=OTHER); Fri, 23 Oct 2015 08:54:37 -0700 (PDT) From: Thomas Monjalon To: dev@dpdk.org Date: Fri, 23 Oct 2015 17:53:25 +0200 Message-Id: <1445615606-3885-2-git-send-email-thomas.monjalon@6wind.com> X-Mailer: git-send-email 2.5.2 In-Reply-To: <1445615606-3885-1-git-send-email-thomas.monjalon@6wind.com> References: <1445615606-3885-1-git-send-email-thomas.monjalon@6wind.com> Subject: [dpdk-dev] [PATCH 1/2] scripts: add checkpatch wrapper X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 23 Oct 2015 15:54:38 -0000 This script can be used to call checkpatch.pl from Linux with some custom DPDK options. The path to the original Linux script must be set in an environment variable. A script is added to load any configuration variables required by development tools from a file .develconfig, or ~/.config/dpdk/devel.config or /etc/dpdk/devel.config. Signed-off-by: Thomas Monjalon --- scripts/checkpatches.sh | 30 ++++++++++++++++++++++++++++++ scripts/load-devel-config.sh | 14 ++++++++++++++ 2 files changed, 44 insertions(+) create mode 100755 scripts/checkpatches.sh create mode 100755 scripts/load-devel-config.sh diff --git a/scripts/checkpatches.sh b/scripts/checkpatches.sh new file mode 100755 index 0000000..192b931 --- /dev/null +++ b/scripts/checkpatches.sh @@ -0,0 +1,30 @@ +#! /bin/sh + +# Load config options: +# - DPDK_CHECKPATCH_PATH +# - DPDK_CHECKPATCH_LINE_LENGTH +. scripts/load-devel-config.sh +if [ ! -x "$DPDK_CHECKPATCH_PATH" ] ; then + echo 'Cannot execute DPDK_CHECKPATCH_PATH' >&2 + exit 1 +fi + +length=${DPDK_CHECKPATCH_LINE_LENGTH:-80} + +# override default Linux options +options="$options --max-line-length=$length" +options="$options --show-types" +options="$options --ignore=LINUX_VERSION_CODE,FILE_PATH_CHANGES,\ +VOLATILE,PREFER_PACKED,PREFER_ALIGNED,PREFER_PRINTF,PREFER_KERNEL_TYPES,\ +SPLIT_STRING,LINE_SPACING,PARENTHESIS_ALIGNMENT,NETWORKING_BLOCK_COMMENT_STYLE,\ +NEW_TYPEDEFS,COMPLEX_MACRO,COMPARISON_TO_NULL" + +status=0 +for p in "$@" ; do + printf -- "\n### $p\n\n" + report=$($DPDK_CHECKPATCH_PATH $options "$p" 2>/dev/null) + [ $? -ne 0 ] || continue + printf '%s\n' "$report" | head -n -6 + status=$(($status + 1)) +done +exit $status diff --git a/scripts/load-devel-config.sh b/scripts/load-devel-config.sh new file mode 100755 index 0000000..489f007 --- /dev/null +++ b/scripts/load-devel-config.sh @@ -0,0 +1,14 @@ +#! /bin/echo must be loaded with . + +# Load DPDK devel config and allow override +# from system file +test ! -r /etc/dpdk/devel.config || + . /etc/dpdk/devel.config +# from user file +test ! -r ~/.config/dpdk/devel.config || + . ~/.config/dpdk/devel.config +# from local file +test ! -r $(dirname $(readlink -m $0))/../.develconfig || + . $(dirname $(readlink -m $0))/../.develconfig + +# The config files must export variables in the shell style -- 2.5.2