3 # Each directory to survive its way into a release will need a file
4 # like this one called "./.Sanitize". All keyword lines must exist,
5 # and must exist in the order specified by this file. Each directory
6 # in the tree will be processed, top down, in the following order.
8 # Hash started lines like this one are comments and will be deleted
9 # before anything else is done. Blank lines will also be squashed
12 # The lines between the "Do-first:" line and the "Things-to-keep:"
13 # line are executed as a /bin/sh shell script before anything else is
14 # done in this directory.
18 keep_these_too="${keep_these_too} .cvsignore CYGNUS autoconf
19 bfd binutils byacc cvs deja-gnu dejagnu diff dosrel dvips emacs emacs19
20 examples expect fileutils flex gas gcc gdb gdbm gdbtest glob gprof grep
21 groff include install.sh ispell ld libg++ libgcc libgloss libiberty
22 libio librx libstdc++ m4 make mmalloc move-if-change newlib opcodes
23 pagas patch prms rcs readline sed send-pr shellutils sim tcl textutils
24 tk texinfo tgas utils uudecode wdiff xiberty"
26 cygnus_files="release release-info build-all.mk test-build.mk COPYING.NEWLIB"
28 if ( echo $* | grep keep\-cygnus > /dev/null) ; then
29 keep_these_too="${keep_these_too} ${cygnus_files}"
31 lose_these_too="${lose_these_too} ${cygnus_files}"
36 if ( echo $* | grep lose\-gdbtk > /dev/null) ; then
37 lose_these_too="${lose_these_too} ${gdbtk_files}"
38 if [ -n "${verbose}" ] ; then
39 echo Deleting ${gdbtk_files}
42 keep_these_too="${keep_these_too} ${gdbtk_files}"
43 if [ -n "${verbose}" ] ; then
44 echo Keeping ${gdbtk_files}
48 # This is for newlib net releases.
49 # We don't check for duplicates of COPYING.NEWLIB appearing because it's not
50 # intended that keep-cygnus and keep-newlib be used together.
51 newlib_files="COPYING.NEWLIB"
53 if ( echo $* | grep keep\-newlib > /dev/null) ; then
54 keep_these_too="${keep_these_too} ${newlib_files}"
56 lose_these_too="${lose_these_too} ${newlib_files}"
59 # This top-level directory is special. We often check out only subsets
60 # of this directory, and complaining about directories or files we didn't
61 # check out just gets obnoxious.
63 list="${keep_these_too}"
66 for file in $list ; do
67 if [ -r $file ] || [ -d $file ] ; then
68 keep_these_too="${keep_these_too} $file"
72 list="${lose_these_too}"
75 for file in $list ; do
76 if [ -r $file ] || [ -d $file ] ; then
77 lose_these_too="${lose_these_too} $file"
81 # All files listed between the "Things-to-keep:" line and the
82 # "Do-last:" line will be kept. All other files will be removed.
83 # Directories listed in this section will have their own Sanitize
84 # called. Directories not listed will be removed in their entirety
100 # These will only show up if they checked out gas-extra-stuff.
110 # The lines between the "Do-last:" line and the end of the file
111 # are executed as a /bin/sh shell script after everything else is
116 # Don't try to clean directories here, as the 'mv' command will fail.
117 # Also, grep fails on NFS mounted directories.
119 if ( echo $* | egrep verbose > /dev/null ) ; then
125 # Remove "sanitize-Sanitize" lines.
126 if [ -n "${verbose}" ] ; then
127 echo Cleaning unconditional sanitizations out of Makefile.in...
130 sed '/start\-sanitize\-Sanitize/,/end-\sanitize\-Sanitize/d' < Makefile.in > new
131 if [ -n "${safe}" -a ! -f .Recover/Makefile.in ] ; then
132 mv Makefile.in .Recover
136 if [ -n "${verbose}" ] ; then
137 echo Thawing away the \"chill\"...
140 if ( echo $* | grep keep\-chill > /dev/null ) ; then
142 if test ! -d $i && (grep sanitize-chill $i > /dev/null) ; then
143 if [ -n "${verbose}" ] ; then
144 echo Keeping chill stuff in $i
150 if test ! -d $i && (grep sanitize-chill $i > /dev/null) ; then
151 if [ -n "${verbose}" ] ; then
152 echo Thawing the \"chill\" out of $i...
155 sed '/start\-sanitize\-chill/,/end-\sanitize\-chill/d' < $i > new
156 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
157 if [ -n "${verbose}" ] ; then
158 echo Caching $i in .Recover...
167 if [ -n "${verbose}" ] ; then
168 echo Processing \"arc\"...
171 arc_files="config.sub configure.in"
173 if ( echo $* | grep keep\-arc > /dev/null ) ; then
174 for i in $arc_files ; do
175 if test ! -d $i && (grep sanitize-arc $i > /dev/null) ; then
176 if [ -n "${verbose}" ] ; then
177 echo Keeping arc stuff in $i
183 if test ! -d $i && (grep sanitize-arc $i > /dev/null) ; then
184 if [ -n "${verbose}" ] ; then
185 echo Removing traces of \"arc\" from $i...
188 sed '/start\-sanitize\-arc/,/end-\sanitize\-arc/d' < $i > new
189 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
190 if [ -n "${verbose}" ] ; then
191 echo Caching $i in .Recover...
200 psion_files="config.sub configure.in"
202 if ( echo $* | grep keep\-psion > /dev/null ) ; then
203 for i in $psion_files; do
204 if test ! -d $i && (grep sanitize-psion $i > /dev/null) ; then
205 if [ -n "${verbose}" ] ; then
206 echo Keeping psion stuff in $i
212 if test ! -d $i && (grep sanitize-psion $i > /dev/null) ; then
213 if [ -n "${verbose}" ] ; then
214 echo Removing traces of \"psion\" from $i...
217 sed '/start\-sanitize\-psion/,/end-\sanitize\-psion/d' < $i > new
218 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
219 if [ -n "${verbose}" ] ; then
220 echo Caching $i in .Recover...
229 rce_files="config.sub"
231 if ( echo $* | grep keep\-rce > /dev/null ) ; then
232 for i in $rce_files ; do
233 if test ! -d $i && (grep sanitize-rce $i > /dev/null) ; then
234 if [ -n "${verbose}" ] ; then
235 echo Keeping rce stuff in $i
240 for i in $rce_files ; do
241 if test ! -d $i && (grep sanitize-rce $i > /dev/null) ; then
242 if [ -n "${verbose}" ] ; then
243 echo Removing traces of \"rce\" from $i...
246 sed '/start\-sanitize\-rce/,/end-\sanitize\-rce/d' < $i > new
247 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
248 if [ -n "${verbose}" ] ; then
249 echo Caching $i in .Recover...
259 if test ! -d $i && (grep sanitize $i > /dev/null) ; then
260 echo '***' Some mentions of Sanitize are still left in $i! 1>&2