# .Sanitize for devo/binutils

# 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:


# 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:

ChangeLog
Makefile.am
Makefile.in
NEWS
README
acconfig.h
acinclude.m4
aclocal.m4
addr2line.1
addr2line.c
ar.1
ar.c
arlex.l
arparse.y
arsup.c
arsup.h
binutils.texi
bucomm.c
bucomm.h
budbg.h
coffdump.c
coffgrok.c
coffgrok.h
config.in
configure
configure.bat
configure.com
configure.in
cxxfilt.man
debug.c
debug.h
deflex.l
defparse.y
dep-in.sed
dlltool.c
dlltool.h
filemode.c
ieee.c
is-ranlib.c
is-strip.c
mac-binutils.r
makefile.vms-in
maybe-ranlib.c
maybe-strip.c
mpw-config.in
mpw-make.sed
nlmconv.1
nlmconv.c
nlmconv.h
nlmheader.y
nm.1
nm.c
not-ranlib.c
not-strip.c
objcopy.1
objcopy.c
objdump.1
objdump.c
po
prdbg.c
ranlib.1
ranlib.sh
rclex.l
rcparse.y
rdcoff.c
rddbg.c
readelf.c
resbin.c
rescoff.c
resrc.c
sanity.sh
size.1
size.c
srconv.c
stabs.c
stamp-h.in
strings.1
strings.c
strip.1
sysdump.c
sysinfo.y
syslex.l
sysroff.info
testsuite
version.c
windres.c
windres.h
winduni.c
winduni.h
wrstabs.c

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:

v850e_files="readelf.c"
if ( echo $* | grep keep\-v850e > /dev/null ) ; then
	for i in $v850e_files ; do
		if test ! -d $i && (grep sanitize-v850e $i > /dev/null) ; then
			if [ -n "${verbose}" ] ; then
				echo Keeping v850e stuff in $i
			fi
		fi
	done
else
	for i in $v850e_files ; do
		if test -r $i && (grep sanitize-v850e $i > /dev/null) ; then
			if [ -n "${verbose}" ] ; then
				echo Removing traces of \"v850e\" from $i...
			fi
			cp $i new
			sed '/start\-sanitize\-v850e/,/end\-sanitize\-v850e/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

m32rx_files="readelf.c"
if ( echo $* | grep keep\-m32rx > /dev/null ) ; then
	for i in $m32rx_files ; do
		if test ! -d $i && (grep sanitize-m32rx $i > /dev/null) ; then
			if [ -n "${verbose}" ] ; then
				echo Keeping m32rx stuff in $i
			fi
		fi
	done
else
	for i in $m32rx_files ; do
		if test -r $i && (grep sanitize-m32rx $i > /dev/null) ; then
			if [ -n "${verbose}" ] ; then
				echo Removing traces of \"m32rx\" from $i...
			fi
			cp $i new
			sed '/start\-sanitize\-m32rx/,/end\-sanitize\-m32rx/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

d30v_files="readelf.c"
if ( echo $* | grep keep\-d30v > /dev/null ) ; then
	for i in $d30v_files ; do
		if test ! -d $i && (grep sanitize-d30v $i > /dev/null) ; then
			if [ -n "${verbose}" ] ; then
				echo Keeping d30v stuff in $i
			fi
		fi
	done
else
	for i in $d30v_files ; do
		if test -r $i && (grep sanitize-d30v $i > /dev/null) ; then
			if [ -n "${verbose}" ] ; then
				echo Removing traces of \"d30v\" from $i...
			fi
			cp $i new
			sed '/start\-sanitize\-d30v/,/end\-sanitize\-d30v/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

# This must come after all other sanitizations.  Re-sanitize the .pot
# file.
if [ -n "${verbose}" ]; then
   echo Re-computing files for gettext ...
fi

if [ -n "${safe}" -a ! -f po/.Recover/POTFILES.in ]; then
   if [ -n "${verbose}" ]; then
      echo Caching po/POTFILES.in in .Recover...
   fi
   mv po/POTFILES.in po/.Recover
fi
find . -name '*.[ch]' | sed -e 's,^\./,,' > po/POTFILES.in

if [ -n "${safe}" -a ! -f po/.Recover/binutils.pot ]; then
   if [ -n "${verbose}" ]; then
      echo Caching po/binutils.pot in .Recover...
   fi
   mv po/binutils.pot po/.Recover
fi
# If this fails, Sanitization must fail.
xgettext -c -k_ -kN_ -f po/POTFILES.in -o po/binutils.pot || exit 1

# eof