diff --git a/src/tools/pgindent/README b/src/tools/pgindent/README index ec8f96bb16..aae95173a8 100644 --- a/src/tools/pgindent/README +++ b/src/tools/pgindent/README @@ -37,3 +37,11 @@ following options: find . \( -name '*.java' -o -name '*.java.in' \) -print | xargs -n100 pgjindent +--------------------------------------------------------------------------- + +For cpp, we use astyle, http://astyle.sourceforge.net/, with the +following options: + + find src/interfaces/libpq++ -name '*.[ch]' -print | + xargs -n100 pgcppindent + diff --git a/src/tools/pgindent/pgcppindent b/src/tools/pgindent/pgcppindent new file mode 100755 index 0000000000..ee27cf5295 --- /dev/null +++ b/src/tools/pgindent/pgcppindent @@ -0,0 +1,27 @@ +#!/bin/sh + +trap "rm -f /tmp/$$ /tmp/$$a" 0 1 2 3 15 +entab /dev/null +if [ "$?" -ne 0 ] +then echo "Go to the src/tools/entab directory and do a 'make' and 'make install'." >&2 + echo "This will put the 'entab' command in your path." >&2 + echo "Then run $0 again." + exit 1 +fi +astyle --version /dev/null 2>&1 +if [ "$?" -eq 0 ] +then echo "You do not appear to have 'astyle' installed on your system." >&2 + exit 1 +fi + +for FILE +do + astyle --style=ansi -b -p -S < "$FILE" >/tmp/$$ 2>/tmp/$$a + if [ "$?" -ne 0 -o -s /tmp/$$a ] + then echo "$FILE" + cat /tmp/$$a + fi + cat /tmp/$$ | + entab -t4 -qc | + cat >/tmp/$$a && cat /tmp/$$a >"$FILE" +done