1#!/bin/sh 2 3PATH=/bin:/usr/bin:/usr/ccs/bin 4export PATH 5 6case "$1" in 7 --dirs ) 8 shift 9 signature="$1" 10 shift 11 if test "$signature" = "workshop-Debug"; then 12 find "$@" -name SunWS_cache -prune -o \ 13 \( -type f -size +64 ! -name '*.o' -print \) | xargs rm -f 14 else 15 rm -rf "$@" 16 fi 17 ;; 18 19 --post-mortem ) 20 shift 21 signature="$1" 22 shift 23 find "$@" -name 'make_*.log' | sed -e 's,/make_[^/]*\.log$,,' | \ 24 while read d; do 25 for d2 in . `sort -u $d/.*.dirs 2>/dev/null`; do 26 test -f $d/$d2/ls-Al && continue 27 listing=`ls -Al $d/$d2` 28 test "$signature" = "workshop-Debug" || \ 29 symbols=`nm $d/$d2/*.o 2>/dev/null` 30 for x in $d/$d2/*; do 31 test -d "$x" && continue 32 case "$x" in 33 *.o ) 34 test "$signature" = "workshop-Debug" || \ 35 rm -f "$x" 36 ;; 37 *.[0-9] | *.*cgi | *.a | *.dylib | *.so ) 38 rm -f "$x" 39 ;; 40 $d/$d2/*.* | */Makefile | */ls-Al | */symbols ) 41 ;; 42 * ) 43 rm -f "$x" 44 ;; 45 esac 46 done 47 echo "$listing" > $d/$d2/ls-Al 48 test -z "$symbols" || \ 49 echo "$symbols" | gzip > $d/$d2/symbols.gz 50 done 51 done 52 ;; 53 54 --bin ) 55 top_srcdir=$2 56 bindir=$3 57 dbindir=$bindir/.DEATH-ROW 58 apps_to_drop=$top_srcdir/scripts/internal/projects/apps_to_drop 59 60 if [ -f "$apps_to_drop" ]; then 61 while read app; do 62 test -f "$bindir/$app" || continue 63 mkdir -p "$dbindir" && \ 64 echo "mv .../bin/$app .../bin/.DEATH-ROW" && \ 65 mv "$bindir/$app" "$dbindir" 66 done < "$apps_to_drop" 67 fi 68 ;; 69 70 --lib ) 71 top_srcdir=$2 72 libdir=$3 73 status_dir=$4 74 dlibdir=$libdir/.DEATH-ROW 75 libs_to_drop=$top_srcdir/scripts/internal/projects/libs_to_drop 76 if [ -f "$libs_to_drop" ]; then 77 while read lib; do 78 test -f "$status_dir/.$lib.dep" || continue 79 mkdir -p "$dlibdir" && \ 80 echo "mv .../lib/lib$lib.* .../lib/.DEATH-ROW" && \ 81 mv "$libdir/lib$lib.*" "$dlibdir" 82 test -f "$status_dir/.$lib-static.dep" || continue 83 mv $libdir/lib$lib-static.* "$dlibdir" 84 done < "$libs_to_drop" 85 fi 86 ;; 87 88 * ) 89 echo "$0: unknown mode $1" 90 exit 1 91 ;; 92esac 93