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 flex
53 gas gawk gcc gdb gdbm gdbtest glob gprof grep grez groff guile gzip
54 include inet install.sh ispell
55 ld libg++ libgcc libgloss libiberty libio librx libstdc++
56 m4 make mmalloc move-if-change newlib 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 make-all.com winsup
61 mpw-README mpw-configure mpw-config.in mpw-build.in"
63 lose_these_too="${lose_these_too} testsuite"
65 cygnus_files="release release-info build-all.mk test-build.mk COPYING.NEWLIB"
67 if ( echo $* | grep keep\-cygnus > /dev/null) ; then
68 keep_these_too="${keep_these_too} ${cygnus_files}"
70 lose_these_too="${lose_these_too} ${cygnus_files}"
75 if ( echo $* | grep lose\-gdbtk > /dev/null) ; then
76 lose_these_too="${lose_these_too} ${gdbtk_files}"
77 if [ -n "${verbose}" ] ; then
78 echo Deleting ${gdbtk_files}
81 keep_these_too="${keep_these_too} ${gdbtk_files}"
82 if [ -n "${verbose}" ] ; then
83 echo Keeping ${gdbtk_files}
87 # This is for newlib net releases.
88 newlib_file="COPYING.NEWLIB"
90 if (echo $* | grep keep\-newlib > /dev/null) ; then
91 if (echo $* | grep -v keep\-cygnus > /dev/null) ; then
92 keep_these_too="${keep_these_too} ${newlib_file}"
93 lose_these_too="`echo ${lose_these_too} | sed -e s/${newlib_file}//`"
96 true; # Let keep-cygnus handle it.
99 # IDK releases don't include files which only matter to CDK.
100 inet_files="COPYING.LIB config config-ml.in etc symlink-tree"
102 if (echo $* | grep keep\-inet > /dev/null); then
103 lose_these_too="${lose_these_too} ${inet_files}"
105 keep_these_too="${keep_these_too} ${inet_files}"
109 # This top-level directory is special. We often check out only subsets
110 # of this directory, and complaining about directories or files we didn't
111 # check out just gets obnoxious.
113 list="`(for i in ${keep_these_too}; do echo $i ; done) | sort -u`"
116 for file in $list ; do
117 if [ -r $file ] || [ -d $file ] ; then
118 keep_these_too="${keep_these_too} $file"
122 list="`(for i in ${lose_these_too}; do echo $i ; done) | sort -u` "
125 for file in $list ; do
126 if [ -r $file ] || [ -d $file ] ; then
127 lose_these_too="${lose_these_too} $file"
131 # All files listed between the "Things-to-keep:" line and the
132 # "Do-last:" line will be kept. All other files will be removed.
133 # Directories listed in this section will have their own Sanitize
134 # called. Directories not listed will be removed in their entirety
150 # The lines between the "Do-last:" line and the end of the file
151 # are executed as a /bin/sh shell script after everything else is
156 # Don't try to clean directories here, as the 'mv' command will fail.
157 # Also, grep fails on NFS mounted directories.
159 if ( echo $* | egrep verbose > /dev/null ) ; then
165 # Remove "sanitize-Sanitize" lines.
166 if [ -n "${verbose}" ] ; then
167 echo Cleaning unconditional sanitizations out of Makefile.in...
170 sed '/start\-sanitize\-Sanitize/,/end-\sanitize\-Sanitize/d' < Makefile.in > new
171 if [ -n "${safe}" -a ! -f .Recover/Makefile.in ] ; then
172 mv Makefile.in .Recover
176 if [ -n "${verbose}" ] ; then
177 echo Thawing away the \"chill\"...
180 if ( echo $* | grep keep\-chill > /dev/null ) ; then
182 if test ! -d $i && (grep sanitize-chill $i > /dev/null) ; then
183 if [ -n "${verbose}" ] ; then
184 echo Keeping chill stuff in $i
190 if test ! -d $i && (grep sanitize-chill $i > /dev/null) ; then
191 if [ -n "${verbose}" ] ; then
192 echo Thawing the \"chill\" out of $i...
195 sed '/start\-sanitize\-chill/,/end-\sanitize\-chill/d' < $i > new
196 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
197 if [ -n "${verbose}" ] ; then
198 echo Caching $i in .Recover...
207 if [ -n "${verbose}" ] ; then
208 echo Processing \"arc\"...
211 arc_files="config.sub configure.in config-ml.in"
213 if ( echo $* | grep keep\-arc > /dev/null ) ; then
214 for i in $arc_files ; do
215 if test ! -d $i && (grep sanitize-arc $i > /dev/null) ; then
216 if [ -n "${verbose}" ] ; then
217 echo Keeping arc stuff in $i
223 if test ! -d $i && (grep sanitize-arc $i > /dev/null) ; then
224 if [ -n "${verbose}" ] ; then
225 echo Removing traces of \"arc\" from $i...
228 sed '/start\-sanitize\-arc/,/end-\sanitize\-arc/d' < $i > new
229 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
230 if [ -n "${verbose}" ] ; then
231 echo Caching $i in .Recover...
240 if [ -n "${verbose}" ] ; then
241 echo Processing \"d10v\"...
244 d10v_files="ChangeLog config.sub configure.in"
246 if ( echo $* | grep keep\-d10v > /dev/null ) ; then
247 for i in $d10v_files ; do
248 if test ! -d $i && (grep sanitize-d10v $i > /dev/null) ; then
249 if [ -n "${verbose}" ] ; then
250 echo Keeping d10v stuff in $i
256 if test ! -d $i && (grep sanitize-d10v $i > /dev/null) ; then
257 if [ -n "${verbose}" ] ; then
258 echo Removing traces of \"d10v\" from $i...
261 sed '/start\-sanitize\-d10v/,/end-\sanitize\-d10v/d' < $i > new
262 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
263 if [ -n "${verbose}" ] ; then
264 echo Caching $i in .Recover...
273 rce_files="config.sub"
275 if ( echo $* | grep keep\-rce > /dev/null ) ; then
276 for i in $rce_files ; do
277 if test ! -d $i && (grep sanitize-rce $i > /dev/null) ; then
278 if [ -n "${verbose}" ] ; then
279 echo Keeping rce stuff in $i
284 for i in $rce_files ; do
285 if test ! -d $i && (grep sanitize-rce $i > /dev/null) ; then
286 if [ -n "${verbose}" ] ; then
287 echo Removing traces of \"rce\" from $i...
290 sed '/start\-sanitize\-rce/,/end-\sanitize\-rce/d' < $i > new
291 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
292 if [ -n "${verbose}" ] ; then
293 echo Caching $i in .Recover...
302 v850_files="ChangeLog config.sub configure.in"
304 if ( echo $* | grep keep\-v850 > /dev/null ) ; then
305 for i in $v850_files ; do
306 if test ! -d $i && (grep sanitize-v850 $i > /dev/null) ; then
307 if [ -n "${verbose}" ] ; then
308 echo Keeping v850 stuff in $i
314 if test ! -d $i && (grep sanitize-v850 $i > /dev/null) ; then
315 if [ -n "${verbose}" ] ; then
316 echo Removing traces of \"v850\" from $i...
319 sed '/start\-sanitize\-v850/,/end-\sanitize\-v850/d' < $i > new
320 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
321 if [ -n "${verbose}" ] ; then
322 echo Caching $i in .Recover...
331 if ( echo $* | grep lose\-gdbtk > /dev/null ) ; then
332 echo Catering to RMS by removing traces of \"gdbtk\"...
333 if [ -n "${verbose}" ] ; then
334 echo Removing traces of \"gdbtk\" from Makefile.in...
337 sed -e '/GDBTK_SUPPORT_DIRS=/d' -e 's/ $(GDBTK_SUPPORT_DIRS)//' < Makefile.in > new
338 if [ -n "${safe}" -a ! -f .Recover/Makefile.in ] ; then
339 if [ -n "${verbose}" ] ; then
340 echo Caching Makefile.in in .Recover...
342 mv Makefile.in .Recover
347 if ( echo $* | grep keep\-gm > /dev/null ) ; then
349 if test ! -d $i && (grep sanitize-gm $i > /dev/null) ; then
350 if [ -n "${verbose}" ] ; then
351 echo Keeping gm stuff in $i
357 if test ! -d $i && (grep sanitize-gm $i > /dev/null) ; then
358 if [ -n "${verbose}" ] ; then
359 echo Removing traces of \"gm\" from $i...
362 sed '/start\-sanitize\-gm/,/end-\sanitize\-gm/d' < $i > new
363 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
364 if [ -n "${verbose}" ] ; then
365 echo Caching $i in .Recover...
374 # Do this check LAST!
376 if test ! -d $i && (grep sanitize $i > /dev/null) ; then
377 echo '***' Some mentions of Sanitize are still left in $i! 1>&2