diff options
| author | Bruce Momjian | 1997-09-08 04:14:01 +0000 |
|---|---|---|
| committer | Bruce Momjian | 1997-09-08 04:14:01 +0000 |
| commit | 125079e6d7f96d67bfa751560525fc96a57a5f6d (patch) | |
| tree | 6a624145f6b11bd6dfc5e27e016e704b5f490a88 /src/tools | |
| parent | 23db70bf73ed913df0c8fda1e43ffe40b8980735 (diff) | |
Reorganize developers files.
Diffstat (limited to 'src/tools')
| -rw-r--r-- | src/tools/BACKEND_DIRS | 47 | ||||
| -rwxr-xr-x | src/tools/find_static | 43 | ||||
| -rwxr-xr-x | src/tools/find_typedef | 27 | ||||
| -rw-r--r-- | src/tools/make_diff/README | 35 | ||||
| -rwxr-xr-x | src/tools/make_diff/cporig | 8 | ||||
| -rwxr-xr-x | src/tools/make_diff/difforig | 11 | ||||
| -rwxr-xr-x | src/tools/make_diff/rmorig | 6 |
7 files changed, 177 insertions, 0 deletions
diff --git a/src/tools/BACKEND_DIRS b/src/tools/BACKEND_DIRS new file mode 100644 index 0000000000..92131e128f --- /dev/null +++ b/src/tools/BACKEND_DIRS @@ -0,0 +1,47 @@ +access various index access methods +access/common common access routines +access/gist easy-to-define access method system +access/hash hash +access/heap heap +access/index index handling +access/nbtree btree +access/rtree rtree +access/transam transaction manager (BEGIN/ABORT/COMMIT) +bootstrap handles initdb requests to create initial template database +catalog system catalog manipulation +commands commands that do not require executor +executor executes complex node plans from optimizer +include include files +lib support library +libpq communication to client libpq library routines +main passes control to postmaster or postgres +nodes creation/manipulation of nodes +optimizer creates path and plan +optimizer/path creates path from parser output +optimizer/plan optmizes path output +optimizer/prep handle special plan cases +optimizer/util optimizer support routines +parser converts SQL query to query tree +postmaster controls postgres server startup/termination +regex regular expression library +rewrite rules system +storage manages various storage systems +storage/buffer shared buffer pool manager +storage/file file manager +storage/ipc semaphores and shared memory +storage/large_object large objects +storage/lmgr lock manager +storage/page page manager +storage/smgr storage(disk) manager +tcop traffic cop, dispatches request to proper module +tioga array handling? +utils support routines +utils/adt built-in data type routines +utils/cache system/relation/function cache routines +utils/error error reporting routines +utils/fmgr function manager +utils/hash hash routines for internal algorithms +utils/init initialization stuff +utils/mmgr memory manager(process-local memory) +utils/sort sort routines for internal algorithms +utils/time transaction time qualification routines diff --git a/src/tools/find_static b/src/tools/find_static new file mode 100755 index 0000000000..bce75a2bf6 --- /dev/null +++ b/src/tools/find_static @@ -0,0 +1,43 @@ +#!/bin/sh +trap "rm -f /tmp/$$" 0 1 2 3 15 + +# This script finds functions that are either never called, or +# should be static. +# Some functions, like library functions and debug_print functions, +# should remain unchanged. + +# Run on a compiled source tree, from the top of the source tree + +# My nm utility has 9 characters of address which I strip, then a 'type' +# character, with T as a text function, and U as an undefined function +# symbol, then the function name. + +find . -name '[a-z]*.o' -type f -print | while read FILE +do + nm $FILE | cut -c10-100 |awk '{printf "%s\t%s\t%s\n", "'"$FILE"'",$1,$2}' +done >/tmp/$$ +destroydb debug +createdb debug +echo " + create table debug (file text, scope char, func text); + + copy debug from '/tmp/"$$"'; + + select * + into table debug2 + from debug; + + update debug2 + set scope = '_' + from debug + where debug2.func = debug.func and + debug2.scope = 'T' and debug.scope = 'U'; + + delete from debug2 + where scope = '_'; + + select * + from debug2 + where scope = 'T'; +" |psql debug + diff --git a/src/tools/find_typedef b/src/tools/find_typedef new file mode 100755 index 0000000000..3017da5b70 --- /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/tools/make_diff/README b/src/tools/make_diff/README new file mode 100644 index 0000000000..59e87c020e --- /dev/null +++ b/src/tools/make_diff/README @@ -0,0 +1,35 @@ +Bruce Momjian <maillist@candle.pha.pa.us> + +Here are some of the scripts I use to make development easier. + +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. + +I can get really fancy with this. I can do 'cporig *' and make a .orig +for every file in the current directory. I can: + + cporig `grep -l HeapTuple *` + +If I use mkid (from ftp.postgreSQL.org), I can do: + + cporig `lid -kn 'fsyncOff'` + +and get a copy of every file containing that word. I can then do: + + vi `find . -name '*.orig'` + +or even better (using mkid): + + eid fsyncOff + +to edit all those files. + +When I am ready to generate a patch, I run 'difforig' command from the top of +the source tree: + +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'. + diff --git a/src/tools/make_diff/cporig b/src/tools/make_diff/cporig new file mode 100755 index 0000000000..0b188ac3e5 --- /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 0000000000..a70b8bed4e --- /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 0000000000..f6d0d4eff6 --- /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 {} \; |
