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 byacc cvs deja-gnu dejagnu diff dosrel dvips emacs emacs19
52 examples expect fileutils findutils flex
53 gas gawk gcc gdb gdbm gdbtest glob 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"
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 lose_these_too="${lose_these_too} ${ide_files}"
113 test -n "$verbose" && echo Keeping ${ide_files}
115 keep_these_too="${keep_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 \"arc\"...
221 arc_files="config.sub configure.in config-ml.in"
223 if ( echo $* | grep keep\-arc > /dev/null ) ; then
224 for i in $arc_files ; do
225 if test ! -d $i && (grep sanitize-arc $i > /dev/null) ; then
226 if [ -n "${verbose}" ] ; then
227 echo Keeping arc stuff in $i
233 if test ! -d $i && (grep sanitize-arc $i > /dev/null) ; then
234 if [ -n "${verbose}" ] ; then
235 echo Removing traces of \"arc\" from $i...
238 sed '/start\-sanitize\-arc/,/end-\sanitize\-arc/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 \"d30v\"...
254 d30v_files="ChangeLog config.sub configure.in"
256 if ( echo $* | grep keep\-d30v > /dev/null ) ; then
257 for i in $d30v_files ; do
258 if test ! -d $i && (grep sanitize-d30v $i > /dev/null) ; then
259 if [ -n "${verbose}" ] ; then
260 echo Keeping d30v stuff in $i
266 if test ! -d $i && (grep sanitize-d30v $i > /dev/null) ; then
267 if [ -n "${verbose}" ] ; then
268 echo Removing traces of \"d30v\" from $i...
271 sed '/start\-sanitize\-d30v/,/end-\sanitize\-d30v/d' < $i > new
272 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
273 if [ -n "${verbose}" ] ; then
274 echo Caching $i in .Recover...
283 if [ -n "${verbose}" ] ; then
284 echo Processing \"v850\"...
287 v850_files="ChangeLog config.sub configure.in"
289 if ( echo $* | grep keep\-v850 > /dev/null ) ; then
290 for i in $v850_files ; do
291 if test ! -d $i && (grep sanitize-v850 $i > /dev/null) ; then
292 if [ -n "${verbose}" ] ; then
293 echo Keeping v850 stuff in $i
299 if test ! -d $i && (grep sanitize-v850 $i > /dev/null) ; then
300 if [ -n "${verbose}" ] ; then
301 echo Removing traces of \"v850\" from $i...
304 sed '/start\-sanitize\-v850/,/end-\sanitize\-v850/d' < $i > new
305 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
306 if [ -n "${verbose}" ] ; then
307 echo Caching $i in .Recover...
316 r5900_files="ChangeLog config.sub configure.in"
318 if ( echo $* | grep keep\-r5900 > /dev/null ) ; then
319 for i in $r5900_files ; do
320 if test ! -d $i && (grep sanitize-r5900 $i > /dev/null) ; then
321 if [ -n "${verbose}" ] ; then
322 echo Keeping r5900 stuff in $i
328 if test ! -d $i && (grep sanitize-r5900 $i > /dev/null) ; then
329 if [ -n "${verbose}" ] ; then
330 echo Removing traces of \"r5900\" from $i...
333 sed '/start\-sanitize\-r5900/,/end-\sanitize\-r5900/d' < $i > new
334 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
335 if [ -n "${verbose}" ] ; then
336 echo Caching $i in .Recover...
345 tic80_files="ChangeLog config.sub configure.in"
347 if ( echo $* | grep keep\-tic80 > /dev/null ) ; then
348 for i in $tic80_files ; do
349 if test ! -d $i && (grep sanitize-tic80 $i > /dev/null) ; then
350 if [ -n "${verbose}" ] ; then
351 echo Keeping tic80 stuff in $i
357 if test ! -d $i && (grep sanitize-tic80 $i > /dev/null) ; then
358 if [ -n "${verbose}" ] ; then
359 echo Removing traces of \"tic80\" from $i...
362 sed '/start\-sanitize\-tic80/,/end-\sanitize\-tic80/d' < $i > new
363 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
364 if [ -n "${verbose}" ] ; then
365 echo Caching $i in .Recover...
374 if ( echo $* | grep lose\-gdbtk > /dev/null ) ; then
375 echo Catering to RMS by removing traces of \"gdbtk\"...
376 if [ -n "${verbose}" ] ; then
377 echo Removing traces of \"gdbtk\" from Makefile.in...
380 sed -e '/GDBTK_SUPPORT_DIRS=/d' -e 's/ $(GDBTK_SUPPORT_DIRS)//' < Makefile.in > new
381 if [ -n "${safe}" -a ! -f .Recover/Makefile.in ] ; then
382 if [ -n "${verbose}" ] ; then
383 echo Caching Makefile.in in .Recover...
385 mv Makefile.in .Recover
390 if ( echo $* | grep keep\-gm > /dev/null ) ; then
392 if test ! -d $i && (grep sanitize-gm $i > /dev/null) ; then
393 if [ -n "${verbose}" ] ; then
394 echo Keeping gm stuff in $i
400 if test ! -d $i && (grep sanitize-gm $i > /dev/null) ; then
401 if [ -n "${verbose}" ] ; then
402 echo Removing traces of \"gm\" from $i...
405 sed '/start\-sanitize\-gm/,/end-\sanitize\-gm/d' < $i > new
406 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
407 if [ -n "${verbose}" ] ; then
408 echo Caching $i in .Recover...
417 if ( echo $* | grep keep\-ide > /dev/null ) ; then
419 if test ! -d $i && (grep sanitize-ide $i > /dev/null) ; then
420 if [ -n "${verbose}" ] ; then
421 echo Keeping ide stuff in $i
427 if test ! -d $i && (grep sanitize-ide $i > /dev/null) ; then
428 if [ -n "${verbose}" ] ; then
429 echo Removing traces of \"ide\" from $i...
432 sed '/start\-sanitize\-ide/,/end-\sanitize\-ide/d' < $i > new
433 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
434 if [ -n "${verbose}" ] ; then
435 echo Caching $i in .Recover...
444 # Do this check LAST!
446 if test ! -d $i && (grep sanitize $i > /dev/null) ; then
447 echo '***' Some mentions of Sanitize are still left in $i! 1>&2