From 125079e6d7f96d67bfa751560525fc96a57a5f6d Mon Sep 17 00:00:00 2001
From: Bruce Momjian <bruce@momjian.us>
Date: Mon, 8 Sep 1997 04:14:01 +0000
Subject: [PATCH] Reorganize developers files.

---
 src/DEVELOPERS                           |  1 +
 src/MAKE_CTAGS                           | 10 -----
 src/MAKE_ETAGS                           | 10 -----
 src/MAKE_MKID                            |  7 ----
 src/PGINDENT                             | 48 ------------------------
 src/{ => tools}/BACKEND_DIRS             |  0
 src/{FIND_STATIC => tools/find_static}   |  0
 src/tools/find_typedef                   | 27 +++++++++++++
 src/{DEV_TIPS => tools/make_diff/README} | 37 ++----------------
 src/tools/make_diff/cporig               |  8 ++++
 src/tools/make_diff/difforig             | 11 ++++++
 src/tools/make_diff/rmorig               |  6 +++
 12 files changed, 56 insertions(+), 109 deletions(-)
 create mode 100644 src/DEVELOPERS
 delete mode 100644 src/MAKE_CTAGS
 delete mode 100644 src/MAKE_ETAGS
 delete mode 100644 src/MAKE_MKID
 delete mode 100644 src/PGINDENT
 rename src/{ => tools}/BACKEND_DIRS (100%)
 rename src/{FIND_STATIC => tools/find_static} (100%)
 mode change 100644 => 100755
 create mode 100755 src/tools/find_typedef
 rename src/{DEV_TIPS => tools/make_diff/README} (54%)
 create mode 100755 src/tools/make_diff/cporig
 create mode 100755 src/tools/make_diff/difforig
 create mode 100755 src/tools/make_diff/rmorig

