########################################################################
#
#  The compiler options are specified as follows for the different
#  programs and libraries:
#
#     DGEMMFLG : flags for DGEMM
#     DGBFLG   : flags for the Superscalar GEMM-based level 3 BLAS
#     AXOPT    : flags for other auxiliary routines
#
# IBM SP High Node, SMP, PP604, 112 MHz
FORTRAN    = xlf
DGEMMFLG   = -O2 -Q -qmaxmem=-1 -qarch=604 -qtune=604
DGBFLG     = -O3 -qstrict -Q -qmaxmem=-1 -qarch=604 -qtune=604
AXFLG      = -O3 -qstrict -Q -qmaxmem=-1 -qarch=604 -qtune=604
LOADER     = xlf
LOADOPT    =
ARCH       = ar
ARCHFLAGS  = cr
RANLIB     = echo
GBL3B      = libgbl3b.a
#
########################################################################

DGEMMS = dgemm.f

DGEMM =  dgemm.o

DGBS =	 dsymm.f dsyrk.f dsyr2k.f dtrmm.f dtrsm.f

DGB =	 dsymm.o dsyrk.o dsyr2k.o dtrmm.o dtrsm.o

AUXS =	 lsame.f xerbla.f

AUX =	 lsame.o xerbla.o

########################################################################
all:    $(DGEMM) $(GBL3B) dsgpm

$(GBL3B):       $(DGEMM) $(DGB) $(AUX)
	$(ARCH) $(ARCHFLAGS) $(GBL3B) $(DGEMM) $(DGB) $(AUX)
	$(RANLIB) $(GBL3B)

dsgpm:
	$(FORTRAN) $(AXFLG) -o dsgpm dsgpm.f

$(DGEMM):       $(DGEMMS)
	$(FORTRAN) -c $(DGEMMFLG) $(DGEMMS)

$(DGB):         $(DGBS)
	$(FORTRAN) -c $(DGBFLG) $(DGBS)

$(AUX):         $(AUXS)
	$(FORTRAN) -c $(AXFLG) $(AUXS)

clean:
	rm -f *.o dsgpm
