#! /bin/csh -fe
#
#	bumprev <version> <revname> <dependencies>
#
if ($#argv < 2) then
    echo "Usage: $0 <version> <revname> [<dependencies>]"
    exit 1
endif

set rawdate=(`date`)
switch ($rawdate[2]) 
    case Jan*:
	set month=1
	breaksw
    case Feb*:
	set month=2
	breaksw
    case Mar*:
	set month=3
	breaksw
    case Apr*:
	set month=4
	breaksw
    case May*:
	set month=5
	breaksw
    case Jun*:
	set month=6
	breaksw
    case Jul*:
	set month=7
	breaksw
    case Aug*:
	set month=8
	breaksw
    case Sep*:
	set month=9
	breaksw
    case Oct*:
	set month=10
	breaksw
    case Nov*:
	set month=11
	breaksw
    case Dec*:
	set month=12
	breaksw
    default:
	echo "Unknown month: $rawddate[2]"
	exit 1
endsw

set revision=0
if (-f $2.rev) then
    set revision=`cat $2.rev`
    if ($#argv > 2) then
	set truebump=(`find $argv[3-] ! -name "*_rev.*" -newer $2.rev -print`)
    else
	set truebump=()
    endif
    if (($#truebump == 0) && (-e $2.h) && (-e $2.i)) then
	echo "bumprev: did not bump $2 from rev $revision -- already up to date"
	exit 0
    endif
endif

rm -rf $2.h $2.i
@ revision++

echo $revision > $2.rev

set date="$rawdate[3].$month.`echo $rawdate[6] | sed -e 's/^..//'`"
set subsys=`basename $2 _rev`
set vers="$subsys $1.$revision"
set tag="$vers ($date)"

echo   "VERSION		EQU	$1"		>> $2.i
echo   "REVISION	EQU	$revision"	>> $2.i
echo   "DATE	MACRO" 				>> $2.i
echo   "		dc.b	'$date'" 	>> $2.i
echo   "	ENDM" 				>> $2.i
echo   "VERS	MACRO" 				>> $2.i
echo   "		dc.b	'$vers'"	>> $2.i
echo   "	ENDM" 				>> $2.i
echo   "VSTRING	MACRO" 				>> $2.i
echo   "		dc.b	'$tag',13,10,0" >> $2.i
echo   "		ds.w	0" 		>> $2.i
echo   "	ENDM" 				>> $2.i
echo   "VERTAG	MACRO" 				>> $2.i
echo   "		dc.b	0,'"'$VER: '"$tag',0" >> $2.i
echo   "		ds.w	0" 		>> $2.i
echo   "	ENDM" 				>> $2.i

echo   "#define	VERSION		$1"		>> $2.h
echo   "#define	REVISION	$revision"	>> $2.h
echo   '#define	DATE	"'"$date"'"'		>> $2.h
echo   '#define	VERS	"'"$vers"'"'		>> $2.h
echo   '#define	VSTRING	"'"$tag\n\r"'"'		>> $2.h
echo   '#define	VERTAG	"\0$VER: '"$tag"'"'	>> $2.h
echo "bumprev: bumped $2 to rev $revision"

exit 0
set dates=(`cal $month $yearstring`)
set lastdate=$dates[$#dates]
if ($nextdate > $lastdate) then
    set newtape=1
else
    @ newtape = $tape + 1
endif

echo "" >>/tmp/dump$$a
echo next in sequence: tape $newtape >>/tmp/dump$$a

mail -s "dailydump tape $tape, $daystring $monthstring $date $yearstring" \
	$tapeguy </tmp/dump$$a

rm -f /tmp/dump$$?
