home *** CD-ROM | disk | FTP | other *** search
/ Unix System Administration Handbook 1997 October / usah_oct97.iso / news / cnews.tar / conf / libcmp < prev    next >
Text File  |  1993-11-28  |  589b  |  38 lines

  1. #! /bin/sh
  2. # compare files to those in a library
  3. # -i means don't get upset about mismatches
  4. ignore=n
  5. while test " $1" = " -i"
  6. do
  7.     ignore=y
  8.     shift
  9. done
  10. case "$#" in
  11. 0|1)    echo "Usage: $0 [-i] library file ..." >&2 ; exit 2    ;;
  12. esac
  13.  
  14. lib="$1"
  15. shift
  16. if test ! -r "$lib"
  17. then
  18.     echo "$0: library \`$lib' does not exist or is unreadable" >&2
  19.     exit 1
  20. fi
  21.  
  22. status=0
  23. for f
  24. do
  25.     base="`echo $f | sed 's/\.o$//'`"
  26.     tmp=$base.t
  27.     save=$base.x
  28.     trap '' 1 2 15
  29.     mv $f $save
  30.     ar x $lib $f
  31.     mv $f $tmp
  32.     mv $save $f
  33.     cmp $f $tmp || test " $ignore" = " y" || status=1
  34.     rm -f $tmp
  35.     trap 1 2 15
  36. done
  37. exit $status
  38.