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