root / src / blas / Makefile @ 11
Historique | Voir | Annoter | Télécharger (5,63 ko)
1 | 1 | pfleura2 | include make.inc |
---|---|---|---|
2 | 1 | pfleura2 | |
3 | 1 | pfleura2 | ####################################################################### |
4 | 1 | pfleura2 | # This is the makefile to create a library for the BLAS. |
5 | 1 | pfleura2 | # The files are grouped as follows: |
6 | 1 | pfleura2 | # |
7 | 1 | pfleura2 | # SBLAS1 -- Single precision real BLAS routines |
8 | 1 | pfleura2 | # CBLAS1 -- Single precision complex BLAS routines |
9 | 1 | pfleura2 | # DBLAS1 -- Double precision real BLAS routines |
10 | 1 | pfleura2 | # ZBLAS1 -- Double precision complex BLAS routines |
11 | 1 | pfleura2 | # |
12 | 1 | pfleura2 | # CB1AUX -- Real BLAS routines called by complex routines |
13 | 1 | pfleura2 | # ZB1AUX -- D.P. real BLAS routines called by d.p. complex |
14 | 1 | pfleura2 | # routines |
15 | 1 | pfleura2 | # |
16 | 1 | pfleura2 | # ALLBLAS -- Auxiliary routines for Level 2 and 3 BLAS |
17 | 1 | pfleura2 | # |
18 | 1 | pfleura2 | # SBLAS2 -- Single precision real BLAS2 routines |
19 | 1 | pfleura2 | # CBLAS2 -- Single precision complex BLAS2 routines |
20 | 1 | pfleura2 | # DBLAS2 -- Double precision real BLAS2 routines |
21 | 1 | pfleura2 | # ZBLAS2 -- Double precision complex BLAS2 routines |
22 | 1 | pfleura2 | # |
23 | 1 | pfleura2 | # SBLAS3 -- Single precision real BLAS3 routines |
24 | 1 | pfleura2 | # CBLAS3 -- Single precision complex BLAS3 routines |
25 | 1 | pfleura2 | # DBLAS3 -- Double precision real BLAS3 routines |
26 | 1 | pfleura2 | # ZBLAS3 -- Double precision complex BLAS3 routines |
27 | 1 | pfleura2 | # |
28 | 1 | pfleura2 | # The library can be set up to include routines for any combination |
29 | 1 | pfleura2 | # of the four precisions. To create or add to the library, enter make |
30 | 1 | pfleura2 | # followed by one or more of the precisions desired. Some examples: |
31 | 1 | pfleura2 | # make single |
32 | 1 | pfleura2 | # make single complex |
33 | 1 | pfleura2 | # make single double complex complex16 |
34 | 1 | pfleura2 | # Note that these commands are not safe for parallel builds. |
35 | 1 | pfleura2 | # |
36 | 1 | pfleura2 | # Alternatively, the commands |
37 | 1 | pfleura2 | # make all |
38 | 1 | pfleura2 | # or |
39 | 1 | pfleura2 | # make |
40 | 1 | pfleura2 | # without any arguments creates a library of all four precisions. |
41 | 1 | pfleura2 | # The name of the library is held in BLASLIB, which is set in the |
42 | 1 | pfleura2 | # make.inc |
43 | 1 | pfleura2 | # |
44 | 1 | pfleura2 | # To remove the object files after the library is created, enter |
45 | 1 | pfleura2 | # make clean |
46 | 1 | pfleura2 | # To force the source files to be recompiled, enter, for example, |
47 | 1 | pfleura2 | # make single FRC=FRC |
48 | 1 | pfleura2 | # |
49 | 1 | pfleura2 | #--------------------------------------------------------------------- |
50 | 1 | pfleura2 | # |
51 | 1 | pfleura2 | # Edward Anderson, University of Tennessee |
52 | 1 | pfleura2 | # March 26, 1990 |
53 | 1 | pfleura2 | # Susan Ostrouchov, September 30, 1994 |
54 | 1 | pfleura2 | # Julie Langou, March 2007 |
55 | 1 | pfleura2 | # |
56 | 1 | pfleura2 | ####################################################################### |
57 | 1 | pfleura2 | |
58 | 1 | pfleura2 | all: $(BLASLIB) |
59 | 1 | pfleura2 | |
60 | 1 | pfleura2 | #--------------------------------------------------------- |
61 | 1 | pfleura2 | # Comment out the next 6 definitions if you already have |
62 | 1 | pfleura2 | # the Level 1 BLAS. |
63 | 1 | pfleura2 | #--------------------------------------------------------- |
64 | 1 | pfleura2 | SBLAS1 = isamax.o sasum.o saxpy.o scopy.o sdot.o snrm2.o \ |
65 | 1 | pfleura2 | srot.o srotg.o sscal.o sswap.o sdsdot.o srotmg.o srotm.o |
66 | 1 | pfleura2 | $(SBLAS1): $(FRC) |
67 | 1 | pfleura2 | |
68 | 1 | pfleura2 | CBLAS1 = scabs1.o scasum.o scnrm2.o icamax.o caxpy.o ccopy.o \ |
69 | 1 | pfleura2 | cdotc.o cdotu.o csscal.o crotg.o cscal.o cswap.o csrot.o |
70 | 1 | pfleura2 | $(CBLAS1): $(FRC) |
71 | 1 | pfleura2 | |
72 | 1 | pfleura2 | DBLAS1 = idamax.o dasum.o daxpy.o dcopy.o ddot.o dnrm2.o \ |
73 | 1 | pfleura2 | drot.o drotg.o dscal.o dsdot.o dswap.o drotmg.o drotm.o |
74 | 1 | pfleura2 | $(DBLAS1): $(FRC) |
75 | 1 | pfleura2 | |
76 | 1 | pfleura2 | ZBLAS1 = dcabs1.o dzasum.o dznrm2.o izamax.o zaxpy.o zcopy.o \ |
77 | 1 | pfleura2 | zdotc.o zdotu.o zdscal.o zrotg.o zscal.o zswap.o zdrot.o |
78 | 1 | pfleura2 | $(ZBLAS1): $(FRC) |
79 | 1 | pfleura2 | |
80 | 1 | pfleura2 | CB1AUX = isamax.o sasum.o saxpy.o scopy.o snrm2.o sscal.o |
81 | 1 | pfleura2 | $(CB1AUX): $(FRC) |
82 | 1 | pfleura2 | |
83 | 1 | pfleura2 | ZB1AUX = idamax.o dasum.o daxpy.o dcopy.o dnrm2.o dscal.o |
84 | 1 | pfleura2 | $(ZB1AUX): $(FRC) |
85 | 1 | pfleura2 | |
86 | 1 | pfleura2 | #--------------------------------------------------------------------- |
87 | 1 | pfleura2 | # The following line defines auxiliary routines needed by both the |
88 | 1 | pfleura2 | # Level 2 and Level 3 BLAS. Comment it out only if you already have |
89 | 1 | pfleura2 | # both the Level 2 and 3 BLAS. |
90 | 1 | pfleura2 | #--------------------------------------------------------------------- |
91 | 1 | pfleura2 | ALLBLAS = lsame.o xerbla.o |
92 | 1 | pfleura2 | $(ALLBLAS) : $(FRC) |
93 | 1 | pfleura2 | |
94 | 1 | pfleura2 | #--------------------------------------------------------- |
95 | 1 | pfleura2 | # Comment out the next 4 definitions if you already have |
96 | 1 | pfleura2 | # the Level 2 BLAS. |
97 | 1 | pfleura2 | #--------------------------------------------------------- |
98 | 1 | pfleura2 | SBLAS2 = sgemv.o sgbmv.o ssymv.o ssbmv.o sspmv.o \ |
99 | 1 | pfleura2 | strmv.o stbmv.o stpmv.o strsv.o stbsv.o stpsv.o \ |
100 | 1 | pfleura2 | sger.o ssyr.o sspr.o ssyr2.o sspr2.o |
101 | 1 | pfleura2 | $(SBLAS2): $(FRC) |
102 | 1 | pfleura2 | |
103 | 1 | pfleura2 | CBLAS2 = cgemv.o cgbmv.o chemv.o chbmv.o chpmv.o \ |
104 | 1 | pfleura2 | ctrmv.o ctbmv.o ctpmv.o ctrsv.o ctbsv.o ctpsv.o \ |
105 | 1 | pfleura2 | cgerc.o cgeru.o cher.o chpr.o cher2.o chpr2.o |
106 | 1 | pfleura2 | $(CBLAS2): $(FRC) |
107 | 1 | pfleura2 | |
108 | 1 | pfleura2 | DBLAS2 = dgemv.o dgbmv.o dsymv.o dsbmv.o dspmv.o \ |
109 | 1 | pfleura2 | dtrmv.o dtbmv.o dtpmv.o dtrsv.o dtbsv.o dtpsv.o \ |
110 | 1 | pfleura2 | dger.o dsyr.o dspr.o dsyr2.o dspr2.o |
111 | 1 | pfleura2 | $(DBLAS2): $(FRC) |
112 | 1 | pfleura2 | |
113 | 1 | pfleura2 | ZBLAS2 = zgemv.o zgbmv.o zhemv.o zhbmv.o zhpmv.o \ |
114 | 1 | pfleura2 | ztrmv.o ztbmv.o ztpmv.o ztrsv.o ztbsv.o ztpsv.o \ |
115 | 1 | pfleura2 | zgerc.o zgeru.o zher.o zhpr.o zher2.o zhpr2.o |
116 | 1 | pfleura2 | $(ZBLAS2): $(FRC) |
117 | 1 | pfleura2 | |
118 | 1 | pfleura2 | #--------------------------------------------------------- |
119 | 1 | pfleura2 | # Comment out the next 4 definitions if you already have |
120 | 1 | pfleura2 | # the Level 3 BLAS. |
121 | 1 | pfleura2 | #--------------------------------------------------------- |
122 | 1 | pfleura2 | SBLAS3 = sgemm.o ssymm.o ssyrk.o ssyr2k.o strmm.o strsm.o |
123 | 1 | pfleura2 | $(SBLAS3): $(FRC) |
124 | 1 | pfleura2 | |
125 | 1 | pfleura2 | CBLAS3 = cgemm.o csymm.o csyrk.o csyr2k.o ctrmm.o ctrsm.o \ |
126 | 1 | pfleura2 | chemm.o cherk.o cher2k.o |
127 | 1 | pfleura2 | $(CBLAS3): $(FRC) |
128 | 1 | pfleura2 | |
129 | 1 | pfleura2 | DBLAS3 = dgemm.o dsymm.o dsyrk.o dsyr2k.o dtrmm.o dtrsm.o |
130 | 1 | pfleura2 | $(DBLAS3): $(FRC) |
131 | 1 | pfleura2 | |
132 | 1 | pfleura2 | ZBLAS3 = zgemm.o zsymm.o zsyrk.o zsyr2k.o ztrmm.o ztrsm.o \ |
133 | 1 | pfleura2 | zhemm.o zherk.o zher2k.o |
134 | 1 | pfleura2 | $(ZBLAS3): $(FRC) |
135 | 1 | pfleura2 | |
136 | 1 | pfleura2 | ALLOBJ=$(SBLAS1) $(SBLAS2) $(SBLAS3) $(DBLAS1) $(DBLAS2) $(DBLAS3) \ |
137 | 1 | pfleura2 | $(CBLAS1) $(CBLAS2) $(CBLAS3) $(ZBLAS1) \ |
138 | 1 | pfleura2 | $(ZBLAS2) $(ZBLAS3) $(ALLBLAS) |
139 | 1 | pfleura2 | |
140 | 1 | pfleura2 | $(BLASLIB): $(ALLOBJ) |
141 | 1 | pfleura2 | $(ARCH) $(ARCHFLAGS) $@ $(ALLOBJ) |
142 | 1 | pfleura2 | $(RANLIB) $@ |
143 | 1 | pfleura2 | |
144 | 1 | pfleura2 | single: $(SBLAS1) $(ALLBLAS) $(SBLAS2) $(SBLAS3) |
145 | 1 | pfleura2 | $(ARCH) $(ARCHFLAGS) $(BLASLIB) $(SBLAS1) $(ALLBLAS) \ |
146 | 1 | pfleura2 | $(SBLAS2) $(SBLAS3) |
147 | 1 | pfleura2 | $(RANLIB) $(BLASLIB) |
148 | 1 | pfleura2 | |
149 | 1 | pfleura2 | double: $(DBLAS1) $(ALLBLAS) $(DBLAS2) $(DBLAS3) |
150 | 1 | pfleura2 | $(ARCH) $(ARCHFLAGS) $(BLASLIB) $(DBLAS1) $(ALLBLAS) \ |
151 | 1 | pfleura2 | $(DBLAS2) $(DBLAS3) |
152 | 1 | pfleura2 | $(RANLIB) $(BLASLIB) |
153 | 1 | pfleura2 | |
154 | 1 | pfleura2 | complex: $(CBLAS1) $(CB1AUX) $(ALLBLAS) $(CBLAS2) $(CBLAS3) |
155 | 1 | pfleura2 | $(ARCH) $(ARCHFLAGS) $(BLASLIB) $(CBLAS1) $(CB1AUX) \ |
156 | 1 | pfleura2 | $(ALLBLAS) $(CBLAS2) $(CBLAS3) |
157 | 1 | pfleura2 | $(RANLIB) $(BLASLIB) |
158 | 1 | pfleura2 | |
159 | 1 | pfleura2 | complex16: $(ZBLAS1) $(ZB1AUX) $(ALLBLAS) $(ZBLAS2) $(ZBLAS3) |
160 | 1 | pfleura2 | $(ARCH) $(ARCHFLAGS) $(BLASLIB) $(ZBLAS1) $(ZB1AUX) \ |
161 | 1 | pfleura2 | $(ALLBLAS) $(ZBLAS2) $(ZBLAS3) |
162 | 1 | pfleura2 | $(RANLIB) $(BLASLIB) |
163 | 1 | pfleura2 | |
164 | 1 | pfleura2 | FRC: |
165 | 1 | pfleura2 | @FRC=$(FRC) |
166 | 1 | pfleura2 | |
167 | 1 | pfleura2 | clean: |
168 | 1 | pfleura2 | rm -f *.o |
169 | 1 | pfleura2 | |
170 | 1 | pfleura2 | .f.o: |
171 | 1 | pfleura2 | $(FORTRAN) $(OPTS) -c $< -o $@ |