# General Makefile for the  OpenMP EuroBen Benchmark V1.0 (C-version).
#

SHELL   = /bin/sh

PROGRAMS = mod1a  mod1b  mod1f mod2a mod2as mod2am mod2b \
           mod2ci mod2cr mod2f mod2g mod2h mod2i 

state:
	@for prog in ${PROGRAMS} ;\
	do echo 'Moving state.c to' $${prog} ;\
	   cp ./basics/state.c $${prog} ;\
	done

make:
	@for prog in ${PROGRAMS} ;\
	do echo 'Making Makefile for' $${prog} ;\
	  ./install/MakeHeader $${prog} ;\
	  cat $${prog}/Makeframe >> $${prog}/Makefile ;\
	done

makeall:
	@for prog in ${PROGRAMS} ; \
	do echo ; \
	   (cd $${prog}; make) ; \
	done

runall:
	@for prog in ${PROGRAMS} ;\
	do ./xrun $${prog} ;\
	done

collect:
	@if  test ! -d Log.`hostname` ;\
	then mkdir Log.`hostname` ;\
	fi
	@for prog in ${PROGRAMS} ; \
	do if test -f $${prog}/$${prog}.log ;\
	   then echo Moving $${prog}.log to Log.`hostname` ;\
	        /bin/mv -f $${prog}/$${prog}.log Log.`hostname` ;\
	   fi ;\
	done

clean:
	@for prog in ${PROGRAMS} ; \
	do echo ; \
	   (cd $${prog}; make clean) ; \
	done

veryclean:
	@for prog in ${PROGRAMS} ; \
	do echo ; \
	   (cd $${prog}; make veryclean) ; \
	done

rmmake:
	@for prog in ${PROGRAMS} ;\
	do /bin/rm -f $${prog}/Makefile ;\
	   echo 'Makefile for' $${prog} 'removed' ;\
	done
