#  $Id: Makefile,v 1.10 2002/05/02 02:12:03 tatebe Exp $

FC	= f77
#FC	= f90		#  Digital and Solaris
#FC	= ompf77	#  Omni OpenMP Compiler
#FC	= guidef77	#  KAI guide
#FC	= assuref77 -project_name=mgcg	#  KAI assure

F77	= $(FC)

#MPFLAGS = -mp		#  For O2K
#MPFLAGS = -omp		#  For Digital
#MPFLAGS = -openmp	#  For Solaris

#STATFLAGS = -WGstats	#  For Guideview
#STATFLAGS = -WGperview	#  For Perview

OPTFLAGS = -u -C -g -O	#  For debug
#OPTFLAGS = -Ofast	#  For O2K
#OPTFLAGS = -fast -O3	#  For Digital
#OPTFLAGS = -fast -xO5	#  For Solaris

RANLIB	= ranlib
#RANLIB	= touch

#LIBS = -lffio		#  For O2K
#LIBS = -lsunperf	#  For Sun

DIST = mgcg_sr

#
#  You should not modify the following part.
#

FFLAGS	= $(MPFLAGS) $(OPTFLAGS)

MGCGLIB	= -lmgcg
LDFLAGS	= $(MPFLAGS) $(STATFLAGS) $(OPTFLAGS) -L.

OBJ	 = mgcg_s.o assert_s.o mg_s.o res1_s.o rb_s.o rest_s.o prog_s.o
SMPL_OBJ = main_s.o setup_prob_s.o setup_prob3_s.o

LIBRARY = libmgcg.a

PROGRAM	= mgcg

all: $(PROGRAM)

$(LIBRARY): $(OBJ)
	$(AR) rcv $(LIBRARY) $(OBJ)
	$(RANLIB) $(LIBRARY)

#$(PROGRAM): $(LIBRARY) $(SMPL_OBJ)
#	$(FC) $(LDFLAGS) -o $(PROGRAM) $(SMPL_OBJ) $(MGCGLIB) $(LIBS)

$(PROGRAM): $(OBJ) $(SMPL_OBJ)
	$(FC) $(LDFLAGS) -o $(PROGRAM) $(SMPL_OBJ) $(OBJ) $(LIBS)

dist: veryclean
	rm -rf $(DIST).tar $(DIST).tar.gz $(DIST)
	mkdir $(DIST)
	mv README ChangeLog Makefile *.f *.h $(DIST)
	tar cf $(DIST).tar $(DIST)
	gzip $(DIST).tar
	mv $(DIST)/* .
	rmdir $(DIST)

clean:
	rm -f *.o *~
	rm -rf rii_files

veryclean: clean
	rm -f $(LIBRARY)
	rm -f $(PROGRAM)

#
mgcg_s.o: paraf.h
mg_s.o: paraf.h
rb_s.o: paraf.h
res1_s.o: paraf.h
