1 #######################################################################
2 # This makefile runs the test programs for the linear equation routines
3 # and the eigenvalue routines in LAPACK. The test output files
4 # are grouped as follows:
6 # SLINTST,SEIGTST -- Single precision real test routines
7 # CLINTST,CEIGTST -- Single precision complex test routines
8 # DLINTST,DEIGTST -- Double precision real test routines
9 # ZLINTST,ZEIGTST -- Double precision complex test routines
11 # Test programs can be executed for all or some of the four different
12 # precisions. Enter 'make' followed by one or more of the data types
17 # make single double complex complex16
18 # Alternatively, the command
20 # without any arguments runs all eight test programs.
21 # The executable files are called:
22 # xlintsts, xlintstd, xlintstc, and xlintstz for LIN
23 # xeigtsts, xeigtstd, xeigtstc, and xeigtstz for EIG
24 # and exist in the current directory level.
26 # To remove the output files after the tests have been run, enter
29 # To re-run specific tests after a make, enter (for example):
30 # 'rm ssvd.out; make' or:
32 # 'touch svd.in; make' (to re-run the single precision SVD tests.)
34 # 'rm *svd.out; make' (to re-run all the SVD tests.)
36 #######################################################################
40 ifneq ($(strip $(VARLIB)),)
41 LAPACKLIB := $(VARLIB) ../$(LAPACKLIB)
45 all: single complex double complex16 singleproto doubleproto complexproto complex16proto
130 SLINTSTPROTO= stest_rfp.out
134 CLINTSTPROTO= ctest_rfp.out
138 DLINTSTPROTO= dstest.out dtest_rfp.out
142 ZLINTSTPROTO= zctest.out ztest_rfp.out
144 single: $(SLINTST) $(SEIGTST)
145 complex: $(CLINTST) $(CEIGTST)
146 double: $(DLINTST) $(DEIGTST)
147 complex16: $(ZLINTST) $(ZEIGTST)
148 singleproto: $(SLINTSTPROTO)
149 complexproto: $(CLINTSTPROTO)
150 doubleproto: $(DLINTSTPROTO)
151 complex16proto: $(ZLINTSTPROTO)
154 # ======== SINGLE LIN TESTS ===========================
156 stest.out: stest.in xlintsts
157 @echo Testing REAL LAPACK linear equation routines
158 ./xlintsts < stest.in > $@ 2>&1
160 # ======== COMPLEX LIN TESTS ==========================
162 ctest.out: ctest.in xlintstc
163 @echo Testing COMPLEX LAPACK linear equation routines
164 ./xlintstc < ctest.in > $@ 2>&1
166 # ======== DOUBLE LIN TESTS ===========================
168 dtest.out: dtest.in xlintstd
169 @echo Testing DOUBLE PRECISION LAPACK linear equation routines
170 ./xlintstd < dtest.in > $@ 2>&1
172 # ======== COMPLEX16 LIN TESTS ========================
174 ztest.out: ztest.in xlintstz
175 @echo Testing COMPLEX16 LAPACK linear equation routines
176 ./xlintstz < ztest.in > $@ 2>&1
178 # ======== SINGLE-DOUBLE PROTO LIN TESTS ==============
180 dstest.out: dstest.in xlintstds
181 @echo Testing SINGLE-DOUBLE PRECISION LAPACK prototype linear equation routines
182 ./xlintstds < dstest.in > $@ 2>&1
184 # ======== COMPLEX-COMPLEX16 LIN TESTS ========================
186 zctest.out: zctest.in xlintstzc
187 @echo Testing COMPLEX-COMPLEX16 LAPACK protoype linear equation routines
188 ./xlintstzc < zctest.in > $@ 2>&1
190 # ======== SINGLE RFP LIN TESTS ========================
192 stest_rfp.out: stest_rfp.in xlintstrfs
193 @echo Testing REAL LAPACK RFP protoype linear equation routines
194 ./xlintstrfs < stest_rfp.in > $@ 2>&1
196 # ======== COMPLEX16 RFP LIN TESTS ========================
198 dtest_rfp.out: dtest_rfp.in xlintstrfd
199 @echo Testing DOUBLE PRECISION LAPACK RFP protoype linear equation routines
200 ./xlintstrfd < dtest_rfp.in > $@ 2>&1
202 # ======== COMPLEX16 RFP LIN TESTS ========================
204 ctest_rfp.out: ctest_rfp.in xlintstrfc
205 @echo Testing COMPLEX LAPACK RFP protoype linear equation routines
206 ./xlintstrfc < ctest_rfp.in > $@ 2>&1
208 # ======== COMPLEX16 RFP LIN TESTS ========================
210 ztest_rfp.out: ztest_rfp.in xlintstrfz
211 @echo Testing COMPLEX16 LAPACK RFP protoype linear equation routines
212 ./xlintstrfz < ztest_rfp.in > $@ 2>&1
215 # ======== SINGLE EIG TESTS ===========================
218 snep.out: nep.in xeigtsts
219 @echo NEP: Testing Nonsymmetric Eigenvalue Problem routines
220 ./xeigtsts < nep.in > $@ 2>&1
222 ssep.out: sep.in xeigtsts
223 @echo SEP: Testing Symmetric Eigenvalue Problem routines
224 ./xeigtsts < sep.in > $@ 2>&1
226 ssvd.out: svd.in xeigtsts
227 @echo SVD: Testing Singular Value Decomposition routines
228 ./xeigtsts < svd.in > $@ 2>&1
230 sec.out: sec.in xeigtsts
231 @echo SEC: Testing REAL Eigen Condition Routines
232 ./xeigtsts < sec.in > $@ 2>&1
234 sed.out: sed.in xeigtsts
235 @echo SEV: Testing REAL Nonsymmetric Eigenvalue Driver
236 ./xeigtsts < sed.in > $@ 2>&1
238 sgg.out: sgg.in xeigtsts
239 @echo SGG: Testing REAL Nonsymmetric Generalized Eigenvalue Problem routines
240 ./xeigtsts < sgg.in > $@ 2>&1
242 sgd.out: sgd.in xeigtsts
243 @echo SGD: Testing REAL Nonsymmetric Generalized Eigenvalue Problem driver routines
244 ./xeigtsts < sgd.in > $@ 2>&1
246 ssb.out: ssb.in xeigtsts
247 @echo SSB: Testing REAL Symmetric Eigenvalue Problem routines
248 ./xeigtsts < ssb.in > $@ 2>&1
250 ssg.out: ssg.in xeigtsts
251 @echo SSG: Testing REAL Symmetric Generalized Eigenvalue Problem routines
252 ./xeigtsts < ssg.in > $@ 2>&1
254 sbal.out: sbal.in xeigtsts
255 @echo SGEBAL: Testing the balancing of a REAL general matrix
256 ./xeigtsts < sbal.in > $@ 2>&1
258 sbak.out: sbak.in xeigtsts
259 @echo SGEBAK: Testing the back transformation of a REAL balanced matrix
260 ./xeigtsts < sbak.in > $@ 2>&1
262 sgbal.out: sgbal.in xeigtsts
263 @echo SGGBAL: Testing the balancing of a pair of REAL general matrices
264 ./xeigtsts < sgbal.in > $@ 2>&1
266 sgbak.out: sgbak.in xeigtsts
267 @echo SGGBAK: Testing the back transformation of a pair of REAL balanced matrices
268 ./xeigtsts < sgbak.in > $@ 2>&1
270 sbb.out: sbb.in xeigtsts
271 @echo SBB: Testing banded Singular Value Decomposition routines
272 ./xeigtsts < sbb.in > $@ 2>&1
274 sglm.out: glm.in xeigtsts
275 @echo GLM: Testing Generalized Linear Regression Model routines
276 ./xeigtsts < glm.in > $@ 2>&1
278 sgqr.out: gqr.in xeigtsts
279 @echo GQR: Testing Generalized QR and RQ factorization routines
280 ./xeigtsts < gqr.in > $@ 2>&1
282 sgsv.out: gsv.in xeigtsts
283 @echo GSV: Testing Generalized Singular Value Decomposition routines
284 ./xeigtsts < gsv.in > $@ 2>&1
286 scsd.out: csd.in xeigtsts
287 @echo CSD: Testing CS Decomposition routines
288 ./xeigtsts < csd.in > $@ 2>&1
290 slse.out: lse.in xeigtsts
291 @echo LSE: Testing Constrained Linear Least Squares routines
292 ./xeigtsts < lse.in > $@ 2>&1
294 # ======== COMPLEX EIG TESTS ===========================
296 cnep.out: nep.in xeigtstc
297 @echo NEP: Testing Nonsymmetric Eigenvalue Problem routines
298 ./xeigtstc < nep.in > $@ 2>&1
300 csep.out: sep.in xeigtstc
301 @echo SEP: Testing Symmetric Eigenvalue Problem routines
302 ./xeigtstc < sep.in > $@ 2>&1
304 csvd.out: svd.in xeigtstc
305 @echo SVD: Testing Singular Value Decomposition routines
306 ./xeigtstc < svd.in > $@ 2>&1
308 cec.out: cec.in xeigtstc
309 @echo CEC: Testing COMPLEX Eigen Condition Routines
310 ./xeigtstc < cec.in > $@ 2>&1
312 ced.out: ced.in xeigtstc
313 @echo CES: Testing COMPLEX Nonsymmetric Schur Form Driver
314 ./xeigtstc < ced.in > $@ 2>&1
316 cgg.out: cgg.in xeigtstc
317 @echo CGG: Testing COMPLEX Nonsymmetric Generalized Eigenvalue Problem routines
318 ./xeigtstc < cgg.in > $@ 2>&1
320 cgd.out: cgd.in xeigtstc
321 @echo CGD: Testing COMPLEX Nonsymmetric Generalized Eigenvalue Problem driver routines
322 ./xeigtstc < cgd.in > $@ 2>&1
324 csb.out: csb.in xeigtstc
325 @echo CHB: Testing Hermitian Eigenvalue Problem routines
326 ./xeigtstc < csb.in > $@ 2>&1
328 csg.out: csg.in xeigtstc
329 @echo CSG: Testing Symmetric Generalized Eigenvalue Problem routines
330 ./xeigtstc < csg.in > $@ 2>&1
332 cbal.out: cbal.in xeigtstc
333 @echo CGEBAL: Testing the balancing of a COMPLEX general matrix
334 ./xeigtstc < cbal.in > $@ 2>&1
336 cbak.out: cbak.in xeigtstc
337 @echo CGEBAK: Testing the back transformation of a COMPLEX balanced matrix
338 ./xeigtstc < cbak.in > $@ 2>&1
340 cgbal.out: cgbal.in xeigtstc
341 @echo CGGBAL: Testing the balancing of a pair of COMPLEX general matrices
342 ./xeigtstc < cgbal.in > $@ 2>&1
344 cgbak.out: cgbak.in xeigtstc
345 @echo CGGBAK: Testing the back transformation of a pair of COMPLEX balanced matrices
346 ./xeigtstc < cgbak.in > $@ 2>&1
348 cbb.out: cbb.in xeigtstc
349 @echo CBB: Testing banded Singular Value Decomposition routines
350 ./xeigtstc < cbb.in > $@ 2>&1
352 cglm.out: glm.in xeigtstc
353 @echo GLM: Testing Generalized Linear Regression Model routines
354 ./xeigtstc < glm.in > $@ 2>&1
356 cgqr.out: gqr.in xeigtstc
357 @echo GQR: Testing Generalized QR and RQ factorization routines
358 ./xeigtstc < gqr.in > $@ 2>&1
360 cgsv.out: gsv.in xeigtstc
361 @echo GSV: Testing Generalized Singular Value Decomposition routines
362 ./xeigtstc < gsv.in > $@ 2>&1
364 ccsd.out: csd.in xeigtstc
365 @echo CSD: Testing CS Decomposition routines
366 ./xeigtstc < csd.in > $@ 2>&1
368 clse.out: lse.in xeigtstc
369 @echo LSE: Testing Constrained Linear Least Squares routines
370 ./xeigtstc < lse.in > $@ 2>&1
372 # ======== DOUBLE EIG TESTS ===========================
374 dnep.out: nep.in xeigtstd
375 @echo NEP: Testing Nonsymmetric Eigenvalue Problem routines
376 ./xeigtstd < nep.in > $@ 2>&1
378 dsep.out: sep.in xeigtstd
379 @echo SEP: Testing Symmetric Eigenvalue Problem routines
380 ./xeigtstd < sep.in > $@ 2>&1
382 dsvd.out: svd.in xeigtstd
383 @echo SVD: Testing Singular Value Decomposition routines
384 ./xeigtstd < svd.in > $@ 2>&1
386 dec.out: dec.in xeigtstd
387 @echo DEC: Testing DOUBLE PRECISION Eigen Condition Routines
388 ./xeigtstd < dec.in > $@ 2>&1
390 ded.out: ded.in xeigtstd
391 @echo DEV: Testing DOUBLE PRECISION Nonsymmetric Eigenvalue Driver
392 ./xeigtstd < ded.in > $@ 2>&1
394 dgg.out: dgg.in xeigtstd
395 @echo DGG: Testing DOUBLE PRECISION Nonsymmetric Generalized Eigenvalue Problem routines
396 ./xeigtstd < dgg.in > $@ 2>&1
398 dgd.out: dgd.in xeigtstd
399 @echo DGD: Testing DOUBLE PRECISION Nonsymmetric Generalized Eigenvalue Problem driver routines
400 ./xeigtstd < dgd.in > $@ 2>&1
402 dsb.out: dsb.in xeigtstd
403 @echo DSB: Testing DOUBLE PRECISION Symmetric Eigenvalue Problem routines
404 ./xeigtstd < dsb.in > $@ 2>&1
406 dsg.out: dsg.in xeigtstd
407 @echo DSG: Testing DOUBLE PRECISION Symmetric Generalized Eigenvalue Problem routines
408 ./xeigtstd < dsg.in > $@ 2>&1
410 dbal.out: dbal.in xeigtstd
411 @echo DGEBAL: Testing the balancing of a DOUBLE PRECISION general matrix
412 ./xeigtstd < dbal.in > $@ 2>&1
414 dbak.out: dbak.in xeigtstd
415 @echo DGEBAK: Testing the back transformation of a DOUBLE PRECISION balanced matrix
416 ./xeigtstd < dbak.in > $@ 2>&1
418 dgbal.out: dgbal.in xeigtstd
419 @echo DGGBAL: Testing the balancing of a pair of DOUBLE PRECISION general matrices
420 ./xeigtstd < dgbal.in > $@ 2>&1
422 dgbak.out: dgbak.in xeigtstd
423 @echo DGGBAK: Testing the back transformation of a pair of DOUBLE PRECISION balanced matrices
424 ./xeigtstd < dgbak.in > $@ 2>&1
426 dbb.out: dbb.in xeigtstd
427 @echo DBB: Testing banded Singular Value Decomposition routines
428 ./xeigtstd < dbb.in > $@ 2>&1
430 dglm.out: glm.in xeigtstd
431 @echo GLM: Testing Generalized Linear Regression Model routines
432 ./xeigtstd < glm.in > $@ 2>&1
434 dgqr.out: gqr.in xeigtstd
435 @echo GQR: Testing Generalized QR and RQ factorization routines
436 ./xeigtstd < gqr.in > $@ 2>&1
438 dgsv.out: gsv.in xeigtstd
439 @echo GSV: Testing Generalized Singular Value Decomposition routines
440 ./xeigtstd < gsv.in > $@ 2>&1
442 dcsd.out: csd.in xeigtstd
443 @echo CSD: Testing CS Decomposition routines
444 ./xeigtstd < csd.in > $@ 2>&1
446 dlse.out: lse.in xeigtstd
447 @echo LSE: Testing Constrained Linear Least Squares routines
448 ./xeigtstd < lse.in > $@ 2>&1
450 # ======== COMPLEX16 EIG TESTS ===========================
452 znep.out: nep.in xeigtstz
453 @echo NEP: Testing Nonsymmetric Eigenvalue Problem routines
454 ./xeigtstz < nep.in > $@ 2>&1
456 zsep.out: sep.in xeigtstz
457 @echo SEP: Testing Symmetric Eigenvalue Problem routines
458 ./xeigtstz < sep.in > $@ 2>&1
460 zsvd.out: svd.in xeigtstz
461 @echo SVD: Testing Singular Value Decomposition routines
462 ./xeigtstz < svd.in > $@ 2>&1
464 zec.out: zec.in xeigtstz
465 @echo ZEC: Testing COMPLEX16 Eigen Condition Routines
466 ./xeigtstz < zec.in > $@ 2>&1
468 zed.out: zed.in xeigtstz
469 @echo ZES: Testing COMPLEX16 Nonsymmetric Schur Form Driver
470 ./xeigtstz < zed.in > $@ 2>&1
472 zgg.out: zgg.in xeigtstz
473 @echo ZGG: Testing COMPLEX16 Nonsymmetric Generalized Eigenvalue Problem routines
474 ./xeigtstz < zgg.in > $@ 2>&1
476 zgd.out: zgd.in xeigtstz
477 @echo ZGD: Testing COMPLEX16 Nonsymmetric Generalized Eigenvalue Problem driver routines
478 ./xeigtstz < zgd.in > $@ 2>&1
480 zsb.out: zsb.in xeigtstz
481 @echo ZHB: Testing Hermitian Eigenvalue Problem routines
482 ./xeigtstz < zsb.in > $@ 2>&1
484 zsg.out: zsg.in xeigtstz
485 @echo ZSG: Testing Symmetric Generalized Eigenvalue Problem routines
486 ./xeigtstz < zsg.in > $@ 2>&1
488 zbal.out: zbal.in xeigtstz
489 @echo ZGEBAL: Testing the balancing of a COMPLEX16 general matrix
490 ./xeigtstz < zbal.in > $@ 2>&1
492 zbak.out: zbak.in xeigtstz
493 @echo ZGEBAK: Testing the back transformation of a COMPLEX16 balanced matrix
494 ./xeigtstz < zbak.in > $@ 2>&1
496 zgbal.out: zgbal.in xeigtstz
497 @echo ZGGBAL: Testing the balancing of a pair of COMPLEX general matrices
498 ./xeigtstz < zgbal.in > $@ 2>&1
500 zgbak.out: zgbak.in xeigtstz
501 @echo ZGGBAK: Testing the back transformation of a pair of COMPLEX16 balanced matrices
502 ./xeigtstz < zgbak.in > $@ 2>&1
504 zbb.out: zbb.in xeigtstz
505 @echo ZBB: Testing banded Singular Value Decomposition routines
506 ./xeigtstz < zbb.in > $@ 2>&1
508 zglm.out: glm.in xeigtstz
509 @echo GLM: Testing Generalized Linear Regression Model routines
510 ./xeigtstz < glm.in > $@ 2>&1
512 zgqr.out: gqr.in xeigtstz
513 @echo GQR: Testing Generalized QR and RQ factorization routines
514 ./xeigtstz < gqr.in > $@ 2>&1
516 zgsv.out: gsv.in xeigtstz
517 @echo GSV: Testing Generalized Singular Value Decomposition routines
518 ./xeigtstz < gsv.in > $@ 2>&1
520 zcsd.out: csd.in xeigtstz
521 @echo CSD: Testing CS Decomposition routines
522 ./xeigtstz < csd.in > $@ 2>&1
524 zlse.out: lse.in xeigtstz
525 @echo LSE: Testing Constrained Linear Least Squares routines
526 ./xeigtstz < lse.in > $@ 2>&1
527 # ==============================================================================
529 xlintsts: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCLIN) $(FRC)
530 cd LIN ; $(MAKE) single
532 xlintstc: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCLIN) $(FRC)
533 cd LIN ; $(MAKE) complex
535 xlintstd: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCLIN) $(FRC)
536 cd LIN ; $(MAKE) double
538 xlintstz: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCLIN) $(FRC)
539 cd LIN ; $(MAKE) complex16
541 xlintstrfs: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCLIN) $(FRC)
542 cd LIN ; $(MAKE) proto-single
544 xlintstrfc: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCLIN) $(FRC)
545 cd LIN ; $(MAKE) proto-complex
547 xlintstrfd: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCLIN) $(FRC)
548 cd LIN ; $(MAKE) proto-double
550 xlintstrfz: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCLIN) $(FRC)
551 cd LIN ; $(MAKE) proto-complex16
553 xlintstds: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCLIN) $(FRC)
554 cd LIN ; $(MAKE) proto-double
556 xlintstzc: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCLIN) $(FRC)
557 cd LIN ; $(MAKE) proto-complex16
559 xeigtsts: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCEIG) $(FRC)
560 cd EIG ; $(MAKE) single
562 xeigtstc: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCEIG) $(FRC)
563 cd EIG ; $(MAKE) complex
565 xeigtstd: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCEIG) $(FRC)
566 cd EIG ; $(MAKE) double
568 xeigtstz: ../$(LAPACKLIB) ../$(TMGLIB) $(FRCEIG) $(FRC)
569 cd EIG ; $(MAKE) complex16