| 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 bash |
| 51 | bfd binutils byacc cvs deja-gnu dejagnu diff dosrel dvips emacs emacs19 |
| 52 | examples expect fileutils flex |
| 53 | gas gawk gcc gdb gdbm gdbtest glob gprof grep grez groff guile gzip |
| 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 tar textutils time |
| 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 mpw-install" |
| 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 | # IDK releases don't include files which only matter to CDK. |
| 100 | inet_files="COPYING.LIB config config-ml.in etc symlink-tree" |
| 101 | |
| 102 | if (echo $* | grep keep\-inet > /dev/null); then |
| 103 | lose_these_too="${lose_these_too} ${inet_files}" |
| 104 | else |
| 105 | keep_these_too="${keep_these_too} ${inet_files}" |
| 106 | fi |
| 107 | |
| 108 | |
| 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. |
| 112 | |
| 113 | list="`(for i in ${keep_these_too}; do echo $i ; done) | sort -u`" |
| 114 | keep_these_too= |
| 115 | |
| 116 | for file in $list ; do |
| 117 | if [ -r $file ] || [ -d $file ] ; then |
| 118 | keep_these_too="${keep_these_too} $file" |
| 119 | fi |
| 120 | done |
| 121 | |
| 122 | list="`(for i in ${lose_these_too}; do echo $i ; done) | sort -u` " |
| 123 | lose_these_too= |
| 124 | |
| 125 | for file in $list ; do |
| 126 | if [ -r $file ] || [ -d $file ] ; then |
| 127 | lose_these_too="${lose_these_too} $file" |
| 128 | fi |
| 129 | done |
| 130 | |
| 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 |
| 135 | # with rm -rf. |
| 136 | |
| 137 | Things-to-keep: |
| 138 | |
| 139 | COPYING |
| 140 | ChangeLog |
| 141 | Makefile.in |
| 142 | README |
| 143 | config.guess |
| 144 | config.sub |
| 145 | configure |
| 146 | configure.in |
| 147 | |
| 148 | Things-to-lose: |
| 149 | |
| 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 |
| 152 | # done. |
| 153 | |
| 154 | Do-last: |
| 155 | |
| 156 | # Don't try to clean directories here, as the 'mv' command will fail. |
| 157 | # Also, grep fails on NFS mounted directories. |
| 158 | |
| 159 | if ( echo $* | egrep verbose > /dev/null ) ; then |
| 160 | verbose=true |
| 161 | else |
| 162 | verbose= |
| 163 | fi |
| 164 | |
| 165 | # Remove "sanitize-Sanitize" lines. |
| 166 | if [ -n "${verbose}" ] ; then |
| 167 | echo Cleaning unconditional sanitizations out of Makefile.in... |
| 168 | fi |
| 169 | cp Makefile.in new |
| 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 |
| 173 | fi |
| 174 | mv new Makefile.in |
| 175 | |
| 176 | if [ -n "${verbose}" ] ; then |
| 177 | echo Thawing away the \"chill\"... |
| 178 | fi |
| 179 | |
| 180 | if ( echo $* | grep keep\-chill > /dev/null ) ; then |
| 181 | for i in * ; do |
| 182 | if test ! -d $i && (grep sanitize-chill $i > /dev/null) ; then |
| 183 | if [ -n "${verbose}" ] ; then |
| 184 | echo Keeping chill stuff in $i |
| 185 | fi |
| 186 | fi |
| 187 | done |
| 188 | else |
| 189 | for i in * ; do |
| 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... |
| 193 | fi |
| 194 | cp $i new |
| 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... |
| 199 | fi |
| 200 | mv $i .Recover |
| 201 | fi |
| 202 | mv new $i |
| 203 | fi |
| 204 | done |
| 205 | fi |
| 206 | |
| 207 | if [ -n "${verbose}" ] ; then |
| 208 | echo Processing \"arc\"... |
| 209 | fi |
| 210 | |
| 211 | arc_files="config.sub configure.in config-ml.in" |
| 212 | |
| 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 |
| 218 | fi |
| 219 | fi |
| 220 | done |
| 221 | else |
| 222 | for i in * ; do |
| 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... |
| 226 | fi |
| 227 | cp $i new |
| 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... |
| 232 | fi |
| 233 | mv $i .Recover |
| 234 | fi |
| 235 | mv new $i |
| 236 | fi |
| 237 | done |
| 238 | fi |
| 239 | |
| 240 | if [ -n "${verbose}" ] ; then |
| 241 | echo Processing \"d10v\"... |
| 242 | fi |
| 243 | |
| 244 | d10v_files="ChangeLog config.sub configure.in" |
| 245 | |
| 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 |
| 251 | fi |
| 252 | fi |
| 253 | done |
| 254 | else |
| 255 | for i in * ; do |
| 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... |
| 259 | fi |
| 260 | cp $i new |
| 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... |
| 265 | fi |
| 266 | mv $i .Recover |
| 267 | fi |
| 268 | mv new $i |
| 269 | fi |
| 270 | done |
| 271 | fi |
| 272 | |
| 273 | if [ -n "${verbose}" ] ; then |
| 274 | echo Processing \"m32r\"... |
| 275 | fi |
| 276 | |
| 277 | m32r_files="config.sub configure.in ChangeLog" |
| 278 | |
| 279 | if ( echo $* | grep keep\-m32r > /dev/null ) ; then |
| 280 | for i in $m32r_files ; do |
| 281 | if test ! -d $i && (grep sanitize-m32r $i > /dev/null) ; then |
| 282 | if [ -n "${verbose}" ] ; then |
| 283 | echo Keeping m32r stuff in $i |
| 284 | fi |
| 285 | fi |
| 286 | done |
| 287 | else |
| 288 | for i in * ; do |
| 289 | if test ! -d $i && (grep sanitize-m32r $i > /dev/null) ; then |
| 290 | if [ -n "${verbose}" ] ; then |
| 291 | echo Removing traces of \"m32r\" from $i... |
| 292 | fi |
| 293 | cp $i new |
| 294 | sed '/start\-sanitize\-m32r/,/end-\sanitize\-m32r/d' < $i > new |
| 295 | if [ -n "${safe}" -a ! -f .Recover/$i ] ; then |
| 296 | if [ -n "${verbose}" ] ; then |
| 297 | echo Caching $i in .Recover... |
| 298 | fi |
| 299 | mv $i .Recover |
| 300 | fi |
| 301 | mv new $i |
| 302 | fi |
| 303 | done |
| 304 | fi |
| 305 | |
| 306 | rce_files="config.sub" |
| 307 | |
| 308 | if ( echo $* | grep keep\-rce > /dev/null ) ; then |
| 309 | for i in $rce_files ; do |
| 310 | if test ! -d $i && (grep sanitize-rce $i > /dev/null) ; then |
| 311 | if [ -n "${verbose}" ] ; then |
| 312 | echo Keeping rce stuff in $i |
| 313 | fi |
| 314 | fi |
| 315 | done |
| 316 | else |
| 317 | for i in $rce_files ; do |
| 318 | if test ! -d $i && (grep sanitize-rce $i > /dev/null) ; then |
| 319 | if [ -n "${verbose}" ] ; then |
| 320 | echo Removing traces of \"rce\" from $i... |
| 321 | fi |
| 322 | cp $i new |
| 323 | sed '/start\-sanitize\-rce/,/end-\sanitize\-rce/d' < $i > new |
| 324 | if [ -n "${safe}" -a ! -f .Recover/$i ] ; then |
| 325 | if [ -n "${verbose}" ] ; then |
| 326 | echo Caching $i in .Recover... |
| 327 | fi |
| 328 | mv $i .Recover |
| 329 | fi |
| 330 | mv new $i |
| 331 | fi |
| 332 | done |
| 333 | fi |
| 334 | |
| 335 | v850_files="ChangeLog config.sub configure.in" |
| 336 | |
| 337 | if ( echo $* | grep keep\-v850 > /dev/null ) ; then |
| 338 | for i in $v850_files ; do |
| 339 | if test ! -d $i && (grep sanitize-v850 $i > /dev/null) ; then |
| 340 | if [ -n "${verbose}" ] ; then |
| 341 | echo Keeping v850 stuff in $i |
| 342 | fi |
| 343 | fi |
| 344 | done |
| 345 | else |
| 346 | for i in * ; do |
| 347 | if test ! -d $i && (grep sanitize-v850 $i > /dev/null) ; then |
| 348 | if [ -n "${verbose}" ] ; then |
| 349 | echo Removing traces of \"v850\" from $i... |
| 350 | fi |
| 351 | cp $i new |
| 352 | sed '/start\-sanitize\-v850/,/end-\sanitize\-v850/d' < $i > new |
| 353 | if [ -n "${safe}" -a ! -f .Recover/$i ] ; then |
| 354 | if [ -n "${verbose}" ] ; then |
| 355 | echo Caching $i in .Recover... |
| 356 | fi |
| 357 | mv $i .Recover |
| 358 | fi |
| 359 | mv new $i |
| 360 | fi |
| 361 | done |
| 362 | fi |
| 363 | |
| 364 | if ( echo $* | grep lose\-gdbtk > /dev/null ) ; then |
| 365 | echo Catering to RMS by removing traces of \"gdbtk\"... |
| 366 | if [ -n "${verbose}" ] ; then |
| 367 | echo Removing traces of \"gdbtk\" from Makefile.in... |
| 368 | fi |
| 369 | cp Makefile.in new |
| 370 | sed -e '/GDBTK_SUPPORT_DIRS=/d' -e 's/ $(GDBTK_SUPPORT_DIRS)//' < Makefile.in > new |
| 371 | if [ -n "${safe}" -a ! -f .Recover/Makefile.in ] ; then |
| 372 | if [ -n "${verbose}" ] ; then |
| 373 | echo Caching Makefile.in in .Recover... |
| 374 | fi |
| 375 | mv Makefile.in .Recover |
| 376 | fi |
| 377 | mv new Makefile.in |
| 378 | fi |
| 379 | |
| 380 | if ( echo $* | grep keep\-gm > /dev/null ) ; then |
| 381 | for i in * ; do |
| 382 | if test ! -d $i && (grep sanitize-gm $i > /dev/null) ; then |
| 383 | if [ -n "${verbose}" ] ; then |
| 384 | echo Keeping gm stuff in $i |
| 385 | fi |
| 386 | fi |
| 387 | done |
| 388 | else |
| 389 | for i in * ; do |
| 390 | if test ! -d $i && (grep sanitize-gm $i > /dev/null) ; then |
| 391 | if [ -n "${verbose}" ] ; then |
| 392 | echo Removing traces of \"gm\" from $i... |
| 393 | fi |
| 394 | cp $i new |
| 395 | sed '/start\-sanitize\-gm/,/end-\sanitize\-gm/d' < $i > new |
| 396 | if [ -n "${safe}" -a ! -f .Recover/$i ] ; then |
| 397 | if [ -n "${verbose}" ] ; then |
| 398 | echo Caching $i in .Recover... |
| 399 | fi |
| 400 | mv $i .Recover |
| 401 | fi |
| 402 | mv new $i |
| 403 | fi |
| 404 | done |
| 405 | fi |
| 406 | |
| 407 | # Do this check LAST! |
| 408 | for i in * ; do |
| 409 | if test ! -d $i && (grep sanitize $i > /dev/null) ; then |
| 410 | echo '***' Some mentions of Sanitize are still left in $i! 1>&2 |
| 411 | exit 1 |
| 412 | fi |
| 413 | done |
| 414 | |
| 415 | # eof |