1include ../../make.conf
2include ../../$(MAKEINC)
3
4
5SRC_PATH = ../../src/gemm
6M4_PATH = -I. -I..
7
8GEMM_SRCS = \
9	$(SRC_PATH)/BLAS_dgemm_d_s.c\
10	$(SRC_PATH)/BLAS_dgemm_s_d.c\
11	$(SRC_PATH)/BLAS_dgemm_s_s.c\
12	$(SRC_PATH)/BLAS_zgemm_z_c.c\
13	$(SRC_PATH)/BLAS_zgemm_c_z.c\
14	$(SRC_PATH)/BLAS_zgemm_c_c.c\
15	$(SRC_PATH)/BLAS_cgemm_c_s.c\
16	$(SRC_PATH)/BLAS_cgemm_s_c.c\
17	$(SRC_PATH)/BLAS_cgemm_s_s.c\
18	$(SRC_PATH)/BLAS_zgemm_z_d.c\
19	$(SRC_PATH)/BLAS_zgemm_d_z.c\
20	$(SRC_PATH)/BLAS_zgemm_d_d.c\
21	$(SRC_PATH)/BLAS_sgemm_x.c\
22	$(SRC_PATH)/BLAS_dgemm_x.c\
23	$(SRC_PATH)/BLAS_cgemm_x.c\
24	$(SRC_PATH)/BLAS_zgemm_x.c\
25	$(SRC_PATH)/BLAS_dgemm_d_s_x.c\
26	$(SRC_PATH)/BLAS_dgemm_s_d_x.c\
27	$(SRC_PATH)/BLAS_dgemm_s_s_x.c\
28	$(SRC_PATH)/BLAS_zgemm_z_c_x.c\
29	$(SRC_PATH)/BLAS_zgemm_c_z_x.c\
30	$(SRC_PATH)/BLAS_zgemm_c_c_x.c\
31	$(SRC_PATH)/BLAS_cgemm_c_s_x.c\
32	$(SRC_PATH)/BLAS_cgemm_s_c_x.c\
33	$(SRC_PATH)/BLAS_cgemm_s_s_x.c\
34	$(SRC_PATH)/BLAS_zgemm_z_d_x.c\
35	$(SRC_PATH)/BLAS_zgemm_d_z_x.c\
36	$(SRC_PATH)/BLAS_zgemm_d_d_x.c \
37	\
38	$(SRC_PATH)/BLAS_dgemm_d_s-f2c.c\
39	$(SRC_PATH)/BLAS_dgemm_s_d-f2c.c\
40	$(SRC_PATH)/BLAS_dgemm_s_s-f2c.c\
41	$(SRC_PATH)/BLAS_zgemm_z_c-f2c.c\
42	$(SRC_PATH)/BLAS_zgemm_c_z-f2c.c\
43	$(SRC_PATH)/BLAS_zgemm_c_c-f2c.c\
44	$(SRC_PATH)/BLAS_cgemm_c_s-f2c.c\
45	$(SRC_PATH)/BLAS_cgemm_s_c-f2c.c\
46	$(SRC_PATH)/BLAS_cgemm_s_s-f2c.c\
47	$(SRC_PATH)/BLAS_zgemm_z_d-f2c.c\
48	$(SRC_PATH)/BLAS_zgemm_d_z-f2c.c\
49	$(SRC_PATH)/BLAS_zgemm_d_d-f2c.c\
50	$(SRC_PATH)/BLAS_sgemm_x-f2c.c\
51	$(SRC_PATH)/BLAS_dgemm_x-f2c.c\
52	$(SRC_PATH)/BLAS_cgemm_x-f2c.c\
53	$(SRC_PATH)/BLAS_zgemm_x-f2c.c\
54	$(SRC_PATH)/BLAS_dgemm_d_s_x-f2c.c\
55	$(SRC_PATH)/BLAS_dgemm_s_d_x-f2c.c\
56	$(SRC_PATH)/BLAS_dgemm_s_s_x-f2c.c\
57	$(SRC_PATH)/BLAS_zgemm_z_c_x-f2c.c\
58	$(SRC_PATH)/BLAS_zgemm_c_z_x-f2c.c\
59	$(SRC_PATH)/BLAS_zgemm_c_c_x-f2c.c\
60	$(SRC_PATH)/BLAS_cgemm_c_s_x-f2c.c\
61	$(SRC_PATH)/BLAS_cgemm_s_c_x-f2c.c\
62	$(SRC_PATH)/BLAS_cgemm_s_s_x-f2c.c\
63	$(SRC_PATH)/BLAS_zgemm_z_d_x-f2c.c\
64	$(SRC_PATH)/BLAS_zgemm_d_z_x-f2c.c\
65	$(SRC_PATH)/BLAS_zgemm_d_d_x-f2c.c
66
67gemm-source: $(GEMM_SRCS)
68
69gemm-header: gemm.h
70
71$(SRC_PATH)/BLAS_dgemm_d_s.c: gemm.m4 gemm-common.m4 ../cblas.m4
72	echo "GEMM(d, d, s)" | cat gemm.m4 - | \
73    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_dgemm_d_s.c && \
74    $(INDENT) $(INDENT_OPTS) tmp.BLAS_dgemm_d_s.c && \
75    mv tmp.BLAS_dgemm_d_s.c $@ && rm -f tmp.BLAS_dgemm_d_s.c*
76
77$(SRC_PATH)/BLAS_dgemm_s_d.c: gemm.m4 gemm-common.m4 ../cblas.m4
78	echo "GEMM(d, s, d)" | cat gemm.m4 - | \
79    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_dgemm_s_d.c && \
80    $(INDENT) $(INDENT_OPTS) tmp.BLAS_dgemm_s_d.c && \
81    mv tmp.BLAS_dgemm_s_d.c $@ && rm -f tmp.BLAS_dgemm_s_d.c*
82
83$(SRC_PATH)/BLAS_dgemm_s_s.c: gemm.m4 gemm-common.m4 ../cblas.m4
84	echo "GEMM(d, s, s)" | cat gemm.m4 - | \
85    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_dgemm_s_s.c && \
86    $(INDENT) $(INDENT_OPTS) tmp.BLAS_dgemm_s_s.c && \
87    mv tmp.BLAS_dgemm_s_s.c $@ && rm -f tmp.BLAS_dgemm_s_s.c*
88
89$(SRC_PATH)/BLAS_zgemm_z_c.c: gemm.m4 gemm-common.m4 ../cblas.m4
90	echo "GEMM(z, z, c)" | cat gemm.m4 - | \
91    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_zgemm_z_c.c && \
92    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_z_c.c && \
93    mv tmp.BLAS_zgemm_z_c.c $@ && rm -f tmp.BLAS_zgemm_z_c.c*
94
95$(SRC_PATH)/BLAS_zgemm_c_z.c: gemm.m4 gemm-common.m4 ../cblas.m4
96	echo "GEMM(z, c, z)" | cat gemm.m4 - | \
97    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_zgemm_c_z.c && \
98    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_c_z.c && \
99    mv tmp.BLAS_zgemm_c_z.c $@ && rm -f tmp.BLAS_zgemm_c_z.c*
100
101$(SRC_PATH)/BLAS_zgemm_c_c.c: gemm.m4 gemm-common.m4 ../cblas.m4
102	echo "GEMM(z, c, c)" | cat gemm.m4 - | \
103    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_zgemm_c_c.c && \
104    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_c_c.c && \
105    mv tmp.BLAS_zgemm_c_c.c $@ && rm -f tmp.BLAS_zgemm_c_c.c*
106
107$(SRC_PATH)/BLAS_cgemm_c_s.c: gemm.m4 gemm-common.m4 ../cblas.m4
108	echo "GEMM(c, c, s)" | cat gemm.m4 - | \
109    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_cgemm_c_s.c && \
110    $(INDENT) $(INDENT_OPTS) tmp.BLAS_cgemm_c_s.c && \
111    mv tmp.BLAS_cgemm_c_s.c $@ && rm -f tmp.BLAS_cgemm_c_s.c*
112
113$(SRC_PATH)/BLAS_cgemm_s_c.c: gemm.m4 gemm-common.m4 ../cblas.m4
114	echo "GEMM(c, s, c)" | cat gemm.m4 - | \
115    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_cgemm_s_c.c && \
116    $(INDENT) $(INDENT_OPTS) tmp.BLAS_cgemm_s_c.c && \
117    mv tmp.BLAS_cgemm_s_c.c $@ && rm -f tmp.BLAS_cgemm_s_c.c*
118
119$(SRC_PATH)/BLAS_cgemm_s_s.c: gemm.m4 gemm-common.m4 ../cblas.m4
120	echo "GEMM(c, s, s)" | cat gemm.m4 - | \
121    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_cgemm_s_s.c && \
122    $(INDENT) $(INDENT_OPTS) tmp.BLAS_cgemm_s_s.c && \
123    mv tmp.BLAS_cgemm_s_s.c $@ && rm -f tmp.BLAS_cgemm_s_s.c*
124
125$(SRC_PATH)/BLAS_zgemm_z_d.c: gemm.m4 gemm-common.m4 ../cblas.m4
126	echo "GEMM(z, z, d)" | cat gemm.m4 - | \
127    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_zgemm_z_d.c && \
128    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_z_d.c && \
129    mv tmp.BLAS_zgemm_z_d.c $@ && rm -f tmp.BLAS_zgemm_z_d.c*
130
131$(SRC_PATH)/BLAS_zgemm_d_z.c: gemm.m4 gemm-common.m4 ../cblas.m4
132	echo "GEMM(z, d, z)" | cat gemm.m4 - | \
133    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_zgemm_d_z.c && \
134    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_d_z.c && \
135    mv tmp.BLAS_zgemm_d_z.c $@ && rm -f tmp.BLAS_zgemm_d_z.c*
136
137$(SRC_PATH)/BLAS_zgemm_d_d.c: gemm.m4 gemm-common.m4 ../cblas.m4
138	echo "GEMM(z, d, d)" | cat gemm.m4 - | \
139    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_zgemm_d_d.c && \
140    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_d_d.c && \
141    mv tmp.BLAS_zgemm_d_d.c $@ && rm -f tmp.BLAS_zgemm_d_d.c*
142
143$(SRC_PATH)/BLAS_sgemm_x.c: gemm.m4 gemm-common.m4 ../cblas.m4
144	echo "GEMM(s, s, s, _x)" | cat gemm.m4 - | \
145    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_sgemm_x.c && \
146    $(INDENT) $(INDENT_OPTS) tmp.BLAS_sgemm_x.c && \
147    mv tmp.BLAS_sgemm_x.c $@ && rm -f tmp.BLAS_sgemm_x.c*
148
149$(SRC_PATH)/BLAS_dgemm_x.c: gemm.m4 gemm-common.m4 ../cblas.m4
150	echo "GEMM(d, d, d, _x)" | cat gemm.m4 - | \
151    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_dgemm_x.c && \
152    $(INDENT) $(INDENT_OPTS) tmp.BLAS_dgemm_x.c && \
153    mv tmp.BLAS_dgemm_x.c $@ && rm -f tmp.BLAS_dgemm_x.c*
154
155$(SRC_PATH)/BLAS_cgemm_x.c: gemm.m4 gemm-common.m4 ../cblas.m4
156	echo "GEMM(c, c, c, _x)" | cat gemm.m4 - | \
157    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_cgemm_x.c && \
158    $(INDENT) $(INDENT_OPTS) tmp.BLAS_cgemm_x.c && \
159    mv tmp.BLAS_cgemm_x.c $@ && rm -f tmp.BLAS_cgemm_x.c*
160
161$(SRC_PATH)/BLAS_zgemm_x.c: gemm.m4 gemm-common.m4 ../cblas.m4
162	echo "GEMM(z, z, z, _x)" | cat gemm.m4 - | \
163    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_zgemm_x.c && \
164    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_x.c && \
165    mv tmp.BLAS_zgemm_x.c $@ && rm -f tmp.BLAS_zgemm_x.c*
166
167$(SRC_PATH)/BLAS_dgemm_d_s_x.c: gemm.m4 gemm-common.m4 ../cblas.m4
168	echo "GEMM(d, d, s, _x)" | cat gemm.m4 - | \
169    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_dgemm_d_s_x.c && \
170    $(INDENT) $(INDENT_OPTS) tmp.BLAS_dgemm_d_s_x.c && \
171    mv tmp.BLAS_dgemm_d_s_x.c $@ && rm -f tmp.BLAS_dgemm_d_s_x.c*
172
173$(SRC_PATH)/BLAS_dgemm_s_d_x.c: gemm.m4 gemm-common.m4 ../cblas.m4
174	echo "GEMM(d, s, d, _x)" | cat gemm.m4 - | \
175    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_dgemm_s_d_x.c && \
176    $(INDENT) $(INDENT_OPTS) tmp.BLAS_dgemm_s_d_x.c && \
177    mv tmp.BLAS_dgemm_s_d_x.c $@ && rm -f tmp.BLAS_dgemm_s_d_x.c*
178
179$(SRC_PATH)/BLAS_dgemm_s_s_x.c: gemm.m4 gemm-common.m4 ../cblas.m4
180	echo "GEMM(d, s, s, _x)" | cat gemm.m4 - | \
181    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_dgemm_s_s_x.c && \
182    $(INDENT) $(INDENT_OPTS) tmp.BLAS_dgemm_s_s_x.c && \
183    mv tmp.BLAS_dgemm_s_s_x.c $@ && rm -f tmp.BLAS_dgemm_s_s_x.c*
184
185$(SRC_PATH)/BLAS_zgemm_z_c_x.c: gemm.m4 gemm-common.m4 ../cblas.m4
186	echo "GEMM(z, z, c, _x)" | cat gemm.m4 - | \
187    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_zgemm_z_c_x.c && \
188    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_z_c_x.c && \
189    mv tmp.BLAS_zgemm_z_c_x.c $@ && rm -f tmp.BLAS_zgemm_z_c_x.c*
190
191$(SRC_PATH)/BLAS_zgemm_c_z_x.c: gemm.m4 gemm-common.m4 ../cblas.m4
192	echo "GEMM(z, c, z, _x)" | cat gemm.m4 - | \
193    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_zgemm_c_z_x.c && \
194    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_c_z_x.c && \
195    mv tmp.BLAS_zgemm_c_z_x.c $@ && rm -f tmp.BLAS_zgemm_c_z_x.c*
196
197$(SRC_PATH)/BLAS_zgemm_c_c_x.c: gemm.m4 gemm-common.m4 ../cblas.m4
198	echo "GEMM(z, c, c, _x)" | cat gemm.m4 - | \
199    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_zgemm_c_c_x.c && \
200    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_c_c_x.c && \
201    mv tmp.BLAS_zgemm_c_c_x.c $@ && rm -f tmp.BLAS_zgemm_c_c_x.c*
202
203$(SRC_PATH)/BLAS_cgemm_c_s_x.c: gemm.m4 gemm-common.m4 ../cblas.m4
204	echo "GEMM(c, c, s, _x)" | cat gemm.m4 - | \
205    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_cgemm_c_s_x.c && \
206    $(INDENT) $(INDENT_OPTS) tmp.BLAS_cgemm_c_s_x.c && \
207    mv tmp.BLAS_cgemm_c_s_x.c $@ && rm -f tmp.BLAS_cgemm_c_s_x.c*
208
209$(SRC_PATH)/BLAS_cgemm_s_c_x.c: gemm.m4 gemm-common.m4 ../cblas.m4
210	echo "GEMM(c, s, c, _x)" | cat gemm.m4 - | \
211    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_cgemm_s_c_x.c && \
212    $(INDENT) $(INDENT_OPTS) tmp.BLAS_cgemm_s_c_x.c && \
213    mv tmp.BLAS_cgemm_s_c_x.c $@ && rm -f tmp.BLAS_cgemm_s_c_x.c*
214
215$(SRC_PATH)/BLAS_cgemm_s_s_x.c: gemm.m4 gemm-common.m4 ../cblas.m4
216	echo "GEMM(c, s, s, _x)" | cat gemm.m4 - | \
217    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_cgemm_s_s_x.c && \
218    $(INDENT) $(INDENT_OPTS) tmp.BLAS_cgemm_s_s_x.c && \
219    mv tmp.BLAS_cgemm_s_s_x.c $@ && rm -f tmp.BLAS_cgemm_s_s_x.c*
220
221$(SRC_PATH)/BLAS_zgemm_z_d_x.c: gemm.m4 gemm-common.m4 ../cblas.m4
222	echo "GEMM(z, z, d, _x)" | cat gemm.m4 - | \
223    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_zgemm_z_d_x.c && \
224    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_z_d_x.c && \
225    mv tmp.BLAS_zgemm_z_d_x.c $@ && rm -f tmp.BLAS_zgemm_z_d_x.c*
226
227$(SRC_PATH)/BLAS_zgemm_d_z_x.c: gemm.m4 gemm-common.m4 ../cblas.m4
228	echo "GEMM(z, d, z, _x)" | cat gemm.m4 - | \
229    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_zgemm_d_z_x.c && \
230    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_d_z_x.c && \
231    mv tmp.BLAS_zgemm_d_z_x.c $@ && rm -f tmp.BLAS_zgemm_d_z_x.c*
232
233$(SRC_PATH)/BLAS_zgemm_d_d_x.c: gemm.m4 gemm-common.m4 ../cblas.m4
234	echo "GEMM(z, d, d, _x)" | cat gemm.m4 - | \
235    $(M4) $(M4_OPTS) $(M4_PATH) - > tmp.BLAS_zgemm_d_d_x.c && \
236    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_d_d_x.c && \
237    mv tmp.BLAS_zgemm_d_d_x.c $@ && rm -f tmp.BLAS_zgemm_d_d_x.c*
238
239
240
241$(SRC_PATH)/BLAS_dgemm_d_s-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
242	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="d, d, s" ../f2c-bridge.m4 > tmp.BLAS_dgemm_d_s-f2c.c && \
243    $(INDENT) $(INDENT_OPTS) tmp.BLAS_dgemm_d_s-f2c.c && \
244    mv tmp.BLAS_dgemm_d_s-f2c.c $@ && rm -f tmp.BLAS_dgemm_d_s-f2c.c*
245
246$(SRC_PATH)/BLAS_dgemm_s_d-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
247	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="d, s, d" ../f2c-bridge.m4 > tmp.BLAS_dgemm_s_d-f2c.c && \
248    $(INDENT) $(INDENT_OPTS) tmp.BLAS_dgemm_s_d-f2c.c && \
249    mv tmp.BLAS_dgemm_s_d-f2c.c $@ && rm -f tmp.BLAS_dgemm_s_d-f2c.c*
250
251$(SRC_PATH)/BLAS_dgemm_s_s-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
252	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="d, s, s" ../f2c-bridge.m4 > tmp.BLAS_dgemm_s_s-f2c.c && \
253    $(INDENT) $(INDENT_OPTS) tmp.BLAS_dgemm_s_s-f2c.c && \
254    mv tmp.BLAS_dgemm_s_s-f2c.c $@ && rm -f tmp.BLAS_dgemm_s_s-f2c.c*
255
256$(SRC_PATH)/BLAS_zgemm_z_c-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
257	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="z, z, c" ../f2c-bridge.m4 > tmp.BLAS_zgemm_z_c-f2c.c && \
258    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_z_c-f2c.c && \
259    mv tmp.BLAS_zgemm_z_c-f2c.c $@ && rm -f tmp.BLAS_zgemm_z_c-f2c.c*
260
261$(SRC_PATH)/BLAS_zgemm_c_z-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
262	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="z, c, z" ../f2c-bridge.m4 > tmp.BLAS_zgemm_c_z-f2c.c && \
263    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_c_z-f2c.c && \
264    mv tmp.BLAS_zgemm_c_z-f2c.c $@ && rm -f tmp.BLAS_zgemm_c_z-f2c.c*
265
266$(SRC_PATH)/BLAS_zgemm_c_c-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
267	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="z, c, c" ../f2c-bridge.m4 > tmp.BLAS_zgemm_c_c-f2c.c && \
268    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_c_c-f2c.c && \
269    mv tmp.BLAS_zgemm_c_c-f2c.c $@ && rm -f tmp.BLAS_zgemm_c_c-f2c.c*
270
271$(SRC_PATH)/BLAS_cgemm_c_s-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
272	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="c, c, s" ../f2c-bridge.m4 > tmp.BLAS_cgemm_c_s-f2c.c && \
273    $(INDENT) $(INDENT_OPTS) tmp.BLAS_cgemm_c_s-f2c.c && \
274    mv tmp.BLAS_cgemm_c_s-f2c.c $@ && rm -f tmp.BLAS_cgemm_c_s-f2c.c*
275
276$(SRC_PATH)/BLAS_cgemm_s_c-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
277	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="c, s, c" ../f2c-bridge.m4 > tmp.BLAS_cgemm_s_c-f2c.c && \
278    $(INDENT) $(INDENT_OPTS) tmp.BLAS_cgemm_s_c-f2c.c && \
279    mv tmp.BLAS_cgemm_s_c-f2c.c $@ && rm -f tmp.BLAS_cgemm_s_c-f2c.c*
280
281$(SRC_PATH)/BLAS_cgemm_s_s-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
282	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="c, s, s" ../f2c-bridge.m4 > tmp.BLAS_cgemm_s_s-f2c.c && \
283    $(INDENT) $(INDENT_OPTS) tmp.BLAS_cgemm_s_s-f2c.c && \
284    mv tmp.BLAS_cgemm_s_s-f2c.c $@ && rm -f tmp.BLAS_cgemm_s_s-f2c.c*
285
286$(SRC_PATH)/BLAS_zgemm_z_d-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
287	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="z, z, d" ../f2c-bridge.m4 > tmp.BLAS_zgemm_z_d-f2c.c && \
288    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_z_d-f2c.c && \
289    mv tmp.BLAS_zgemm_z_d-f2c.c $@ && rm -f tmp.BLAS_zgemm_z_d-f2c.c*
290
291$(SRC_PATH)/BLAS_zgemm_d_z-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
292	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="z, d, z" ../f2c-bridge.m4 > tmp.BLAS_zgemm_d_z-f2c.c && \
293    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_d_z-f2c.c && \
294    mv tmp.BLAS_zgemm_d_z-f2c.c $@ && rm -f tmp.BLAS_zgemm_d_z-f2c.c*
295
296$(SRC_PATH)/BLAS_zgemm_d_d-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
297	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="z, d, d" ../f2c-bridge.m4 > tmp.BLAS_zgemm_d_d-f2c.c && \
298    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_d_d-f2c.c && \
299    mv tmp.BLAS_zgemm_d_d-f2c.c $@ && rm -f tmp.BLAS_zgemm_d_d-f2c.c*
300
301$(SRC_PATH)/BLAS_sgemm_x-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
302	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="s, s, s, _x" ../f2c-bridge.m4 > tmp.BLAS_sgemm_x-f2c.c && \
303    $(INDENT) $(INDENT_OPTS) tmp.BLAS_sgemm_x-f2c.c && \
304    mv tmp.BLAS_sgemm_x-f2c.c $@ && rm -f tmp.BLAS_sgemm_x-f2c.c*
305
306$(SRC_PATH)/BLAS_dgemm_x-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
307	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="d, d, d, _x" ../f2c-bridge.m4 > tmp.BLAS_dgemm_x-f2c.c && \
308    $(INDENT) $(INDENT_OPTS) tmp.BLAS_dgemm_x-f2c.c && \
309    mv tmp.BLAS_dgemm_x-f2c.c $@ && rm -f tmp.BLAS_dgemm_x-f2c.c*
310
311$(SRC_PATH)/BLAS_cgemm_x-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
312	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="c, c, c, _x" ../f2c-bridge.m4 > tmp.BLAS_cgemm_x-f2c.c && \
313    $(INDENT) $(INDENT_OPTS) tmp.BLAS_cgemm_x-f2c.c && \
314    mv tmp.BLAS_cgemm_x-f2c.c $@ && rm -f tmp.BLAS_cgemm_x-f2c.c*
315
316$(SRC_PATH)/BLAS_zgemm_x-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
317	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="z, z, z, _x" ../f2c-bridge.m4 > tmp.BLAS_zgemm_x-f2c.c && \
318    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_x-f2c.c && \
319    mv tmp.BLAS_zgemm_x-f2c.c $@ && rm -f tmp.BLAS_zgemm_x-f2c.c*
320
321$(SRC_PATH)/BLAS_dgemm_d_s_x-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
322	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="d, d, s, _x" ../f2c-bridge.m4 > tmp.BLAS_dgemm_d_s_x-f2c.c && \
323    $(INDENT) $(INDENT_OPTS) tmp.BLAS_dgemm_d_s_x-f2c.c && \
324    mv tmp.BLAS_dgemm_d_s_x-f2c.c $@ && rm -f tmp.BLAS_dgemm_d_s_x-f2c.c*
325
326$(SRC_PATH)/BLAS_dgemm_s_d_x-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
327	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="d, s, d, _x" ../f2c-bridge.m4 > tmp.BLAS_dgemm_s_d_x-f2c.c && \
328    $(INDENT) $(INDENT_OPTS) tmp.BLAS_dgemm_s_d_x-f2c.c && \
329    mv tmp.BLAS_dgemm_s_d_x-f2c.c $@ && rm -f tmp.BLAS_dgemm_s_d_x-f2c.c*
330
331$(SRC_PATH)/BLAS_dgemm_s_s_x-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
332	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="d, s, s, _x" ../f2c-bridge.m4 > tmp.BLAS_dgemm_s_s_x-f2c.c && \
333    $(INDENT) $(INDENT_OPTS) tmp.BLAS_dgemm_s_s_x-f2c.c && \
334    mv tmp.BLAS_dgemm_s_s_x-f2c.c $@ && rm -f tmp.BLAS_dgemm_s_s_x-f2c.c*
335
336$(SRC_PATH)/BLAS_zgemm_z_c_x-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
337	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="z, z, c, _x" ../f2c-bridge.m4 > tmp.BLAS_zgemm_z_c_x-f2c.c && \
338    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_z_c_x-f2c.c && \
339    mv tmp.BLAS_zgemm_z_c_x-f2c.c $@ && rm -f tmp.BLAS_zgemm_z_c_x-f2c.c*
340
341$(SRC_PATH)/BLAS_zgemm_c_z_x-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
342	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="z, c, z, _x" ../f2c-bridge.m4 > tmp.BLAS_zgemm_c_z_x-f2c.c && \
343    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_c_z_x-f2c.c && \
344    mv tmp.BLAS_zgemm_c_z_x-f2c.c $@ && rm -f tmp.BLAS_zgemm_c_z_x-f2c.c*
345
346$(SRC_PATH)/BLAS_zgemm_c_c_x-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
347	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="z, c, c, _x" ../f2c-bridge.m4 > tmp.BLAS_zgemm_c_c_x-f2c.c && \
348    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_c_c_x-f2c.c && \
349    mv tmp.BLAS_zgemm_c_c_x-f2c.c $@ && rm -f tmp.BLAS_zgemm_c_c_x-f2c.c*
350
351$(SRC_PATH)/BLAS_cgemm_c_s_x-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
352	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="c, c, s, _x" ../f2c-bridge.m4 > tmp.BLAS_cgemm_c_s_x-f2c.c && \
353    $(INDENT) $(INDENT_OPTS) tmp.BLAS_cgemm_c_s_x-f2c.c && \
354    mv tmp.BLAS_cgemm_c_s_x-f2c.c $@ && rm -f tmp.BLAS_cgemm_c_s_x-f2c.c*
355
356$(SRC_PATH)/BLAS_cgemm_s_c_x-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
357	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="c, s, c, _x" ../f2c-bridge.m4 > tmp.BLAS_cgemm_s_c_x-f2c.c && \
358    $(INDENT) $(INDENT_OPTS) tmp.BLAS_cgemm_s_c_x-f2c.c && \
359    mv tmp.BLAS_cgemm_s_c_x-f2c.c $@ && rm -f tmp.BLAS_cgemm_s_c_x-f2c.c*
360
361$(SRC_PATH)/BLAS_cgemm_s_s_x-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
362	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="c, s, s, _x" ../f2c-bridge.m4 > tmp.BLAS_cgemm_s_s_x-f2c.c && \
363    $(INDENT) $(INDENT_OPTS) tmp.BLAS_cgemm_s_s_x-f2c.c && \
364    mv tmp.BLAS_cgemm_s_s_x-f2c.c $@ && rm -f tmp.BLAS_cgemm_s_s_x-f2c.c*
365
366$(SRC_PATH)/BLAS_zgemm_z_d_x-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
367	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="z, z, d, _x" ../f2c-bridge.m4 > tmp.BLAS_zgemm_z_d_x-f2c.c && \
368    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_z_d_x-f2c.c && \
369    mv tmp.BLAS_zgemm_z_d_x-f2c.c $@ && rm -f tmp.BLAS_zgemm_z_d_x-f2c.c*
370
371$(SRC_PATH)/BLAS_zgemm_d_z_x-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
372	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="z, d, z, _x" ../f2c-bridge.m4 > tmp.BLAS_zgemm_d_z_x-f2c.c && \
373    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_d_z_x-f2c.c && \
374    mv tmp.BLAS_zgemm_d_z_x-f2c.c $@ && rm -f tmp.BLAS_zgemm_d_z_x-f2c.c*
375
376$(SRC_PATH)/BLAS_zgemm_d_d_x-f2c.c: ../f2c-bridge.m4 gemm-common.m4 ../cblas.m4
377	$(M4) $(M4_OPTS) $(M4_PATH) -Droutine=gemm -DRARG="z, d, d, _x" ../f2c-bridge.m4 > tmp.BLAS_zgemm_d_d_x-f2c.c && \
378    $(INDENT) $(INDENT_OPTS) tmp.BLAS_zgemm_d_d_x-f2c.c && \
379    mv tmp.BLAS_zgemm_d_d_x-f2c.c $@ && rm -f tmp.BLAS_zgemm_d_d_x-f2c.c*
380
381
382gemm.h: ../cblas.m4 ../header.template gemm-common.m4
383	sed -e "s/routine/gemm/g" -e "s/ROUTINE/GEMM/g" \
384  ../header.template | $(M4) $(M4_OPTS) $(M4_PATH) - >$@
385
386source-clean:
387	rm -f $(GEMM_SRCS) gemm.h
388
389.PHONY: gemm-source gemm-header source-clean
390
391