* configure.in (mips*-sgi-irix6*): Set noconfigdirs appropriately.
[platform/upstream/binutils.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 # 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
28 # the modules file.
29 #
30 ########################
31
32 # .Sanitize for devo.
33
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.
38
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
41 # out.
42
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.
46
47 Do-first:
48
49 keep_these_too="${keep_these_too} .cvsignore CYGNUS autoconf
50         apache
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
57         pagas patch perl prms
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"
62
63 lose_these_too="${lose_these_too} testsuite"
64
65 cygnus_files="release release-info build-all.mk test-build.mk COPYING.NEWLIB"
66
67 if ( echo $* | grep keep\-cygnus > /dev/null) ; then
68         keep_these_too="${keep_these_too} ${cygnus_files}"
69 else
70         lose_these_too="${lose_these_too} ${cygnus_files}"
71 fi
72
73 gdbtk_files="tcl tk"
74
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}
79         fi
80 else
81         keep_these_too="${keep_these_too} ${gdbtk_files}"
82         if [ -n "${verbose}" ] ; then
83                 echo Keeping ${gdbtk_files}
84         fi
85 fi
86
87 # This is for newlib net releases.
88 newlib_file="COPYING.NEWLIB"
89
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}//`"
94         fi
95 else
96         true; # Let keep-cygnus handle it.
97 fi
98
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.
102
103 list="`(for i in ${keep_these_too}; do echo $i ; done) | sort -u`"
104 keep_these_too=
105
106 for file in $list ; do
107         if [ -r $file ] || [ -d $file ] ; then
108                 keep_these_too="${keep_these_too} $file"
109         fi
110 done
111
112 list="`(for i in ${lose_these_too}; do echo $i ; done) | sort -u` "
113 lose_these_too=
114
115 for file in $list ; do
116         if [ -r $file ] || [ -d $file ] ; then
117                 lose_these_too="${lose_these_too} $file"
118         fi
119 done
120
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
125 # with rm -rf.
126
127 Things-to-keep:
128
129 COPYING
130 COPYING.LIB
131 ChangeLog
132 Makefile.in
133 README
134 config
135 config-ml.in
136 config.guess
137 config.sub
138 configure
139 configure.in
140 etc
141 symlink-tree
142
143 Things-to-lose:
144
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
147 # done.
148
149 Do-last:
150
151 # Don't try to clean directories here, as the 'mv' command will fail.
152 # Also, grep fails on NFS mounted directories.
153
154 if ( echo $* | egrep verbose > /dev/null ) ; then
155         verbose=true
156 else
157         verbose=
158 fi
159
160 # Remove "sanitize-Sanitize" lines.
161 if [ -n "${verbose}" ] ; then
162         echo Cleaning unconditional sanitizations out of Makefile.in...
163 fi
164 cp Makefile.in new
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
168 fi
169 mv new Makefile.in
170
171 if [ -n "${verbose}" ] ; then
172         echo Thawing away the \"chill\"...
173 fi
174
175 if ( echo $* | grep keep\-chill > /dev/null ) ; then
176         for i in * ; do
177                 if test ! -d $i && (grep sanitize-chill $i > /dev/null) ; then
178                         if [ -n "${verbose}" ] ; then
179                                 echo Keeping chill stuff in $i
180                         fi
181                 fi
182         done
183 else
184         for i in * ; do
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...
188                         fi
189                         cp $i new
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...
194                                 fi
195                                 mv $i .Recover
196                         fi
197                         mv new $i
198                 fi
199         done
200 fi
201
202 if [ -n "${verbose}" ] ; then
203         echo Processing \"arc\"...
204 fi
205
206 arc_files="config.sub configure.in config-ml.in"
207
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
213                         fi
214                 fi
215         done
216 else
217         for i in * ; do
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...
221                         fi
222                         cp $i new
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...
227                                 fi
228                                 mv $i .Recover
229                         fi
230                         mv new $i
231                 fi
232         done
233 fi
234
235 if ( echo $* | grep lose\-gdbtk > /dev/null ) ; then
236         echo Catering to RMS by removing traces of \"gdbtk\"...
237         if [ -n "${verbose}" ] ; then
238                 echo Removing traces of \"gdbtk\" from Makefile.in...
239         fi
240         cp Makefile.in new
241         sed -e '/GDBTK_SUPPORT_DIRS=/d' -e 's/ $(GDBTK_SUPPORT_DIRS)//' < Makefile.in > new
242         if [ -n "${safe}" -a ! -f .Recover/Makefile.in ] ; then
243                 if [ -n "${verbose}" ] ; then
244                         echo Caching Makefile.in in .Recover...
245                 fi
246                 mv Makefile.in .Recover
247         fi
248         mv new Makefile.in
249 fi
250
251 if ( echo $* | grep keep\-gm > /dev/null ) ; then
252         for i in * ; do
253                 if test ! -d $i && (grep sanitize-gm $i > /dev/null) ; then
254                         if [ -n "${verbose}" ] ; then
255                                 echo Keeping gm stuff in $i
256                         fi
257                 fi
258         done
259 else
260         for i in * ; do
261                 if test ! -d $i && (grep sanitize-gm $i > /dev/null) ; then
262                         if [ -n "${verbose}" ] ; then
263                                 echo Removing traces of \"gm\" from $i...
264                         fi
265                         cp $i new
266                         sed '/start\-sanitize\-gm/,/end-\sanitize\-gm/d' < $i > new
267                         if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
268                                 if [ -n "${verbose}" ] ; then
269                                         echo Caching $i in .Recover...
270                                 fi
271                                 mv $i .Recover
272                         fi
273                         mv new $i
274                 fi
275         done
276 fi
277
278 # Do this check LAST!
279 for i in * ; do
280         if test ! -d $i && (grep sanitize $i > /dev/null) ; then
281                 echo '***' Some mentions of Sanitize are still left in $i! 1>&2
282                 exit 1
283         fi
284 done
285
286 # eof