#!/bin/csh -f

# print julian day of year (for systems with braindamaged date)
# if -y is specified, add in year

if ($#argv) then
	if ($argv[1] == "-y") then
		set YEAR
		shift
	endif
endif

if ($#argv) then
	set DATE = ( $argv )
else
	set DATE = ( `date` )
endif

set MONS = ( Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec )

set DIM = (   31  28  31  30  31  30  31  31  30  31 30   31 )

@ JD = $DATE[3]
@ i = 1

while ( $i < 13 )
	if ($DATE[2] == $MONS[$i]) break
	@ JD = $JD + $DIM[$i]
	@ i++
end

@ YM4 = $DATE[6] - (($DATE[6] / 4) * 4)

if ($YM4 == 0 && $i > 2) @ JD++

# this should be close enough for government work ;-)
if ($?YEAR) then
	@ JD = $JD + $DATE[6] * 365
	@ JD = $JD + ( ( $DATE[6] - 1 ) / 4 )
endif

echo $JD
