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
50 bfd binutils byacc cvs deja-gnu dejagnu diff dosrel dvips emacs emacs19
51 examples expect fileutils flex gas gcc gdb gdbm gdbtest glob gprof grep
52 groff include install.sh ispell ld libg++ libgcc libgloss libiberty
53 libio librx libstdc++ m4 make mmalloc move-if-change newlib opcodes
54 pagas patch prms rcs readline sed send-pr shellutils sim textutils
55 texinfo tgas utils uudecode wdiff xiberty
56 configure.bat makeall.bat
57 mpw-README mpw-configure mpw-config.in mpw-build.in"
59 lose_these_too="${lose_these_too} testsuite"
61 cygnus_files="release release-info build-all.mk test-build.mk COPYING.NEWLIB"
63 if ( echo $* | grep keep\-cygnus > /dev/null) ; then
64 keep_these_too="${keep_these_too} ${cygnus_files}"
66 lose_these_too="${lose_these_too} ${cygnus_files}"
71 if ( echo $* | grep lose\-gdbtk > /dev/null) ; then
72 lose_these_too="${lose_these_too} ${gdbtk_files}"
73 if [ -n "${verbose}" ] ; then
74 echo Deleting ${gdbtk_files}
77 keep_these_too="${keep_these_too} ${gdbtk_files}"
78 if [ -n "${verbose}" ] ; then
79 echo Keeping ${gdbtk_files}
83 # This is for newlib net releases.
84 newlib_file="COPYING.NEWLIB"
86 if (echo $* | grep keep\-newlib > /dev/null) ; then
87 if (echo $* | grep -v keep\-cygnus > /dev/null) ; then
88 keep_these_too="${keep_these_too} ${newlib_file}"
89 lose_these_too="`echo ${lose_these_too} | sed -e s/${newlib_file}//`"
92 true; # Let keep-cygnus handle it.
95 # This top-level directory is special. We often check out only subsets
96 # of this directory, and complaining about directories or files we didn't
97 # check out just gets obnoxious.
99 list="`(for i in ${keep_these_too}; do echo $i ; done) | sort -u`"
102 for file in $list ; do
103 if [ -r $file ] || [ -d $file ] ; then
104 keep_these_too="${keep_these_too} $file"
108 list="`(for i in ${lose_these_too}; do echo $i ; done) | sort -u` "
111 for file in $list ; do
112 if [ -r $file ] || [ -d $file ] ; then
113 lose_these_too="${lose_these_too} $file"
117 # All files listed between the "Things-to-keep:" line and the
118 # "Do-last:" line will be kept. All other files will be removed.
119 # Directories listed in this section will have their own Sanitize
120 # called. Directories not listed will be removed in their entirety
123 # ??? It is debatable whether cfg-*.in belongs in Things-to-keep or
124 # keep_these_too. If someone feels strongly about it, please move them.
144 # The lines between the "Do-last:" line and the end of the file
145 # are executed as a /bin/sh shell script after everything else is
150 # Don't try to clean directories here, as the 'mv' command will fail.
151 # Also, grep fails on NFS mounted directories.
153 if ( echo $* | egrep verbose > /dev/null ) ; then
159 # Remove "sanitize-Sanitize" lines.
160 if [ -n "${verbose}" ] ; then
161 echo Cleaning unconditional sanitizations out of Makefile.in...
164 sed '/start\-sanitize\-Sanitize/,/end-\sanitize\-Sanitize/d' < Makefile.in > new
165 if [ -n "${safe}" -a ! -f .Recover/Makefile.in ] ; then
166 mv Makefile.in .Recover
170 if [ -n "${verbose}" ] ; then
171 echo Thawing away the \"chill\"...
174 if ( echo $* | grep keep\-chill > /dev/null ) ; then
176 if test ! -d $i && (grep sanitize-chill $i > /dev/null) ; then
177 if [ -n "${verbose}" ] ; then
178 echo Keeping chill stuff in $i
184 if test ! -d $i && (grep sanitize-chill $i > /dev/null) ; then
185 if [ -n "${verbose}" ] ; then
186 echo Thawing the \"chill\" out of $i...
189 sed '/start\-sanitize\-chill/,/end-\sanitize\-chill/d' < $i > new
190 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
191 if [ -n "${verbose}" ] ; then
192 echo Caching $i in .Recover...
201 if [ -n "${verbose}" ] ; then
202 echo Processing \"arc\"...
205 arc_files="config.sub configure.in cfg-ml-com.in"
207 if ( echo $* | grep keep\-arc > /dev/null ) ; then
208 for i in $arc_files ; do
209 if test ! -d $i && (grep sanitize-arc $i > /dev/null) ; then
210 if [ -n "${verbose}" ] ; then
211 echo Keeping arc stuff in $i
217 if test ! -d $i && (grep sanitize-arc $i > /dev/null) ; then
218 if [ -n "${verbose}" ] ; then
219 echo Removing traces of \"arc\" from $i...
222 sed '/start\-sanitize\-arc/,/end-\sanitize\-arc/d' < $i > new
223 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
224 if [ -n "${verbose}" ] ; then
225 echo Caching $i in .Recover...
234 psion_files="config.sub configure.in"
236 if ( echo $* | grep keep\-psion > /dev/null ) ; then
237 for i in $psion_files; do
238 if test ! -d $i && (grep sanitize-psion $i > /dev/null) ; then
239 if [ -n "${verbose}" ] ; then
240 echo Keeping psion stuff in $i
246 if test ! -d $i && (grep sanitize-psion $i > /dev/null) ; then
247 if [ -n "${verbose}" ] ; then
248 echo Removing traces of \"psion\" from $i...
251 sed '/start\-sanitize\-psion/,/end-\sanitize\-psion/d' < $i > new
252 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
253 if [ -n "${verbose}" ] ; then
254 echo Caching $i in .Recover...
263 rce_files="config.sub"
265 if ( echo $* | grep keep\-rce > /dev/null ) ; then
266 for i in $rce_files ; do
267 if test ! -d $i && (grep sanitize-rce $i > /dev/null) ; then
268 if [ -n "${verbose}" ] ; then
269 echo Keeping rce stuff in $i
274 for i in $rce_files ; do
275 if test ! -d $i && (grep sanitize-rce $i > /dev/null) ; then
276 if [ -n "${verbose}" ] ; then
277 echo Removing traces of \"rce\" from $i...
280 sed '/start\-sanitize\-rce/,/end-\sanitize\-rce/d' < $i > new
281 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
282 if [ -n "${verbose}" ] ; then
283 echo Caching $i in .Recover...
292 sh3e_files="ChangeLog cfg-ml-com.in"
293 if ( echo $* | grep keep\-sh3e > /dev/null ) ; then
294 for i in $sh3e_files ; do
295 if test ! -d $i && (grep sanitize-sh3e $i > /dev/null) ; then
296 if [ -n "${verbose}" ] ; then
297 echo Keeping sh3e stuff in $i
302 for i in $sh3e_files ; do
303 if test ! -d $i && (grep sanitize-sh3e $i > /dev/null) ; then
304 if [ -n "${verbose}" ] ; then
305 echo Removing traces of \"sh3e\" from $i...
308 sed '/start\-sanitize\-sh3e/,/end-\sanitize\-sh3e/d' < $i > new
309 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
310 if [ -n "${verbose}" ] ; then
311 echo Caching $i in .Recover...
321 if ( echo $* | grep lose\-gdbtk > /dev/null ) ; then
322 echo Catering to RMS by removing traces of \"gdbtk\"...
323 if [ -n "${verbose}" ] ; then
324 echo Removing traces of \"gdbtk\" from Makefile.in...
327 sed -e '/GDBTK_SUPPORT_DIRS=/d' -e 's/ $(GDBTK_SUPPORT_DIRS)//' < Makefile.in > new
328 if [ -n "${safe}" -a ! -f .Recover/Makefile.in ] ; then
329 if [ -n "${verbose}" ] ; then
330 echo Caching Makefile.in in .Recover...
332 mv Makefile.in .Recover
338 if test ! -d $i && (grep sanitize $i > /dev/null) ; then
339 echo '***' Some mentions of Sanitize are still left in $i! 1>&2