diff --git a/src/DEVELOPERS b/src/DEVELOPERS
new file mode 100644
index 00000000000..99f0c8c8908
--- /dev/null
+++ b/src/DEVELOPERS
@@ -0,0 +1 @@
+All the developer tools are located in the /tools directory.
diff --git a/src/MAKE_CTAGS b/src/MAKE_CTAGS
deleted file mode 100644
index ef99564694c..00000000000
--- a/src/MAKE_CTAGS
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/bin/sh
-trap "rm -f /tmp/$$" 0 1 2 3 15
-rm -f ./tags
-find `pwd`/ -type f -name '*.[chyl]' -print|xargs ctags -t -a -f tags
-sort tags >/tmp/$$ && mv /tmp/$$ tags
-
-find . -type d -print |while read DIR
-do
-	[ "$DIR" != "." ] && ln -f -s `pwd`/tags $DIR/tags
-done
diff --git a/src/MAKE_ETAGS b/src/MAKE_ETAGS
deleted file mode 100644
index 94b9597aa40..00000000000
--- a/src/MAKE_ETAGS
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/bin/sh
-trap "rm -f /tmp/$$" 0 1 2 3 15
-rm -f ./TAGS
-find `pwd`/ -type f -name '*.[chyl]' -print | \
-  xargs etags --append --output=TAGS
-
-find . -type d -print | \
-while read DIR; do
-  [ "$DIR" != "." ] && ln -f -s `pwd`/TAGS $DIR
-done
diff --git a/src/MAKE_MKID b/src/MAKE_MKID
deleted file mode 100644
index 01ed0f079b2..00000000000
--- a/src/MAKE_MKID
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/bin/sh
-find `pwd`/ -type f -name '*.[chyl]' -print|sed 's;//;/;g' | mkid -S.gen=C -
-
-find . -type d -print |while read DIR
-do
-	[ "$DIR" != "." ] && ln -f -s `pwd`/ID $DIR/ID
-done
diff --git a/src/PGINDENT b/src/PGINDENT
deleted file mode 100644
index 2c9371fbc5b..00000000000
--- a/src/PGINDENT
+++ /dev/null
@@ -1,48 +0,0 @@
-#!/bin/sh
-#
-# This can format all PostgreSQL *.c and *.h files,
-# excluding libpq++, *.y, and *.l files.
-#
-# On 09/06/1997, from the top directory, I ran:
-#
-#   find . -name '*.[ch]' -type f -print | grep -v '++' | xargs -n100 PGINDENT
-#
-
-trap "rm -f /tmp/$$ /tmp/$$a" 0 1 2 3 15
-entab </dev/null >/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
-indent -st </dev/null >/dev/null
-if [ "$?" -ne 0 ]
-then	echo "You do not appear to have 'indent' installed on your system." >&2
-	exit 1
-fi
-for FILE
-do
-	cat $FILE |
-	sed 's;/\*  *---;/*---X_X;g' |
-	sed 's;\([} 	]\)else[ 	]*\(/\*.*\)$;\1else\
-\2;g' | # workaround for indent bug
-	detab -t4 -qc |
-	sed 's;^DATA(.*$;/*&*/;' >/tmp/$$a    # protect backslashes in DATA() 
-	indent -bad -bap -bbb -bc -bl -d0 -cdb -cli1 -nce -nfc1 -di12 -i4 -l75 \
-		-lp -nip -npro /tmp/$$a >/tmp/$$ 2>&1
-	if [ "$?" -ne 0 -o -s /tmp/$$ ]
-	then	echo "$FILE"
-		cat /tmp/$$
-	fi
-	cat /tmp/$$a |
-	sed 's;^/\*\(DATA(.*\)\*/$;\1;' |
-	sed 's;/\*---X_X;/* ---;g' |
-	sed 's;^static[ 	][ 	]*;static ;g' | # workaround indent bug
-	detab -t8 -qc |
-	entab -t4 -qc >/tmp/$$ && cat /tmp/$$ >$FILE
-done
-
-# The 'for' loop makes these backup files useless
-# so delete them
-rm -f *a.BAK
diff --git a/src/BACKEND_DIRS b/src/tools/BACKEND_DIRS
similarity index 100%
rename from src/BACKEND_DIRS
rename to src/tools/BACKEND_DIRS
diff --git a/src/FIND_STATIC b/src/tools/find_static
old mode 100644
new mode 100755
similarity index 100%
rename from src/FIND_STATIC
rename to src/tools/find_static
diff --git a/src/tools/find_typedef b/src/tools/find_typedef
new file mode 100755
index 00000000000..3017da5b708
--- /dev/null
+++ b/src/tools/find_typedef
@@ -0,0 +1,27 @@
+#!/bin/sh
+# This script attempts to find all typedef's in the postgres binaries
+# by using 'nm' to report all typedef debugging symbols.
+# 
+# For this program to work, you must have compiled all binaries with 
+# debugging symbols.
+#
+# This is run on BSD/OS 3.0, so you may need to make changes for your
+# version of nm.
+# 
+# Ignore the nm errors about a file not being a binary file.
+#
+# Remember, debugging symbols are your friends.
+#
+
+if [ "$#" -ne 1 -o ! -d "$1" ]
+then	echo "Usage:  $0 postgres_binary_directory" 1>&2
+	exit 1
+fi
+
+nm -a "$1"/* |
+grep LSYM |
+grep ':t' |
+sed 's/^.*LSYM \([^:]*\):.*$/\1/' |
+grep -v ' ' | # some typedefs have spaces, revove them
+sort | 
+uniq
diff --git a/src/DEV_TIPS b/src/tools/make_diff/README
similarity index 54%
rename from src/DEV_TIPS
rename to src/tools/make_diff/README
index 7cac0862202..59e87c020ee 100644
--- a/src/DEV_TIPS
+++ b/src/tools/make_diff/README
@@ -2,19 +2,9 @@ Bruce Momjian <maillist@candle.pha.pa.us>
 
 Here are some of the scripts I use to make development easier.
 
-First, I use 'cpdir' on every file I am about to change.  This makes a
+First, I use 'cporig' on every file I am about to change.  This makes a
 copy with the extension .orig.  If an .orig already exists, I am warned.
 
-	:
-	# cporig
-	for FILE
-	do
-		if [ ! -f "$FILE.orig" ]
-		then	cp $FILE $FILE.orig
-		else	echo "$FILE.orig exists" 1>&2
-		fi
-	done
-
 I can get really fancy with this.  I can do 'cporig *' and make a .orig
 for every file in the current directory.  I can:
 
@@ -34,33 +24,12 @@ or even better (using mkid):
 
 to edit all those files.
 
-When I am ready to generate a patch, I run this command from the top of
+When I am ready to generate a patch, I run 'difforig' command from the top of
 the source tree:
 	
-	:
-	#difforig
-	if [ "$#" -eq 0 ]
-	then	APATH="."
-	else	APATH="$1"
-	fi
-	find $APATH -name '*.orig' -print | sort | while read FILE
-	do
-		NEW="`dirname $FILE`/`basename $FILE .orig`"
-		echo "$NEW" 1>&2
-		diff -c $FILE $NEW
-	done
-
 I pipe the output of this to a file to hold my patch, and the file names
 it processes appear on my screen.  It creates a nice patch for me of all
 the files I used with cporig.
 
-Finally, I remove my old copies with:
-
-	:
-	# rmorig
-	if [ "$#" -eq 0 ]
-	then	APATH="."
-	else	APATH="$1"
-	fi
-	find $APATH -name '*.orig' -exec rm {} \;
+Finally, I remove my old copies with 'rmorig'.
 
diff --git a/src/tools/make_diff/cporig b/src/tools/make_diff/cporig
new file mode 100755
index 00000000000..0b188ac3e5f
--- /dev/null
+++ b/src/tools/make_diff/cporig
@@ -0,0 +1,8 @@
+:
+for FILE
+do
+	if [ ! -f "$FILE.orig" ]
+	then	cp $FILE $FILE.orig
+	else	echo "$FILE.orig exists" 1>&2
+	fi
+done
diff --git a/src/tools/make_diff/difforig b/src/tools/make_diff/difforig
new file mode 100755
index 00000000000..a70b8bed4e9
--- /dev/null
+++ b/src/tools/make_diff/difforig
@@ -0,0 +1,11 @@
+:
+if [ "$#" -eq 0 ]
+then	APATH="."
+else	APATH="$1"
+fi
+find $APATH -name '*.orig' -print | sort | while read FILE
+do
+	NEW="`dirname $FILE`/`basename $FILE .orig`"
+	echo "$NEW" 1>&2
+	diff -c $FILE $NEW
+done
diff --git a/src/tools/make_diff/rmorig b/src/tools/make_diff/rmorig
new file mode 100755
index 00000000000..f6d0d4eff68
--- /dev/null
+++ b/src/tools/make_diff/rmorig
@@ -0,0 +1,6 @@
+:
+if [ "$#" -eq 0 ]
+then	APATH="."
+else	APATH="$1"
+fi
+find $APATH -name '*.orig' -exec rm {} \;
-- 
GitLab