1 ########################
13 # YO! READ ME!!!!!!!!!
14 # If you're about to add a file or directory which isn't checked out as part
15 # of every module in devo (e.g., if "cvs co gas+utils" won't get it, or if
16 # "cvs co gcc" won't get it), then don't, Don't, DON'T add it to the regular
17 # things-to-keep or things-to-lose sections. Instead, add it to the setting
18 # of keep_these_too or lose_these_too before those variables are rescanned
19 # to check for the existence of the items listed in them.
21 # Otherwise, somebody will check out some package that doesn't include your
22 # new file, and will get warnings from Sanitize when everything is really
23 # okay. You don't want to get people in the habit of ignoring complaints from
24 # Sanitize, do you? No, I didn't think so.
26 # If you do add a file to the regular things-to-keep section, don't forget
27 # to add the corresponding entry to the devo-support entry (or whatever) in
30 ########################
34 # Each directory to survive its way into a release will need a file
35 # like this one called "./.Sanitize". All keyword lines must exist,
36 # and must exist in the order specified by this file. Each directory
37 # in the tree will be processed, top down, in the following order.
39 # Hash started lines like this one are comments and will be deleted
40 # before anything else is done. Blank lines will also be squashed
43 # The lines between the "Do-first:" line and the "Things-to-keep:"
44 # line are executed as a /bin/sh shell script before anything else is
45 # done in this directory.
49 keep_these_too="${keep_these_too} .cvsignore CYGNUS autoconf
51 bfd binutils bison byacc cvs deja-gnu dejagnu diff dosrel dvips
52 emacs emacs19 examples expect fileutils findutils flex
53 gas gawk gcc gdb gdbm gdbtest glob gperf gprof grep grez groff guile gzip
54 include inet install-sh ispell
55 ld less libg++ libgcc libgloss libiberty libio librx libstdc++
56 m4 make mkinstalldirs mmalloc move-if-change newlib ncurses opcodes
58 rcs readline sed send-pr shellutils sim tar textutils time
59 texinfo tgas utils uudecode wdiff xiberty
60 configure.bat makeall.bat setup.com makefile.vms winsup
61 mpw-README mpw-configure mpw-config.in mpw-build.in mpw-install
62 ltconfig ltmain.sh missing ylwrap"
64 lose_these_too="${lose_these_too} testsuite"
66 cygnus_files="release release-info build-all.mk test-build.mk COPYING.NEWLIB"
68 if ( echo $* | grep keep\-cygnus > /dev/null) ; then
69 keep_these_too="${keep_these_too} ${cygnus_files}"
71 lose_these_too="${lose_these_too} ${cygnus_files}"
74 gdbtk_files="tcl tk itcl tix"
76 if ( echo $* | grep lose\-gdbtk > /dev/null) ; then
77 lose_these_too="${lose_these_too} ${gdbtk_files}"
78 if [ -n "${verbose}" ] ; then
79 echo Deleting ${gdbtk_files}
82 keep_these_too="${keep_these_too} ${gdbtk_files}"
83 if [ -n "${verbose}" ] ; then
84 echo Keeping ${gdbtk_files}
88 # This is for newlib net releases.
89 newlib_file="COPYING.NEWLIB"
91 if (echo $* | grep keep\-newlib > /dev/null) ; then
92 if (echo $* | grep -v keep\-cygnus > /dev/null) ; then
93 keep_these_too="${keep_these_too} ${newlib_file}"
94 lose_these_too="`echo ${lose_these_too} | sed -e s/${newlib_file}//`"
97 true; # Let keep-cygnus handle it.
100 # IDK releases don't include files which only matter to CDK.
101 inet_files="COPYING.LIB config config-ml.in etc symlink-tree"
103 if (echo $* | grep keep\-inet > /dev/null); then
104 lose_these_too="${lose_these_too} ${inet_files}"
106 keep_these_too="${keep_these_too} ${inet_files}"
109 ide_files="itcl libide vmake"
111 if (echo $* | grep keep\-ide > /dev/null); then
112 keep_these_too="${keep_these_too} ${ide_files}"
113 test -n "$verbose" && echo Keeping ${ide_files}
115 lose_these_too="${lose_these_too} ${ide_files}"
119 # This top-level directory is special. We often check out only subsets
120 # of this directory, and complaining about directories or files we didn't
121 # check out just gets obnoxious.
123 list="`(for i in ${keep_these_too}; do echo $i ; done) | sort -u`"
126 for file in $list ; do
127 if [ -r $file ] || [ -d $file ] ; then
128 keep_these_too="${keep_these_too} $file"
132 list="`(for i in ${lose_these_too}; do echo $i ; done) | sort -u` "
135 for file in $list ; do
136 if [ -r $file ] || [ -d $file ] ; then
137 lose_these_too="${lose_these_too} $file"
141 # All files listed between the "Things-to-keep:" line and the
142 # "Do-last:" line will be kept. All other files will be removed.
143 # Directories listed in this section will have their own Sanitize
144 # called. Directories not listed will be removed in their entirety
160 # The lines between the "Do-last:" line and the end of the file
161 # are executed as a /bin/sh shell script after everything else is
166 # Don't try to clean directories here, as the 'mv' command will fail.
167 # Also, grep fails on NFS mounted directories.
169 if ( echo $* | egrep verbose > /dev/null ) ; then
175 # Remove "sanitize-Sanitize" lines.
176 if [ -n "${verbose}" ] ; then
177 echo Cleaning unconditional sanitizations out of Makefile.in...
180 sed '/start\-sanitize\-Sanitize/,/end-\sanitize\-Sanitize/d' < Makefile.in > new
181 if [ -n "${safe}" -a ! -f .Recover/Makefile.in ] ; then
182 mv Makefile.in .Recover
186 if [ -n "${verbose}" ] ; then
187 echo Thawing away the \"chill\"...
190 if ( echo $* | grep keep\-chill > /dev/null ) ; then
192 if test ! -d $i && (grep sanitize-chill $i > /dev/null) ; then
193 if [ -n "${verbose}" ] ; then
194 echo Keeping chill stuff in $i
200 if test ! -d $i && (grep sanitize-chill $i > /dev/null) ; then
201 if [ -n "${verbose}" ] ; then
202 echo Thawing the \"chill\" out of $i...
205 sed '/start\-sanitize\-chill/,/end-\sanitize\-chill/d' < $i > new
206 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
207 if [ -n "${verbose}" ] ; then
208 echo Caching $i in .Recover...
217 if [ -n "${verbose}" ] ; then
218 echo Processing \"d30v\"...
221 d30v_files="ChangeLog config.sub configure.in"
223 if ( echo $* | grep keep\-d30v > /dev/null ) ; then
224 for i in $d30v_files ; do
225 if test ! -d $i && (grep sanitize-d30v $i > /dev/null) ; then
226 if [ -n "${verbose}" ] ; then
227 echo Keeping d30v stuff in $i
233 if test ! -d $i && (grep sanitize-d30v $i > /dev/null) ; then
234 if [ -n "${verbose}" ] ; then
235 echo Removing traces of \"d30v\" from $i...
238 sed '/start\-sanitize\-d30v/,/end-\sanitize\-d30v/d' < $i > new
239 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
240 if [ -n "${verbose}" ] ; then
241 echo Caching $i in .Recover...
250 if [ -n "${verbose}" ] ; then
251 echo Processing \"v850\"...
254 v850_files="ChangeLog config.sub configure.in"
256 if ( echo $* | grep keep\-v850e > /dev/null ) ; then
257 for i in $v850_files ; do
258 if test ! -d $i && (grep sanitize-v850e $i > /dev/null) ; then
259 if [ -n "${verbose}" ] ; then
260 echo Keeping v850e stuff in $i
266 if test ! -d $i && (grep sanitize-v850e $i > /dev/null) ; then
267 if [ -n "${verbose}" ] ; then
268 echo Removing traces of \"v850e\" from $i...
271 sed '/start\-sanitize\-v850e/,/end-\sanitize\-v850e/d' < $i > new
272 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
273 if [ -n "${verbose}" ] ; then
274 echo Caching $i in .Recover...
283 r5900_files="ChangeLog config.sub configure.in"
285 if ( echo $* | grep keep\-r5900 > /dev/null ) ; then
286 for i in $r5900_files ; do
287 if test ! -d $i && (grep sanitize-r5900 $i > /dev/null) ; then
288 if [ -n "${verbose}" ] ; then
289 echo Keeping r5900 stuff in $i
295 if test ! -d $i && (grep sanitize-r5900 $i > /dev/null) ; then
296 if [ -n "${verbose}" ] ; then
297 echo Removing traces of \"r5900\" from $i...
300 sed '/start\-sanitize\-r5900/,/end-\sanitize\-r5900/d' < $i > new
301 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
302 if [ -n "${verbose}" ] ; then
303 echo Caching $i in .Recover...
312 tx19_files="ChangeLog config.sub"
314 if ( echo $* | grep keep\-tx19 > /dev/null ) ; then
315 for i in $tx19_files ; do
316 if test ! -d $i && (grep sanitize-tx19 $i > /dev/null) ; then
317 if [ -n "${verbose}" ] ; then
318 echo Keeping tx19 stuff in $i
324 if test ! -d $i && (grep sanitize-tx19 $i > /dev/null) ; then
325 if [ -n "${verbose}" ] ; then
326 echo Removing traces of \"tx19\" from $i...
329 sed '/start\-sanitize\-tx19/,/end-\sanitize\-tx19/d' < $i > new
330 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
331 if [ -n "${verbose}" ] ; then
332 echo Caching $i in .Recover...
341 tic80_files="ChangeLog config.sub configure.in"
343 if ( echo $* | grep keep\-tic80 > /dev/null ) ; then
344 for i in $tic80_files ; do
345 if test ! -d $i && (grep sanitize-tic80 $i > /dev/null) ; then
346 if [ -n "${verbose}" ] ; then
347 echo Keeping tic80 stuff in $i
353 if test ! -d $i && (grep sanitize-tic80 $i > /dev/null) ; then
354 if [ -n "${verbose}" ] ; then
355 echo Removing traces of \"tic80\" from $i...
358 sed '/start\-sanitize\-tic80/,/end-\sanitize\-tic80/d' < $i > new
359 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
360 if [ -n "${verbose}" ] ; then
361 echo Caching $i in .Recover...
370 if ( echo $* | grep keep\-gm > /dev/null ) ; then
372 if test ! -d $i && (grep sanitize-gm $i > /dev/null) ; then
373 if [ -n "${verbose}" ] ; then
374 echo Keeping gm stuff in $i
380 if test ! -d $i && (grep sanitize-gm $i > /dev/null) ; then
381 if [ -n "${verbose}" ] ; then
382 echo Removing traces of \"gm\" from $i...
385 sed '/start\-sanitize\-gm/,/end-\sanitize\-gm/d' < $i > new
386 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
387 if [ -n "${verbose}" ] ; then
388 echo Caching $i in .Recover...
397 if ( echo $* | grep keep\-ide > /dev/null ) ; then
399 if test ! -d $i && (grep sanitize-ide $i > /dev/null) ; then
400 if [ -n "${verbose}" ] ; then
401 echo Keeping ide stuff in $i
407 if test ! -d $i && (grep sanitize-ide $i > /dev/null) ; then
408 if [ -n "${verbose}" ] ; then
409 echo Removing traces of \"ide\" from $i...
412 sed '/start\-sanitize\-ide/,/end-\sanitize\-ide/d' < $i > new
413 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
414 if [ -n "${verbose}" ] ; then
415 echo Caching $i in .Recover...
424 if ( echo $* | grep lose\-gdbtk > /dev/null ) ; then
425 echo Catering to RMS by removing traces of \"gdbtk\"...
426 if [ -n "${verbose}" ] ; then
427 echo Removing traces of \"gdbtk\" from Makefile.in...
430 sed -e '/GDBTK_SUPPORT_DIRS=/d' -e 's/ $(GDBTK_SUPPORT_DIRS)//' < Makefile.in > new
431 if [ -n "${safe}" -a ! -f .Recover/Makefile.in ] ; then
432 if [ -n "${verbose}" ] ; then
433 echo Caching Makefile.in in .Recover...
435 mv Makefile.in .Recover
440 # Do this check LAST!
442 if test ! -d $i && (grep sanitize $i > /dev/null) ; then
443 echo '***' Some mentions of Sanitize are still left in $i! 1>&2