|
|
|
@@ -1,7 +1,13 @@ |
|
|
|
# This Makefile compiles the CBLAS routines |
|
|
|
|
|
|
|
include ../../make.inc |
|
|
|
TOPSRCDIR = ../.. |
|
|
|
include $(TOPSRCDIR)/make.inc |
|
|
|
|
|
|
|
.SUFFIXES: .c .o |
|
|
|
.c.o: |
|
|
|
$(CC) $(CFLAGS) -I../include -c -o $@ $< |
|
|
|
|
|
|
|
.PHONY: all |
|
|
|
all: $(CBLASLIB) |
|
|
|
|
|
|
|
# Error handling routines for level 2 & 3 |
|
|
|
@@ -43,24 +49,25 @@ zlev1 = cblas_zswap.o cblas_zscal.o cblas_zdscal.o cblas_zcopy.o \ |
|
|
|
# Common files for level 1 single precision |
|
|
|
sclev1 = cblas_scasum.o scasumsub.o cblas_scnrm2.o scnrm2sub.o |
|
|
|
|
|
|
|
.PHONY: slib1 dlib1 clib1 zlib1 |
|
|
|
# Single precision real |
|
|
|
slib1: $(slev1) $(sclev1) |
|
|
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $^ |
|
|
|
$(AR) $(ARFLAGS) $(CBLASLIB) $^ |
|
|
|
$(RANLIB) $(CBLASLIB) |
|
|
|
|
|
|
|
# Double precision real |
|
|
|
dlib1: $(dlev1) |
|
|
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $^ |
|
|
|
$(AR) $(ARFLAGS) $(CBLASLIB) $^ |
|
|
|
$(RANLIB) $(CBLASLIB) |
|
|
|
|
|
|
|
# Single precision complex |
|
|
|
clib1: $(clev1) $(sclev1) |
|
|
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $^ |
|
|
|
$(AR) $(ARFLAGS) $(CBLASLIB) $^ |
|
|
|
$(RANLIB) $(CBLASLIB) |
|
|
|
|
|
|
|
# Double precision complex |
|
|
|
zlib1: $(zlev1) |
|
|
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $^ |
|
|
|
$(AR) $(ARFLAGS) $(CBLASLIB) $^ |
|
|
|
$(RANLIB) $(CBLASLIB) |
|
|
|
|
|
|
|
# |
|
|
|
@@ -95,24 +102,25 @@ zlev2 = cblas_zgemv.o cblas_zgbmv.o cblas_zhemv.o cblas_zhbmv.o cblas_zhpmv.o \ |
|
|
|
cblas_ztpsv.o cblas_zgeru.o cblas_zgerc.o cblas_zher.o cblas_zher2.o \ |
|
|
|
cblas_zhpr.o cblas_zhpr2.o |
|
|
|
|
|
|
|
.PHONY: slib2 dlib2 clib2 zlib2 |
|
|
|
# Single precision real |
|
|
|
slib2: $(slev2) $(errhand) |
|
|
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $^ |
|
|
|
$(AR) $(ARFLAGS) $(CBLASLIB) $^ |
|
|
|
$(RANLIB) $(CBLASLIB) |
|
|
|
|
|
|
|
# Double precision real |
|
|
|
dlib2: $(dlev2) $(errhand) |
|
|
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $^ |
|
|
|
$(AR) $(ARFLAGS) $(CBLASLIB) $^ |
|
|
|
$(RANLIB) $(CBLASLIB) |
|
|
|
|
|
|
|
# Single precision complex |
|
|
|
clib2: $(clev2) $(errhand) |
|
|
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $^ |
|
|
|
$(AR) $(ARFLAGS) $(CBLASLIB) $^ |
|
|
|
$(RANLIB) $(CBLASLIB) |
|
|
|
|
|
|
|
# Double precision complex |
|
|
|
zlib2: $(zlev2) $(errhand) |
|
|
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $^ |
|
|
|
$(AR) $(ARFLAGS) $(CBLASLIB) $^ |
|
|
|
$(RANLIB) $(CBLASLIB) |
|
|
|
|
|
|
|
# |
|
|
|
@@ -141,24 +149,25 @@ zlev3 = cblas_zgemm.o cblas_zsymm.o cblas_zhemm.o cblas_zherk.o \ |
|
|
|
cblas_zher2k.o cblas_ztrmm.o cblas_ztrsm.o cblas_zsyrk.o \ |
|
|
|
cblas_zsyr2k.o |
|
|
|
|
|
|
|
.PHONY: slib3 dlib3 clib3 zlib3 |
|
|
|
# Single precision real |
|
|
|
slib3: $(slev3) $(errhand) |
|
|
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $^ |
|
|
|
$(AR) $(ARFLAGS) $(CBLASLIB) $^ |
|
|
|
$(RANLIB) $(CBLASLIB) |
|
|
|
|
|
|
|
# Double precision real |
|
|
|
dlib3: $(dlev3) $(errhand) |
|
|
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $^ |
|
|
|
$(AR) $(ARFLAGS) $(CBLASLIB) $^ |
|
|
|
$(RANLIB) $(CBLASLIB) |
|
|
|
|
|
|
|
# Single precision complex |
|
|
|
clib3: $(clev3) $(errhand) |
|
|
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $^ |
|
|
|
$(AR) $(ARFLAGS) $(CBLASLIB) $^ |
|
|
|
$(RANLIB) $(CBLASLIB) |
|
|
|
|
|
|
|
# Double precision complex |
|
|
|
zlib3: $(zlev3) $(errhand) |
|
|
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $^ |
|
|
|
$(AR) $(ARFLAGS) $(CBLASLIB) $^ |
|
|
|
$(RANLIB) $(CBLASLIB) |
|
|
|
|
|
|
|
|
|
|
|
@@ -166,36 +175,33 @@ alev1 = $(slev1) $(dlev1) $(clev1) $(zlev1) $(sclev1) |
|
|
|
alev2 = $(slev2) $(dlev2) $(clev2) $(zlev2) |
|
|
|
alev3 = $(slev3) $(dlev3) $(clev3) $(zlev3) |
|
|
|
|
|
|
|
.PHONY: all1 all2 all3 |
|
|
|
# All level 1 |
|
|
|
all1: $(alev1) |
|
|
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $^ |
|
|
|
$(AR) $(ARFLAGS) $(CBLASLIB) $^ |
|
|
|
$(RANLIB) $(CBLASLIB) |
|
|
|
|
|
|
|
# All level 2 |
|
|
|
all2: $(alev2) $(errhand) |
|
|
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $^ |
|
|
|
$(AR) $(ARFLAGS) $(CBLASLIB) $^ |
|
|
|
$(RANLIB) $(CBLASLIB) |
|
|
|
|
|
|
|
# All level 3 |
|
|
|
all3: $(alev3) $(errhand) |
|
|
|
$(ARCH) $(ARCHFLAGS) $(CBLASLIB) $^ |
|
|
|
$(AR) $(ARFLAGS) $(CBLASLIB) $^ |
|
|
|
$(RANLIB) $(CBLASLIB) |
|
|
|
|
|
|
|
# All levels and precisions |
|
|
|
$(CBLASLIB): $(alev1) $(alev2) $(alev3) $(errhand) |
|
|
|
$(ARCH) $(ARCHFLAGS) $@ $^ |
|
|
|
$(AR) $(ARFLAGS) $@ $^ |
|
|
|
$(RANLIB) $@ |
|
|
|
|
|
|
|
FRC: |
|
|
|
@FRC=$(FRC) |
|
|
|
|
|
|
|
.PHONY: clean cleanobj cleanlib |
|
|
|
clean: cleanobj cleanlib |
|
|
|
cleanobj: |
|
|
|
rm -f *.o |
|
|
|
cleanlib: |
|
|
|
rm -f $(CBLASLIB) |
|
|
|
|
|
|
|
.c.o: |
|
|
|
$(CC) $(CFLAGS) -I../include -c -o $@ $< |
|
|
|
.f.o: |
|
|
|
$(FORTRAN) $(OPTS) -c -o $@ $< |