Vikram S. Adve | 355df3f | 2002-02-11 20:59:26 +0000 | [diff] [blame] | 1 | #!/bin/csh -f -c |
| 2 | # |
| 3 | # This script updates the entire tree, saves the output in cvs.out, |
| 4 | # and then separately prints out the files that had merge conflicts, |
| 5 | # those that were merged successfully, and those that are new. |
| 6 | # Note that this script uses "cvs update -P -d". |
| 7 | # |
| 8 | # USAGE: |
| 9 | # cvsupdate ## normal run |
| 10 | # cvsupdate -n ## run grep commands on output of the last run of cvs |
| 11 | # cvsupdate -h ## usage information |
| 12 | # |
| 13 | |
| 14 | set pstatus = 0 |
| 15 | onintr cleanup |
| 16 | alias usage 'echo "USAGE: $0:t [-h][-n]"; set pstatus = 1; goto cleanup' |
| 17 | |
| 18 | set doit = 1 |
| 19 | unset options_done |
| 20 | while ( !( $?options_done ) && ($#argv > 0)) |
| 21 | switch ($argv[1]) |
| 22 | case -h : |
| 23 | usage |
| 24 | case -n : |
| 25 | set doit = 0; shift argv; breaksw |
| 26 | default : |
| 27 | set options_done; breaksw |
| 28 | endsw |
| 29 | end |
| 30 | |
| 31 | if ($doit == 1) then |
| 32 | /bin/mv -f cvs.out cvs.out.bak |
| 33 | cvs update -P -d >& cvs.out |
| 34 | else |
| 35 | echo ""; echo "Not updating files."; echo "" |
| 36 | endif |
| 37 | |
Chris Lattner | 868cb7d | 2002-04-29 19:11:01 +0000 | [diff] [blame] | 38 | echo ""; echo " FILES UPDATED:" |
| 39 | grep '^U' cvs.out |
| 40 | |
| 41 | echo ""; echo " UPDATE CONFLICTS OCCURRED FOR THE FOLLOWING FILES:" |
Vikram S. Adve | 355df3f | 2002-02-11 20:59:26 +0000 | [diff] [blame] | 42 | grep '^C' cvs.out |
| 43 | |
Chris Lattner | 868cb7d | 2002-04-29 19:11:01 +0000 | [diff] [blame] | 44 | echo ""; echo " FILES SUCCESSFULLY MERGED (or locally modified):" |
Vikram S. Adve | 355df3f | 2002-02-11 20:59:26 +0000 | [diff] [blame] | 45 | grep '^M' cvs.out | grep -v Merging |
| 46 | |
| 47 | echo ""; echo " NEW FILES AND DIRECTORIES:" |
Chris Lattner | 868cb7d | 2002-04-29 19:11:01 +0000 | [diff] [blame] | 48 | grep '^\?' cvs.out | & grep -v '\.bc' | grep -v Updating | grep -v cvsup | grep -v 'cvs.out' | grep -v gnumake.out | grep -v '\.mc$' | grep -v '\.s$' | grep -v '\.native' |
Vikram S. Adve | 355df3f | 2002-02-11 20:59:26 +0000 | [diff] [blame] | 49 | |
| 50 | echo "" |
| 51 | |
| 52 | |
| 53 | #========================================================= |
| 54 | # CODE TO BE EXECUTED IF INTERRUPT IS RECEIVED |
| 55 | #========================================================= |
| 56 | cleanup: |
| 57 | exit($pstatus) |