# FORTRAN MAKEFILE (DEBUGGING) : 

INCDIR  = -I$(PVM_ROOT)/include
FFLAGS  = -g

LIBDIR  = -L$(PVM_ROOT)/lib/$(PVM_ARCH)
SHELL   = /bin/bash
XDIR    = $(PVM_ROOT)/bin/$(PVM_ARCH)/

#
# ----------------- COMPILERS ------------------- #
#

#LINUX  INTEL (Portland Group Comp)
#CC      = gcc
#F90     = pgf90
#PVMLIBS = -lfpvm3 -lpvm3

#LINUX  INTEL (Intel Comp)
 CC      = gcc 
 F90	 = ifort 
 PVMLIBS = -lfpvm3 -lpvm3

#LINUXALPHA
#CC	 = gcc
#F90     = fort
#PVMLIBS = -lfpvm3 -lpvm3

#X86S0L2
#CC      = pgcc 
#F90     = pgf90
#PVMLIBS = -lfpvm3 -lpvm3 -lsocket -lnsl

#
# ----------------- SOURCE FILES ------------------ #
#
# Workbench source codes:
WBSORS   =      dir.f90 \
                stopwatch.f90 \
                envarf.f90 \
                wrap_pvm.f90 \
                envarc.c \
                fbuff.c \
                getcompname.c \
                communicate.f90 
# 
# ----------------- OBJECT FILES ---------------- #
#
# Workbench object codes:
WBOBJS   =      dir.o \
                stopwatch.o \
                envarf.o \
                envarc.o \
                wrap_pvm.o \
                fbuff.o \
                getcompname.o \
                communicate.o

#
# ----------------- EXECUTABLE FILES ------------- #
#

all: $(WBOBJS)

#
# ------- Workbench utility compile ----------------- #
#
dir.o       : dir.f90
	$(F90) $(FFLAGS) $(INCDIR) -c dir.f90
stopwatch.o : stopwatch.f90
	$(F90) $(FFLAGS) $(INCDIR) -c stopwatch.f90
envarf.o    : envarf.f90
	$(F90) $(FFLAGS) $(INCDIR) -c envarf.f90
wrap_pvm.o  : wrap_pvm.f90
	$(F90) $(FFLAGS) $(INCDIR) -c wrap_pvm.f90
envarc.o    : envarc.c
	$(CC) -c envarc.c
fbuff.o     : fbuff.c
	$(CC) -c fbuff.c
getcompname.o : getcompname.c
	$(CC) -c getcompname.c
communicate.o : communicate.f90
	$(F90) $(FFLAGS) $(INCDIR) -c communicate.f90


clean: 
	rm -f *.o *.d *.mod *.pcl *.pc

rebuild: clean
	make all
