#####################################################################
#                                                                   #
# PARKBENCH Version 2.0                                             #
#                                                                   #
# November 10, 1995                                                 #
#                                                                   #
# University of Tennesee, Knoxville                                 #
# University of Southampton, United Kingdom                         #
#                                                                   #
#####################################################################
make.def =  ../../conf/make.def
include $(make.def)

SHELL	=	/bin/sh

default:	all



program=  PSTSWM
srcdir=	src
pstswm:	PSTSWM


###  Major targets for build  ###
all $(program):		$(XDIR) pvm  mpi 
pvm $(program)_pvm:	$(XDIR) $(program).pvm $(XDIR)/measurements $(XDIR)/problem $(XDIR)/algorithm.pvm
mpi $(program)_mpi:	$(XDIR) $(program).mpi $(XDIR)/measurements $(XDIR)/problem $(XDIR)/algorithm.mpi

###  	interface to the original makefiles  ###
$(XDIR):
	cd ../..; make conf

$(program).pvm:	$(srcdir)_pvm 
	@ echo "building in $(srcdir)_pvm"
	make -f makefile.pvm MACH=$(PSTSWM.MACH) \
		WORKSPACE=$(PSTSWM.WORKSPACE) \
		PRECISION=$(PSTSWM.PRECISION) \
		PVMLIB='$(NODELIBS)' \
		PVMINC='$(PVM_INCDIR)'
	@ echo "done building in $(srcdir)_pvm"

$(program).mpi:	$(srcdir)_mpi
	@ echo "building in $(srcdir)_mpi"
	make -f makefile.mpi MACH=$(PSTSWM.MACH) \
		COMM=$(PSTSWM.COMM) \
		WORKSPACE=$(PSTSWM.WORKSPACE) \
		PRECISION=$(PSTSWM.PRECISION) \
		MPILIB='$(MPI_LIBS)' \
		MPIINC='$(MPI_INCDIR)'
	@ echo "done building in $(srcdir)_mpi"

$(XDIR)/measurements:  	input/measurements
	- rm -f $(XDIR)/measurements
	- cp  input/measurements  $(XDIR)/measurements
$(XDIR)/problem:  	input/problem.small
	- rm -f $(XDIR)/problem
	- cp  input/problem.small  $(XDIR)/problem
$(XDIR)/algorithm.pvm:  	input_pvm/algorithm.1
	- rm -f $(XDIR)/algorithm.pvm
	- cp  input_pvm/algorithm.1  $(XDIR)/algorithm.pvm
$(XDIR)/algorithm.mpi:  	input_mpi/algorithm.1
	- rm -f $(XDIR)/algorithm.mpi
	- cp  input_mpi/algorithm.1  $(XDIR)/algorithm.mpi


###  Cleanup  ###
clean:
	- make -f makefile.pvm clean MACH=$(PSTSWM.MACH)
	- make -f makefile.mpi clean MACH=$(PSTSWM.MACH)
	- rm -f *~ *.o *.a core */*.f 

clobber: clean
	- rm -rf bin

