1############################################################################ 2# 3# Program: PBLAS -- (version 2.0) 4# 5# Module: Makefile 6# 7# Purpose: PTZBLAS source Makefile 8# 9# Creation date: April 1, 1998 10# 11# Modified: 12# 13# Send bug reports, comments or suggestions to scalapack@cs.utk.edu 14# 15############################################################################ 16 17include ../../../SLmake.inc 18 19############################################################################ 20# 21# This is the makefile to create a library for the PBTZBLAS tools. 22# The files are grouped as follows: 23# 24# ALLPBTZ -- Auxiliary routines for Level 1, 2 and 3 PBLAS 25# 26# SPBTZ -- Single precision real PBLAS Level F77 tools routines 27# CPBTZ -- Single precision complex PBLAS Level F77 tools routines 28# DPBTZ -- Double precision real PBLAS Level F77 tools routines 29# ZPBTZ -- Double precision complex PBLAS Level F77 tools routines 30# 31# The library can be set up to include routines for any combination 32# of the four precisions. First, modify the ../../../SLmake.inc file 33# definitions to match your compiler and the options to be used. 34# Then to create or add to the library, enter make followed by one or 35# more of the precisions desired. Some examples: 36# make single 37# make single complex 38# make single double complex complex16 39# Alternatively, the command 40# make 41# without any arguments creates a library of all four precisions. 42# The library is called 43# pblas_$(PLAT).a 44# (see ../../../SLmake.inc for the definition of $(PLAT)). 45# 46# To remove the object files after the library is created, enter 47# make clean 48# 49############################################################################ 50 51all: single double complex complex16 52 53APBTZ = \ 54 pxerbla.o 55 56IPBTZ = \ 57 immadd.o immdda.o immtadd.o immddat.o 58 59SPBTZ = \ 60 svasum.o sset.o scshft.o srshft.o \ 61 svvdot.o smmadd.o smmcadd.o smmtadd.o \ 62 smmtcadd.o smmdda.o smmddac.o smmddat.o \ 63 smmddact.o stzpad.o stzpadcpy.o stzscal.o \ 64 sagemv.o sasymv.o satrmv.o 65 66SCPBTZ = \ 67 sasqrtb.o sascal.o 68 69CPBTZ = \ 70 scvasum.o cset.o ccshft.o crshft.o \ 71 cvvdotu.o cvvdotc.o cmmadd.o cmmcadd.o \ 72 cmmtadd.o cmmtcadd.o cmmdda.o cmmddac.o \ 73 cmmddat.o cmmddact.o ctzpad.o ctzpadcpy.o \ 74 chescal.o ctzscal.o ctzcnjg.o cagemv.o \ 75 cahemv.o catrmv.o casymv.o csymv.o \ 76 csyr.o csyr2.o 77 78DPBTZ = \ 79 dvasum.o dset.o dcshft.o drshft.o \ 80 dvvdot.o dmmadd.o dmmcadd.o dmmtadd.o \ 81 dmmtcadd.o dmmdda.o dmmddac.o dmmddat.o \ 82 dmmddact.o dtzpad.o dtzpadcpy.o dtzscal.o \ 83 dagemv.o dasymv.o datrmv.o 84 85DZPBTZ = \ 86 dasqrtb.o dascal.o 87 88ZPBTZ = \ 89 dzvasum.o zset.o zcshft.o zrshft.o \ 90 zvvdotu.o zvvdotc.o zmmadd.o zmmcadd.o \ 91 zmmtadd.o zmmtcadd.o zmmdda.o zmmddac.o \ 92 zmmddat.o zmmddact.o ztzpad.o ztzpadcpy.o \ 93 zhescal.o ztzscal.o ztzcnjg.o zagemv.o \ 94 zahemv.o zatrmv.o zasymv.o zsymv.o \ 95 zsyr.o zsyr2.o 96 97#--------------------------------------------------------------------------- 98 99single: $(APBTZ) $(IPBTZ) $(SPBTZ) $(SCPBTZ) 100 $(ARCH) $(ARCHFLAGS) ../../../$(SCALAPACKLIB) $(APBTZ) $(IPBTZ) $(SPBTZ) $(SCPBTZ) 101 $(RANLIB) ../../../$(SCALAPACKLIB) 102 103complex: $(APBTZ) $(IPBTZ) $(CPBTZ) $(SCPBTZ) 104 $(ARCH) $(ARCHFLAGS) ../../../$(SCALAPACKLIB) $(APBTZ) $(IPBTZ) $(CPBTZ) $(SCPBTZ) 105 $(RANLIB) ../../../$(SCALAPACKLIB) 106 107double: $(APBTZ) $(IPBTZ) $(DPBTZ) $(DZPBTZ) 108 $(ARCH) $(ARCHFLAGS) ../../../$(SCALAPACKLIB) $(APBTZ) $(IPBTZ) $(DPBTZ) $(DZPBTZ) 109 $(RANLIB) ../../../$(SCALAPACKLIB) 110 111complex16: $(APBTZ) $(IPBTZ) $(ZPBTZ) $(DZPBTZ) 112 $(ARCH) $(ARCHFLAGS) ../../../$(SCALAPACKLIB) $(APBTZ) $(IPBTZ) $(ZPBTZ) $(DZPBTZ) 113 $(RANLIB) ../../../$(SCALAPACKLIB) 114 115#--------------------------------------------------------------------------- 116 117clean: 118 rm -f *.o 119 120.f.o : ; $(FC) -c $(FCFLAGS) $*.f 121.c.o : ; $(CC) -c $(CDEFS) $(CCFLAGS) $*.c 122