This can format all PostgreSQL *.c and *.h files, but excludes *.y, and
*.l files.
-1) Install pg_bsd_indent (see below for details)
+1) Install pg_bsd_indent (see below for details).
-2) Change directory to the top of the build tree.
+2) Install entab (src/tools/entab/).
-3) Download the typedef file from the buildfarm:
+3) Change directory to the top of the build tree.
+
+4) Download the typedef file from the buildfarm:
wget -O src/tools/pgindent/typedefs.list http://buildfarm.postgresql.org/cgi-bin/typedefs.pl
-4) Remove all derived files (pgindent has trouble with one of the flex macros):
+5) Remove all derived files (pgindent has trouble with one of the flex macros):
gmake maintainer-clean
-5) Run pgindent:
+ Or:
+
+ git clean -fdx
+
+6) Run pgindent:
find . -name '*.[ch]' -type f -print | \
egrep -v -f src/tools/pgindent/exclude_file_patterns | \
xargs -n100 src/tools/pgindent/pgindent src/tools/pgindent/typedefs.list
-6) Remove any files that generate errors and restore their original
+7) Remove any files that generate errors and restore their original
versions.
-7) Do a full test build:
+8) Do a full test build:
run configure
# stop is only necessary if it's going to install in a location with an
gmake -C contrib install
gmake installcheck-world
-8) Indent the Perl MSVC code:
+9) Indent the Perl MSVC code:
cd src/tools/msvc
perltidy -b -bl -nsfs -naws -l=100 -ole=unix *.pl *.pm
BSD indent
----------
-We have standardized on NetBSD's indent, and renamed it pg_bsd_indent.
+We have standardized on NetBSD's indent, and renamed it pg_bsd_indent.
We have fixed a few bugs which requre the NetBSD source to be patched
with indent.bsd.patch patch. A fully patched version is available at
ftp://ftp.postgresql.org/pub/dev.