File: Makefile

package info (click to toggle)
lapack 3.12.1-7
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 78,912 kB
  • sloc: fortran: 622,840; ansic: 217,704; f90: 6,041; makefile: 5,100; sh: 326; python: 270; xml: 182
file content (112 lines) | stat: -rw-r--r-- 3,400 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
#
# The Makefile compiles c wrappers and testers for CBLAS.
#

TOPSRCDIR = ../..
include $(TOPSRCDIR)/make.inc

.SUFFIXES: .c .o
.c.o:
	$(CC) $(CFLAGS) -I../include -c -o $@ $<

# Archive files necessary to compile
LIB = $(CBLASLIB) $(BLASLIB)

# Object files for single precision real
stestl1o = c_sblas1.o
stestl2o = c_sblas2.o c_s2chke.o auxiliary.o c_xerbla.o
stestl3o = c_sblas3.o c_s3chke.o auxiliary.o c_xerbla.o

# Object files for double precision real
dtestl1o = c_dblas1.o
dtestl2o = c_dblas2.o c_d2chke.o auxiliary.o c_xerbla.o
dtestl3o = c_dblas3.o c_d3chke.o auxiliary.o c_xerbla.o

# Object files for single precision complex
ctestl1o = c_cblas1.o
ctestl2o = c_cblas2.o c_c2chke.o auxiliary.o c_xerbla.o
ctestl3o = c_cblas3.o c_c3chke.o auxiliary.o c_xerbla.o

# Object files for double precision complex
ztestl1o = c_zblas1.o
ztestl2o = c_zblas2.o c_z2chke.o auxiliary.o c_xerbla.o
ztestl3o = c_zblas3.o c_z3chke.o auxiliary.o c_xerbla.o

.PHONY: all all1 all2 all3
all: all1 all2 all3
all1: xscblat1 xdcblat1 xccblat1 xzcblat1
all2: xscblat2 xdcblat2 xccblat2 xzcblat2
all3: xscblat3 xdcblat3 xccblat3 xzcblat3

#
# Compile each precision
#

# Single real
xscblat1: c_sblat1.o $(stestl1o) $(LIB)
	$(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
xscblat2: c_sblat2.o $(stestl2o) $(LIB)
	$(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
xscblat3: c_sblat3.o $(stestl3o) $(LIB)
	$(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
# Double real
xdcblat1: c_dblat1.o $(dtestl1o) $(LIB)
	$(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
xdcblat2: c_dblat2.o $(dtestl2o) $(LIB)
	$(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
xdcblat3: c_dblat3.o $(dtestl3o) $(LIB)
	$(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^

# Single complex
xccblat1: c_cblat1.o $(ctestl1o) $(LIB)
	$(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
xccblat2: c_cblat2.o $(ctestl2o) $(LIB)
	$(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
xccblat3: c_cblat3.o $(ctestl3o) $(LIB)
	$(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^

# Double complex
xzcblat1: c_zblat1.o $(ztestl1o) $(LIB)
	$(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
xzcblat2: c_zblat2.o $(ztestl2o) $(LIB)
	$(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^
xzcblat3: c_zblat3.o $(ztestl3o) $(LIB)
	$(FC) $(FFLAGS) $(LDFLAGS) -o $@ $^


# RUN TESTS
.PHONY: run
run: all
	@echo "--> TESTING CBLAS 1 - SINGLE PRECISION REAL <--"
	@./xscblat1 > stest1.out
	@echo "--> TESTING CBLAS 1 - DOUBLE PRECISION REAL <--"
	@./xdcblat1 > dtest1.out
	@echo "--> TESTING CBLAS 1 - SINGLE PRECISION COMPLEX <--"
	@./xccblat1 > ctest1.out
	@echo "--> TESTING CBLAS 1 - DOUBLE PRECISION COMPLEX <--"
	@./xzcblat1 > ztest1.out
	@echo "--> TESTING CBLAS 2 - SINGLE PRECISION REAL <--"
	@./xscblat2 < sin2 > stest2.out
	@echo "--> TESTING CBLAS 2 - DOUBLE PRECISION REAL <--"
	@./xdcblat2 < din2 > dtest2.out
	@echo "--> TESTING CBLAS 2 - SINGLE PRECISION COMPLEX <--"
	@./xccblat2 < cin2 > ctest2.out
	@echo "--> TESTING CBLAS 2 - DOUBLE PRECISION COMPLEX <--"
	@./xzcblat2 < zin2 > ztest2.out
	@echo "--> TESTING CBLAS 3 - SINGLE PRECISION REAL <--"
	@./xscblat3 < sin3 > stest3.out
	@echo "--> TESTING CBLAS 3 - DOUBLE PRECISION REAL <--"
	@./xdcblat3 < din3 > dtest3.out
	@echo "--> TESTING CBLAS 3 - SINGLE PRECISION COMPLEX <--"
	@./xccblat3 < cin3 > ctest3.out
	@echo "--> TESTING CBLAS 3 - DOUBLE PRECISION COMPLEX <--"
	@./xzcblat3 < zin3 > ztest3.out

.PHONY: clean cleanobj cleanexe cleantest
clean: cleanobj cleanexe cleantest
cleanobj:
	rm -f *.o
cleanexe:
	rm -f x*
cleantest:
	rm -f *.out core