#!/bin/bash ########################################################################### # astyle.sh # --------------------- # Date : August 2008 # Copyright : (C) 2008 by Juergen E. Fischer # Email : jef at norbit dot de ########################################################################### # # # 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 2 of the License, or # # (at your option) any later version. # # # ########################################################################### for ASTYLE in ${OPJSTYLE} $(dirname $0)/opjstyle $(dirname $0)/RelWithDebInfo/opjstyle do if type -p $ASTYLE >/dev/null; then break fi ASTYLE= done if [ -z "$ASTYLE" ]; then echo "opjstyle not found - please enable WITH_ASTYLE in cmake and build it" >&2 exit 1 fi if type -p tput >/dev/null; then elcr="$ASTYLEPROGRESS$(tput el)$(tput cr)" else elcr="$ASTYLEPROGRESS \r" fi if ! type -p flip >/dev/null; then if type -p dos2unix >/dev/null; then flip() { dos2unix -k $2 } else echo "flip not found" >&2 flip() { : } fi fi if ! type -p autopep8 >/dev/null; then echo "autopep8 not found" >&2 autopep8() { : } fi ASTYLEOPTS=$(dirname $0)/astyle.options if type -p cygpath >/dev/null; then ASTYLEOPTS="$(cygpath -w $ASTYLEOPTS)" fi set -e astyleit() { $ASTYLE --options="$ASTYLEOPTS" "$1" #modified=$1.unify_includes_modified #cp "$1" "$modified" #scripts/unify_includes.pl "$modified" #scripts/doxygen_space.pl "$modified" #diff "$1" "$modified" >/dev/null || mv "$modified" "$1" #rm -f "$modified" } for f in "$@"; do case "$f" in thirdparty/*) echo -ne "$f skipped $elcr" continue ;; *.cpp|*.h|*.c|*.h|*.cxx|*.hxx|*.c++|*.h++|*.cc|*.hh|*.C|*.H|*.hpp) if [ -x "$f" ]; then chmod a-x "$f" fi cmd=astyleit ;; *.py) #cmd="autopep8 --in-place --ignore=E111,E128,E201,E202,E203,E211,E221,E222,E225,E226,E227,E231,E241,E261,E265,E272,E302,E303,E501,E701" echo -ne "Formatting $f $elcr" cmd="autopep8 --in-place --ignore=E261,E265,E402,E501" ;; *) echo -ne "$f skipped $elcr" continue ;; esac if ! [ -f "$f" ]; then echo "$f not found" >&2 continue fi if [[ -f $f && `head -c 3 $f` == $'\xef\xbb\xbf' ]]; then mv $f $f.bom tail -c +4 $f.bom > $f echo "removed BOM from $f" fi modified=$f.flip_modified cp "$f" "$modified" flip -ub "$modified" diff "$f" "$modified" >/dev/null || mv "$modified" "$f" rm -f "$modified" eval "$cmd '$f'" done