#!/bin/csh -f
#
# update-lu - make sure all .data files are up to date
#
set usage='usage: update-lu [luconfigdir] ...'
#
# Part of
#              The STARFISH Parallel file-system simulator
#        (Simulation Tool for Advanced Research in File Systems)
# 
#                               David Kotz
#                           Dartmouth College
#                              Version 3.0
#                              October 1996
#                          dfk@cs.dartmouth.edu

source environset

if ($#argv == 0) then
	set dirs=(luconfigs/*)
else
	set dirs=($*)
endif

onintr cleanup

foreach dir ($dirs)
    if (! -d $dir/results) continue

    set makefile=$dir/results/Makefile
    echo > $makefile

    set datalist=$dir/results/datalist
    echo -n all:  > $datalist

    # try to make a list of *sim* in $dir/results
    set files=(`ls $dir/results | grep 'sim'`)
    if ($#files == 0) continue

    foreach f ($files)
	set file=$dir/results/$f
	# set "data" to be data file name
	if ($file:e == gz || $file:e == Z || $file:e == z) then
		set temp = $file:r
		set data = $temp:r.data
	else
		set data = $file:r.data
	endif

	echo "$data : $file" >> $makefile
	echo "	extract-one-lu $file $data" >> $makefile
	echo "" >> $makefile

    	echo -n " "$data >> $datalist
    end	
    echo "" >> $datalist
    cat $datalist >> $makefile

    echo data for $dir
    make -k -f $makefile all
    echo ""
    rm -f $makefile $datalist

end

cleanup:
if ($?makefile) rm -f $makefile
if ($?datalist) rm -f $datalist
