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 gcc gdb gdbm gdbtest glob gprof grep grez groff guile
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 textutils
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"
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 if ( echo $* | grep lose\-gdbtk > /dev/null ) ; then
303 echo Catering to RMS by removing traces of \"gdbtk\"...
304 if [ -n "${verbose}" ] ; then
305 echo Removing traces of \"gdbtk\" from Makefile.in...
308 sed -e '/GDBTK_SUPPORT_DIRS=/d' -e 's/ $(GDBTK_SUPPORT_DIRS)//' < Makefile.in > new
309 if [ -n "${safe}" -a ! -f .Recover/Makefile.in ] ; then
310 if [ -n "${verbose}" ] ; then
311 echo Caching Makefile.in in .Recover...
313 mv Makefile.in .Recover
318 if ( echo $* | grep keep\-gm > /dev/null ) ; then
320 if test ! -d $i && (grep sanitize-gm $i > /dev/null) ; then
321 if [ -n "${verbose}" ] ; then
322 echo Keeping gm stuff in $i
328 if test ! -d $i && (grep sanitize-gm $i > /dev/null) ; then
329 if [ -n "${verbose}" ] ; then
330 echo Removing traces of \"gm\" from $i...
333 sed '/start\-sanitize\-gm/,/end-\sanitize\-gm/d' < $i > new
334 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
335 if [ -n "${verbose}" ] ; then
336 echo Caching $i in .Recover...
345 # Do this check LAST!
347 if test ! -d $i && (grep sanitize $i > /dev/null) ; then
348 echo '***' Some mentions of Sanitize are still left in $i! 1>&2