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 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 # This top-level directory is special. We often check out only subsets
100 # of this directory, and complaining about directories or files we didn't
101 # check out just gets obnoxious.
103 list="`(for i in ${keep_these_too}; do echo $i ; done) | sort -u`"
106 for file in $list ; do
107 if [ -r $file ] || [ -d $file ] ; then
108 keep_these_too="${keep_these_too} $file"
112 list="`(for i in ${lose_these_too}; do echo $i ; done) | sort -u` "
115 for file in $list ; do
116 if [ -r $file ] || [ -d $file ] ; then
117 lose_these_too="${lose_these_too} $file"
121 # All files listed between the "Things-to-keep:" line and the
122 # "Do-last:" line will be kept. All other files will be removed.
123 # Directories listed in this section will have their own Sanitize
124 # called. Directories not listed will be removed in their entirety
145 # The lines between the "Do-last:" line and the end of the file
146 # are executed as a /bin/sh shell script after everything else is
151 # Don't try to clean directories here, as the 'mv' command will fail.
152 # Also, grep fails on NFS mounted directories.
154 if ( echo $* | egrep verbose > /dev/null ) ; then
160 # Remove "sanitize-Sanitize" lines.
161 if [ -n "${verbose}" ] ; then
162 echo Cleaning unconditional sanitizations out of Makefile.in...
165 sed '/start\-sanitize\-Sanitize/,/end-\sanitize\-Sanitize/d' < Makefile.in > new
166 if [ -n "${safe}" -a ! -f .Recover/Makefile.in ] ; then
167 mv Makefile.in .Recover
171 if [ -n "${verbose}" ] ; then
172 echo Thawing away the \"chill\"...
175 if ( echo $* | grep keep\-chill > /dev/null ) ; then
177 if test ! -d $i && (grep sanitize-chill $i > /dev/null) ; then
178 if [ -n "${verbose}" ] ; then
179 echo Keeping chill stuff in $i
185 if test ! -d $i && (grep sanitize-chill $i > /dev/null) ; then
186 if [ -n "${verbose}" ] ; then
187 echo Thawing the \"chill\" out of $i...
190 sed '/start\-sanitize\-chill/,/end-\sanitize\-chill/d' < $i > new
191 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
192 if [ -n "${verbose}" ] ; then
193 echo Caching $i in .Recover...
202 if [ -n "${verbose}" ] ; then
203 echo Processing \"arc\"...
206 arc_files="config.sub configure.in config-ml.in"
208 if ( echo $* | grep keep\-arc > /dev/null ) ; then
209 for i in $arc_files ; do
210 if test ! -d $i && (grep sanitize-arc $i > /dev/null) ; then
211 if [ -n "${verbose}" ] ; then
212 echo Keeping arc stuff in $i
218 if test ! -d $i && (grep sanitize-arc $i > /dev/null) ; then
219 if [ -n "${verbose}" ] ; then
220 echo Removing traces of \"arc\" from $i...
223 sed '/start\-sanitize\-arc/,/end-\sanitize\-arc/d' < $i > new
224 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
225 if [ -n "${verbose}" ] ; then
226 echo Caching $i in .Recover...
235 rce_files="config.sub"
237 if ( echo $* | grep keep\-rce > /dev/null ) ; then
238 for i in $rce_files ; do
239 if test ! -d $i && (grep sanitize-rce $i > /dev/null) ; then
240 if [ -n "${verbose}" ] ; then
241 echo Keeping rce stuff in $i
246 for i in $rce_files ; do
247 if test ! -d $i && (grep sanitize-rce $i > /dev/null) ; then
248 if [ -n "${verbose}" ] ; then
249 echo Removing traces of \"rce\" from $i...
252 sed '/start\-sanitize\-rce/,/end-\sanitize\-rce/d' < $i > new
253 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
254 if [ -n "${verbose}" ] ; then
255 echo Caching $i in .Recover...
264 if ( echo $* | grep lose\-gdbtk > /dev/null ) ; then
265 echo Catering to RMS by removing traces of \"gdbtk\"...
266 if [ -n "${verbose}" ] ; then
267 echo Removing traces of \"gdbtk\" from Makefile.in...
270 sed -e '/GDBTK_SUPPORT_DIRS=/d' -e 's/ $(GDBTK_SUPPORT_DIRS)//' < Makefile.in > new
271 if [ -n "${safe}" -a ! -f .Recover/Makefile.in ] ; then
272 if [ -n "${verbose}" ] ; then
273 echo Caching Makefile.in in .Recover...
275 mv Makefile.in .Recover
280 if ( echo $* | grep keep\-gm > /dev/null ) ; then
282 if test ! -d $i && (grep sanitize-gm $i > /dev/null) ; then
283 if [ -n "${verbose}" ] ; then
284 echo Keeping gm stuff in $i
290 if test ! -d $i && (grep sanitize-gm $i > /dev/null) ; then
291 if [ -n "${verbose}" ] ; then
292 echo Removing traces of \"gm\" from $i...
295 sed '/start\-sanitize\-gm/,/end-\sanitize\-gm/d' < $i > new
296 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
297 if [ -n "${verbose}" ] ; then
298 echo Caching $i in .Recover...
307 # Do this check LAST!
309 if test ! -d $i && (grep sanitize $i > /dev/null) ; then
310 echo '***' Some mentions of Sanitize are still left in $i! 1>&2