Message ID | 20200602135319.21457-2-ciara.power@intel.com (mailing list archive) |
---|---|
State | Superseded, archived |
Delegated to: | Thomas Monjalon |
Headers | show |
Series | standardize devtools check scripts | expand |
Context | Check | Description |
---|---|---|
ci/Intel-compilation | success | Compilation OK |
ci/iol-testing | warning | Testing issues |
ci/iol-mellanox-Performance | success | Performance Testing PASS |
ci/iol-nxp-Performance | success | Performance Testing PASS |
ci/iol-intel-Performance | success | Performance Testing PASS |
ci/checkpatch | success | coding style OK |
02/06/2020 15:53, Ciara Power: > This patch modifies the arguments expected by the check-git-log script, > to match the format of arguments for the checkpatches script. Both > scripts now take certain argument options in the same format, making > them easier to use. > e.g. Both now take a commit ID range by "-r <range>" > > The checkpatches help print is also updated to include the "-h" option. > > Signed-off-by: Ciara Power <ciara.power@intel.com> > Acked-by: Ferruh Yigit <ferruh.yigit@intel.com> > > --- > v3: > - Reworded check-git-log help text example. > - Added comment to indicate new and old format argument parsing. > v2: Added exit 0 after print usage. > --- > --- a/devtools/check-git-log.sh > +++ b/devtools/check-git-log.sh > + The git commits to be checked can be specified as a "git log" option, > + by latest git commits limited with -n option, or commits in the git > + range specified with -r option. > + e.g. To check only the last commit, ‘-n1’ or ‘-r@~..’ is used. > + When no parameter is provided, script will use range starting from > + origin/master to HEAD. I suggest this shorter sentence: If no range provided, default is origin/master..HEAD. > +# The script caters for two formats, the new preferred format, and the old > +# format to ensure backward compatibility. > +# The new format is aligned with the format of the checkpatches script, > +# and allows for specifying the patches to check by passing -nX or -r range. > +# e.g. To check only the last commit, ‘-n1’ or ‘-r@~..’ is used. This example line is useless here. > +# The old format allows for specifying patches by passing -X or range > +# as the first argument. > +# e.g. To check only the last commit, '-1' or '@~..' is used as first argument. This example line is useless here.
diff --git a/devtools/check-git-log.sh b/devtools/check-git-log.sh index 4e65be0e4..5220765b9 100755 --- a/devtools/check-git-log.sh +++ b/devtools/check-git-log.sh @@ -7,23 +7,47 @@ # If any doubt about the formatting, please check in the most recent history: # git log --format='%>|(15)%cr %s' --reverse | grep -i <pattern> -if [ "$1" = '-h' -o "$1" = '--help' ] ; then +print_usage () { cat <<- END_OF_HELP - usage: $(basename $0) [-h] [range] + usage: $(basename $0) [-h] [-nX|-r range] Check commit log formatting. - The git range can be specified as a "git log" option, - e.g. -1 to check only the latest commit. - The default range starts from origin/master to HEAD. + The git commits to be checked can be specified as a "git log" option, + by latest git commits limited with -n option, or commits in the git + range specified with -r option. + e.g. To check only the last commit, ‘-n1’ or ‘-r@~..’ is used. + When no parameter is provided, script will use range starting from + origin/master to HEAD. END_OF_HELP - exit -fi +} selfdir=$(dirname $(readlink -f $0)) +# The script caters for two formats, the new preferred format, and the old +# format to ensure backward compatibility. +# The new format is aligned with the format of the checkpatches script, +# and allows for specifying the patches to check by passing -nX or -r range. +# e.g. To check only the last commit, ‘-n1’ or ‘-r@~..’ is used. +# The old format allows for specifying patches by passing -X or range +# as the first argument. +# e.g. To check only the last commit, '-1' or '@~..' is used as first argument. range=${1:-origin/master..} + +if [ "$range" = '--help' ] ; then + print_usage + exit 0 # convert -N to HEAD~N.. in order to comply with git-log-fixes.sh getopts -if printf -- $range | grep -q '^-[0-9]\+' ; then - range="HEAD$(printf -- $range | sed 's,^-,~,').." +elif printf -- "$range" | grep -q '^-[0-9]\+' ; then + range="HEAD$(printf -- "$range" | sed 's,^-,~,').." +else + while getopts hr:n: ARG ; do + case $ARG in + n ) range="HEAD~$OPTARG.." ;; + r ) range=$OPTARG ;; + h ) print_usage ; exit 0 ;; + ? ) print_usage ; exit 1 ;; + esac + done + shift $(($OPTIND - 1)) fi commits=$(git log --format='%h' --reverse $range) diff --git a/devtools/checkpatches.sh b/devtools/checkpatches.sh index 42b833e0d..e111c31d7 100755 --- a/devtools/checkpatches.sh +++ b/devtools/checkpatches.sh @@ -38,7 +38,7 @@ options="$options $DPDK_CHECKPATCH_OPTIONS" print_usage () { cat <<- END_OF_HELP - usage: $(basename $0) [-q] [-v] [-nX|-r range|patch1 [patch2] ...]] + usage: $(basename $0) [-h] [-q] [-v] [-nX|-r range|patch1 [patch2] ...] Run Linux kernel checkpatch.pl with DPDK options. The environment variable DPDK_CHECKPATCH_PATH must be set.