From 554fd8c5195424bdbcabf5de30fdc183aba391bd Mon Sep 17 00:00:00 2001 From: upstream source tree Date: Sun, 15 Mar 2015 20:14:05 -0400 Subject: obtained gcc-4.6.4.tar.bz2 from upstream website; verified gcc-4.6.4.tar.bz2.sig; imported gcc-4.6.4 source tree from verified upstream tarball. downloading a git-generated archive based on the 'upstream' tag should provide you with a source tree that is binary identical to the one extracted from the above tarball. if you have obtained the source via the command 'git clone', however, do note that line-endings of files in your working directory might differ from line-endings of the respective files in the upstream repository. --- contrib/check_GNU_style.sh | 120 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 120 insertions(+) create mode 100755 contrib/check_GNU_style.sh (limited to 'contrib/check_GNU_style.sh') diff --git a/contrib/check_GNU_style.sh b/contrib/check_GNU_style.sh new file mode 100755 index 000000000..8fb579fd1 --- /dev/null +++ b/contrib/check_GNU_style.sh @@ -0,0 +1,120 @@ +#!/bin/sh + +# Checks some of the GNU style formatting rules in a set of patches. +# Copyright (C) 2010 Free Software Foundation, Inc. +# Contributed by Sebastian Pop + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + +usage() { + cat < $tmp && printf "\n$msg\n" + cat $tmp +} + +# And Grep +ag (){ + msg="$1" + arg1="$2" + arg2="$3" + shift 3 + grep -nH '^+' $* \ + | grep -v ':+++' \ + | egrep --color=always -- "$arg1" \ + | egrep --color=always -- "$arg2" \ + > $tmp && printf "\n$msg\n" + cat $tmp +} + +# reVerse Grep +vg (){ + msg="$1" + varg="$2" + arg="$3" + shift 3 + grep -nH '^+' $* \ + | grep -v ':+++' \ + | egrep -v -- "$varg" \ + | egrep --color=always -- "$arg" \ + > $tmp && printf "\n$msg\n" + cat $tmp +} + +col (){ + msg="$1" + shift 1 + grep -nH '^+' $* \ + | grep -v ':+++' \ + | cut -f 2 -d '+' \ + | awk '{ if (length ($0) > 80) print $0 }' \ + > $tmp + if [ -s $tmp ]; then + printf "\n$msg\n" + cat $tmp + fi +} + +col 'Lines should not exceed 80 characters.' $* + +g 'Trailing whitespace.' \ + '[[:space:]]$' $* + +g 'Space before dot.' \ + '[[:alnum:]][[:blank:]]+\.' $* + +g 'Dot, space, space, new sentence.' \ + '[[:alnum:]]\.([[:blank:]]|[[:blank:]]{3,})[[:alnum:]]' $* + +g 'Dot, space, space, end of comment.' \ + '[[:alnum:]]\.([[:blank:]]{0,1}|[[:blank:]]{3,})\*/' $* + +g 'Sentences should end with a dot. Dot, space, space, end of the comment.' \ + '[[:alnum:]][[:blank:]]*\*/' $* + +vg 'There should be exactly one space between function name and parentheses.' \ + '\#define' '[[:alnum:]]([^[:blank:]]|[[:blank:]]{2,})\(' $* + +g 'There should be no space before closing parentheses.' \ + '[[:graph:]][[:blank:]]+\)' $* + +ag 'Braces should be on a separate line.' \ + '\{' 'if[[:blank:]]\(|while[[:blank:]]\(|switch[[:blank:]]\(' $* + + -- cgit v1.2.3