src/tools/pgindent/README

pgindent
========

This can format all PostgreSQL *.c and *.h files, but excludes *.y, and
*.l files.

1) Change directory to the top of the build tree.

2) Download the typedef file from the buildfarm:

	wget -O src/tools/pgindent/typedefs.list http://buildfarm.postgresql.org/cgi-bin/typedefs.pl

3) Remove all derived files (pgindent has trouble with one of the flex macros):

	gmake maintainer-clean

4) Run pgindent:

	find . -name '*.[ch]' -type f -print | \
	egrep -v -f src/tools/pgindent/exclude_file_patterns | \
	xargs -n100 pgindent src/tools/pgindent/typedefs.list

5) Remove any files that generate errors and restore their original
   versions.

6) Do a full test build:

	run configure
	# stop is only necessary if it's going to install in a location with an
	# already running server
	pg_ctl stop
	gmake -C src install
	gmake -C contrib install
	gmake installcheck-world


---------------------------------------------------------------------------

We have standardized on NetBSD's 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.

GNU indent, version 2.2.6, has several problems, and is not recommended.
These bugs become pretty major when you are doing >500k lines of code.
If you don't believe me, take a directory and make a copy.  Run pgindent
on the copy using GNU indent, and do a diff -r. You will see what I
mean. GNU indent does some things better, but mangles too.

Notes about excluded files:

src/include/storage/s_lock.h is excluded because it contains assembly code
that pgindent tends to mess up.

src/include/snowball/libstemmer/ and src/backend/snowball/libstemmer/
are excluded because those files are imported from an external project,
not maintained locally, and are machine-generated anyway.

src/interfaces/ecpg/test/expected/ is excluded to avoid breaking the ecpg
regression tests.  Several *.h files are included in regression output so
should not be changed.

---------------------------------------------------------------------------

Obsolete typedef list creation instructions:
--------------------------------------------

To use pgindent:

1) Build the source tree with _debug_ symbols and all possible configure options

2) Install to /usr/local/pgsql

3) Install all contrib modules

4) Save a list of typedefs by running:

	src/tools/find_typedef /usr/local/pgsql/bin /usr/local/pgsql/lib > /tmp/pgtypedefs
