# .Sanitize for devo/gdb/testsuite.

# Each directory to survive its way into a release will need a file
# like this one called "./.Sanitize".  All keyword lines must exist,
# and must exist in the order specified by this file.  Each directory
# in the tree will be processed, top down, in the following order.

# Hash started lines like this one are comments and will be deleted
# before anything else is done.  Blank lines will also be squashed
# out.

# The lines between the "Do-first:" line and the "Things-to-keep:"
# line are executed as a /bin/sh shell script before anything else is
# done in this directory.

Do-first:

gdbtk_files="gdb.gdbtk"

if ( echo $* | grep lose\-gdbtk > /dev/null ) ; then
        lose_these_too="${gdbtk_files} ${lose_these_too}"
        if [ -n "${verbose}" ] ; then
                echo Deleting ${gdbtk_files}
        fi
else
        keep_these_too="${gdbtk_files} ${keep_these_too}"
        if [ -n "${verbose}" ] ; then
                echo Keeping ${gdbtk_files}
        fi
fi

# All files listed between the "Things-to-keep:" line and the
# "Do-last:" line will be kept.  All other files will be removed.
# Directories listed in this section will have their own Sanitize
# called.  Directories not listed will be removed in their entirety
# with rm -rf.

Things-to-keep:

.gdbinit
ChangeLog
Makefile.in
TODO
aclocal.m4
config
configure
configure.in
gdb.asm
gdb.base
gdb.c++
gdb.chill
gdb.disasm
gdb.fortran
gdb.hp
gdb.stabs
gdb.threads
gdb.trace
lib

Things-to-lose:

# The lines between the "Do-last:" line and the end of the file
# are executed as a /bin/sh shell script after everything else is
# done.

Do-last:

never_files="ChangeLog"
for i in $never_files ; do
        if test ! -d $i && (grep sanitize-cygnus-never $i > /dev/null) ; then
                if [ -n "${verbose}" ] ; then
                        echo Removing traces of \"cygnus-never\" from $i...
                fi
                cp $i new
                sed '/start\-sanitize\-cygnus-never/,/end\-sanitize\-cygnus-never/d' < $i > new
                if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
                        if [ -n "${verbose}" ] ; then
                                echo Caching $i in .Recover...
                        fi
                        mv $i .Recover
                fi
                mv new $i
        fi
done

am33_files="ChangeLog"
if ( echo $* | grep keep\-am33 > /dev/null ) ; then
	for i in $am33_files ; do
		if test ! -d $i && (grep sanitize-am33 $i > /dev/null) ; then
			if [ -n "${verbose}" ] ; then
				echo Keeping am33 stuff in $i
			fi
		fi
	done
else
	for i in $am33_files ; do
		if test ! -d $i && (grep sanitize-am33 $i > /dev/null) ; then
			if [ -n "${verbose}" ] ; then
				echo Removing traces of \"am33\" from $i...
			fi
			cp $i new
			sed '/start\-sanitize\-am33/,/end-\sanitize\-am33/d' < $i > new
			if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
				if [ -n "${verbose}" ] ; then
					echo Caching $i in .Recover...
				fi
				mv $i .Recover
			fi
			mv new $i
		fi
	done
fi

if ( echo $* | grep lose\-gdbtk > /dev/null ) ; then
        echo Catering to RMS by removing traces of \"gdbtk\"...
        for i in * ; do
                if test ! -d $i && (grep sanitize-gdbtk $i > /dev/null) ; then
                        echo Removing traces of \"gdbtk\" out of $i...
                        cp $i new
                        sed '/start\-sanitize\-gdbtk/,/end-\sanitize\-gdbtk/d' < $i > new
                        if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
                                echo Caching $i in .Recover...
                                mv $i .Recover
                        fi
                        mv new $i
                fi
        done
else
        echo Leaving \"gdbtk\" in the sources...
        for i in * ; do
                if test ! -d $i && (grep sanitize-gdbtk $i > /dev/null) ; then
                        echo Keeping \"gdbtk\" stuff in $i, but editing out sanitize lines...
                        cp $i new
                        sed -e '/start\-sanitize\-gdbtk/d' -e '/end\-sanitize\-gdbtk/d' < $i > new
                        if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
                                echo Caching $i in .Recover...
                                mv $i .Recover
                        fi
                        mv new $i
                fi
        done
fi

for i in * ; do
	if test ! -d $i && (grep sanitize $i > /dev/null) ; then
		echo '***' Some mentions of Sanitize are still left in $i! 1>&2
	fi
done

# eof