Try even harder to draw attention to the comments about files that aren't
[binutils-gdb.git] / .Sanitize
1 ########################
2 #
3 # H H EEEEEE Y Y !!
4 # H H E Y Y !!
5 # H H E Y Y !!
6 # H H E Y !!
7 # HHHHHH EEEEE Y !!
8 # H H E Y !!
9 # H H E Y !!
10 # H H E Y
11 # H H EEEEEE Y !!
12 #
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.
20 #
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.
25 ########################
26
27 # .Sanitize for devo.
28
29 # Each directory to survive its way into a release will need a file
30 # like this one called "./.Sanitize". All keyword lines must exist,
31 # and must exist in the order specified by this file. Each directory
32 # in the tree will be processed, top down, in the following order.
33
34 # Hash started lines like this one are comments and will be deleted
35 # before anything else is done. Blank lines will also be squashed
36 # out.
37
38 # The lines between the "Do-first:" line and the "Things-to-keep:"
39 # line are executed as a /bin/sh shell script before anything else is
40 # done in this directory.
41
42 Do-first:
43
44 keep_these_too="${keep_these_too} .cvsignore CYGNUS autoconf
45 bfd binutils byacc cvs deja-gnu dejagnu diff dosrel dvips emacs emacs19
46 examples expect fileutils flex gas gcc gdb gdbm gdbtest glob gprof grep
47 groff include install.sh ispell ld libg++ libgcc libgloss libiberty
48 libio librx libstdc++ m4 make mmalloc move-if-change newlib opcodes
49 pagas patch prms rcs readline sed send-pr shellutils sim tcl textutils
50 tk texinfo tgas utils uudecode wdiff xiberty
51 configure.bat makeall.bat
52 mpw-README mpw-configure mpw-config.in mpw-build.in"
53
54 lose_these_too="${lose_these_too} testsuite"
55
56 cygnus_files="release release-info build-all.mk test-build.mk COPYING.NEWLIB"
57
58 if ( echo $* | grep keep\-cygnus > /dev/null) ; then
59 keep_these_too="${keep_these_too} ${cygnus_files}"
60 else
61 lose_these_too="${lose_these_too} ${cygnus_files}"
62 fi
63
64 gdbtk_files="tcl tk"
65
66 if ( echo $* | grep lose\-gdbtk > /dev/null) ; then
67 lose_these_too="${lose_these_too} ${gdbtk_files}"
68 if [ -n "${verbose}" ] ; then
69 echo Deleting ${gdbtk_files}
70 fi
71 else
72 keep_these_too="${keep_these_too} ${gdbtk_files}"
73 if [ -n "${verbose}" ] ; then
74 echo Keeping ${gdbtk_files}
75 fi
76 fi
77
78 # This is for newlib net releases.
79 newlib_files="COPYING.NEWLIB"
80
81 if ( echo $* | grep keep\-newlib > /dev/null) ; then
82 keep_these_too="${keep_these_too} ${newlib_files}"
83 else
84 lose_these_too="${lose_these_too} ${newlib_files}"
85 fi
86
87 # This top-level directory is special. We often check out only subsets
88 # of this directory, and complaining about directories or files we didn't
89 # check out just gets obnoxious.
90
91 list="`(for i in ${keep_these_too}; do echo $i ; done) | sort -u`"
92 keep_these_too=
93
94 for file in $list ; do
95 if [ -r $file ] || [ -d $file ] ; then
96 keep_these_too="${keep_these_too} $file"
97 fi
98 done
99
100 list="`(for i in ${lose_these_too}; do echo $i ; done) | sort -u` "
101 lose_these_too=
102
103 for file in $list ; do
104 if [ -r $file ] || [ -d $file ] ; then
105 lose_these_too="${lose_these_too} $file"
106 fi
107 done
108
109 # All files listed between the "Things-to-keep:" line and the
110 # "Do-last:" line will be kept. All other files will be removed.
111 # Directories listed in this section will have their own Sanitize
112 # called. Directories not listed will be removed in their entirety
113 # with rm -rf.
114
115 Things-to-keep:
116
117 COPYING
118 COPYING.LIB
119 ChangeLog
120 Makefile.in
121 README
122 config
123 cfg-ml-com.in
124 cfg-ml-pos.in
125 config.guess
126 config.sub
127 configure
128 configure.in
129 etc
130
131 Things-to-lose:
132
133 # The lines between the "Do-last:" line and the end of the file
134 # are executed as a /bin/sh shell script after everything else is
135 # done.
136
137 Do-last:
138
139 # Don't try to clean directories here, as the 'mv' command will fail.
140 # Also, grep fails on NFS mounted directories.
141
142 if ( echo $* | egrep verbose > /dev/null ) ; then
143 verbose=true
144 else
145 verbose=
146 fi
147
148 # Remove "sanitize-Sanitize" lines.
149 if [ -n "${verbose}" ] ; then
150 echo Cleaning unconditional sanitizations out of Makefile.in...
151 fi
152 cp Makefile.in new
153 sed '/start\-sanitize\-Sanitize/,/end-\sanitize\-Sanitize/d' < Makefile.in > new
154 if [ -n "${safe}" -a ! -f .Recover/Makefile.in ] ; then
155 mv Makefile.in .Recover
156 fi
157 mv new Makefile.in
158
159 if [ -n "${verbose}" ] ; then
160 echo Thawing away the \"chill\"...
161 fi
162
163 if ( echo $* | grep keep\-chill > /dev/null ) ; then
164 for i in * ; do
165 if test ! -d $i && (grep sanitize-chill $i > /dev/null) ; then
166 if [ -n "${verbose}" ] ; then
167 echo Keeping chill stuff in $i
168 fi
169 fi
170 done
171 else
172 for i in * ; do
173 if test ! -d $i && (grep sanitize-chill $i > /dev/null) ; then
174 if [ -n "${verbose}" ] ; then
175 echo Thawing the \"chill\" out of $i...
176 fi
177 cp $i new
178 sed '/start\-sanitize\-chill/,/end-\sanitize\-chill/d' < $i > new
179 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
180 if [ -n "${verbose}" ] ; then
181 echo Caching $i in .Recover...
182 fi
183 mv $i .Recover
184 fi
185 mv new $i
186 fi
187 done
188 fi
189
190 if [ -n "${verbose}" ] ; then
191 echo Processing \"arc\"...
192 fi
193
194 arc_files="config.sub configure.in cfg-ml-com.in"
195
196 if ( echo $* | grep keep\-arc > /dev/null ) ; then
197 for i in $arc_files ; do
198 if test ! -d $i && (grep sanitize-arc $i > /dev/null) ; then
199 if [ -n "${verbose}" ] ; then
200 echo Keeping arc stuff in $i
201 fi
202 fi
203 done
204 else
205 for i in * ; do
206 if test ! -d $i && (grep sanitize-arc $i > /dev/null) ; then
207 if [ -n "${verbose}" ] ; then
208 echo Removing traces of \"arc\" from $i...
209 fi
210 cp $i new
211 sed '/start\-sanitize\-arc/,/end-\sanitize\-arc/d' < $i > new
212 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
213 if [ -n "${verbose}" ] ; then
214 echo Caching $i in .Recover...
215 fi
216 mv $i .Recover
217 fi
218 mv new $i
219 fi
220 done
221 fi
222
223 psion_files="config.sub configure.in"
224
225 if ( echo $* | grep keep\-psion > /dev/null ) ; then
226 for i in $psion_files; do
227 if test ! -d $i && (grep sanitize-psion $i > /dev/null) ; then
228 if [ -n "${verbose}" ] ; then
229 echo Keeping psion stuff in $i
230 fi
231 fi
232 done
233 else
234 for i in * ; do
235 if test ! -d $i && (grep sanitize-psion $i > /dev/null) ; then
236 if [ -n "${verbose}" ] ; then
237 echo Removing traces of \"psion\" from $i...
238 fi
239 cp $i new
240 sed '/start\-sanitize\-psion/,/end-\sanitize\-psion/d' < $i > new
241 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
242 if [ -n "${verbose}" ] ; then
243 echo Caching $i in .Recover...
244 fi
245 mv $i .Recover
246 fi
247 mv new $i
248 fi
249 done
250 fi
251
252 rce_files="config.sub"
253
254 if ( echo $* | grep keep\-rce > /dev/null ) ; then
255 for i in $rce_files ; do
256 if test ! -d $i && (grep sanitize-rce $i > /dev/null) ; then
257 if [ -n "${verbose}" ] ; then
258 echo Keeping rce stuff in $i
259 fi
260 fi
261 done
262 else
263 for i in $rce_files ; do
264 if test ! -d $i && (grep sanitize-rce $i > /dev/null) ; then
265 if [ -n "${verbose}" ] ; then
266 echo Removing traces of \"rce\" from $i...
267 fi
268 cp $i new
269 sed '/start\-sanitize\-rce/,/end-\sanitize\-rce/d' < $i > new
270 if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
271 if [ -n "${verbose}" ] ; then
272 echo Caching $i in .Recover...
273 fi
274 mv $i .Recover
275 fi
276 mv new $i
277 fi
278 done
279 fi
280
281 for i in * ; do
282 if test ! -d $i && (grep sanitize $i > /dev/null) ; then
283 echo '***' Some mentions of Sanitize are still left in $i! 1>&2
284 fi
285 done
286
287 # eof