diff options
author | igor175 <igor175@8a072113-8704-0410-8d35-dd094bca7971> | 2011-10-04 02:58:05 +0000 |
---|---|---|
committer | igor175 <igor175@8a072113-8704-0410-8d35-dd094bca7971> | 2011-10-04 02:58:05 +0000 |
commit | 5fe0466a14e395641f4f8a300ecc9dcb8058081b (patch) | |
tree | a3d5e59c7edd145303bfc73ee63babbf125b1ba0 | |
parent | 3b27d3196c299551e634bd40e0662d244ff693e1 (diff) | |
download | lapack-5fe0466a14e395641f4f8a300ecc9dcb8058081b.tar.gz lapack-5fe0466a14e395641f4f8a300ecc9dcb8058081b.tar.bz2 lapack-5fe0466a14e395641f4f8a300ecc9dcb8058081b.zip |
Changes to the SRC/Makefile to fix bugs that affected 'make single', 'make double', 'make complex', 'make complex16' functionality. Specifically, DSLASRC was included as a dependency for single and double, and ZCLASRC as a dependency for complex and complex16. Also, a few modifications for the case when USEXBLAS is defined to enable 'make single', 'make double' etc. For more info refer to LAPACK-DEV google group 'LAPACK SRC/Makefile question?' thread.
-rw-r--r-- | SRC/Makefile | 77 |
1 files changed, 44 insertions, 33 deletions
diff --git a/SRC/Makefile b/SRC/Makefile index bf2af131..7e83151f 100644 --- a/SRC/Makefile +++ b/SRC/Makefile @@ -3,24 +3,30 @@ include ../make.inc ####################################################################### # This is the makefile to create a library for LAPACK. # The files are organized as follows: -# ALLAUX -- Auxiliary routines called from all precisions -# ALLXAUX -- Auxiliary routines called from all precisions but -# only from routines using extra precision. -# SCLAUX -- Auxiliary routines called from both REAL and COMPLEX -# DZLAUX -- Auxiliary routines called from both DOUBLE PRECISION -# and COMPLEX*16 -# SLASRC -- Single precision real LAPACK routines +# ALLAUX -- Auxiliary routines called from all precisions +# +# SCLAUX -- Auxiliary routines called from both REAL and COMPLEX. +# DZLAUX -- Auxiliary routines called from both DOUBLE and COMPLEX*16. +# +# DSLASRC -- Double-single mixed precision real routines called from +# single, single-extra and double precision real LAPACK +# routines (i.e. from SLASRC, SXLASRC, DLASRC). +# ZCLASRC -- Double-single mixed precision complex routines called from +# single, single-extra and double precision complex LAPACK +# routines (i.e. from CLASRC, CXLASRC, ZLASRC). +# +# SLASRC -- Single precision real LAPACK routines # SXLASRC -- Single precision real LAPACK routines using extra # precision. -# CLASRC -- Single precision complex LAPACK routines +# CLASRC -- Single precision complex LAPACK routines # CXLASRC -- Single precision complex LAPACK routines using extra # precision. -# DLASRC -- Double precision real LAPACK routines +# DLASRC -- Double precision real LAPACK routines # DXLASRC -- Double precision real LAPACK routines using extra # precision. -# ZLASRC -- Double precision complex LAPACK routines +# ZLASRC -- Double precision complex LAPACK routines # ZXLASRC -- Double precision complex LAPACK routines using extra -# precision. +# precision. # # The library can be set up to include routines for any combination # of the four precisions. To create or add to the library, enter make @@ -52,8 +58,6 @@ ALLAUX = ilaenv.o ieeeck.o lsamen.o xerbla.o xerbla_array.o iparmq.o \ ilaprec.o ilatrans.o ilauplo.o iladiag.o chla_transtype.o \ ../INSTALL/ilaver.o ../INSTALL/lsame.o ../INSTALL/slamch.o -ALLXAUX = - SCLAUX = \ sbdsdc.o \ sbdsqr.o sdisna.o slabad.o slacpy.o sladiv.o slae2.o slaebz.o \ @@ -150,6 +154,7 @@ SLASRC = \ DSLASRC = spotrs.o sgetrs.o spotrf.o sgetrf.o +ifdef USEXBLAS SXLASRC = sgesvxx.o sgerfsx.o sla_gerfsx_extended.o sla_geamv.o \ sla_gercond.o sla_gerpvgrw.o ssysvxx.o ssyrfsx.o \ sla_syrfsx_extended.o sla_syamv.o sla_syrcond.o sla_syrpvgrw.o \ @@ -157,6 +162,7 @@ SXLASRC = sgesvxx.o sgerfsx.o sla_gerfsx_extended.o sla_geamv.o \ sla_porpvgrw.o sgbsvxx.o sgbrfsx.o sla_gbrfsx_extended.o \ sla_gbamv.o sla_gbrcond.o sla_gbrpvgrw.o sla_lin_berr.o slarscl2.o \ slascl2.o sla_wwaddw.o +endif CLASRC = \ cbdsqr.o cgbbrd.o cgbcon.o cgbequ.o cgbrfs.o cgbsv.o cgbsvx.o \ @@ -220,7 +226,8 @@ CLASRC = \ cgeqrt.o cgeqrt2.o cgeqrt3.o cgemqrt.o \ ctpqrt.o ctpqrt2.o ctpmqrt.o ctprfb.o -CXLASRC = cgesvxx.o cgerfsx.o cla_gerfsx_extended.o cla_geamv.o \ +ifdef USEXBLAS +CXLASRC = cgesvxx.o cgerfsx.o cla_gerfsx_extended.o cla_geamv.o \ cla_gercond_c.o cla_gercond_x.o cla_gerpvgrw.o \ csysvxx.o csyrfsx.o cla_syrfsx_extended.o cla_syamv.o \ cla_syrcond_c.o cla_syrcond_x.o cla_syrpvgrw.o \ @@ -231,6 +238,7 @@ CXLASRC = cgesvxx.o cgerfsx.o cla_gerfsx_extended.o cla_geamv.o \ chesvxx.o cherfsx.o cla_herfsx_extended.o cla_heamv.o \ cla_hercond_c.o cla_hercond_x.o cla_herpvgrw.o \ cla_lin_berr.o clarscl2.o clascl2.o cla_wwaddw.o +endif ZCLASRC = cpotrs.o cgetrs.o cpotrf.o cgetrf.o @@ -294,7 +302,7 @@ DLASRC = \ dgeqrt.o dgeqrt2.o dgeqrt3.o dgemqrt.o \ dtpqrt.o dtpqrt2.o dtpmqrt.o dtprfb.o - +ifdef USEXBLAS DXLASRC = dgesvxx.o dgerfsx.o dla_gerfsx_extended.o dla_geamv.o \ dla_gercond.o dla_gerpvgrw.o dsysvxx.o dsyrfsx.o \ dla_syrfsx_extended.o dla_syamv.o dla_syrcond.o dla_syrpvgrw.o \ @@ -302,6 +310,7 @@ DXLASRC = dgesvxx.o dgerfsx.o dla_gerfsx_extended.o dla_geamv.o \ dla_porpvgrw.o dgbsvxx.o dgbrfsx.o dla_gbrfsx_extended.o \ dla_gbamv.o dla_gbrcond.o dla_gbrpvgrw.o dla_lin_berr.o dlarscl2.o \ dlascl2.o dla_wwaddw.o +endif ZLASRC = \ zbdsqr.o zgbbrd.o zgbcon.o zgbequ.o zgbrfs.o zgbsv.o zgbsvx.o \ @@ -370,7 +379,7 @@ ZLASRC = \ zgeqrt.o zgeqrt2.o zgeqrt3.o zgemqrt.o \ ztpqrt.o ztpqrt2.o ztpmqrt.o ztprfb.o - +ifdef USEXBLAS ZXLASRC = zgesvxx.o zgerfsx.o zla_gerfsx_extended.o zla_geamv.o \ zla_gercond_c.o zla_gercond_x.o zla_gerpvgrw.o zsysvxx.o zsyrfsx.o \ zla_syrfsx_extended.o zla_syamv.o zla_syrcond_c.o zla_syrcond_x.o \ @@ -380,38 +389,39 @@ ZXLASRC = zgesvxx.o zgerfsx.o zla_gerfsx_extended.o zla_geamv.o \ zla_gbrpvgrw.o zhesvxx.o zherfsx.o zla_herfsx_extended.o \ zla_heamv.o zla_hercond_c.o zla_hercond_x.o zla_herpvgrw.o \ zla_lin_berr.o zlarscl2.o zlascl2.o zla_wwaddw.o +endif -all: ../$(LAPACKLIB) +ALLOBJ = $(SLASRC) $(DLASRC) $(DSLASRC) $(CLASRC) $(ZLASRC) $(ZCLASRC) \ + $(SCLAUX) $(DZLAUX) $(ALLAUX) ifdef USEXBLAS -ALLXOBJ=$(SXLASRC) $(DXLASRC) $(CXLASRC) $(ZXLASRC) $(ALLXAUX) +ALLXOBJ = $(SXLASRC) $(DXLASRC) $(CXLASRC) $(ZXLASRC) endif -ALLOBJ=$(SLASRC) $(DLASRC) $(DSLASRC) $(CLASRC) $(ZLASRC) $(ZCLASRC) \ - $(SCLAUX) $(DZLAUX) $(ALLAUX) +all: ../$(LAPACKLIB) ../$(LAPACKLIB): $(ALLOBJ) $(ALLXOBJ) $(ARCH) $(ARCHFLAGS) $@ $(ALLOBJ) $(ALLXOBJ) $(RANLIB) $@ -single: $(SLASRC) $(ALLAUX) $(SCLAUX) - $(ARCH) $(ARCHFLAGS) ../$(LAPACKLIB) $(SLASRC) $(ALLAUX) \ - $(SCLAUX) $(DSLASRC) +single: $(SLASRC) $(DSLASRC) $(SXLASRC) $(SCLAUX) $(ALLAUX) + $(ARCH) $(ARCHFLAGS) ../$(LAPACKLIB) $(SLASRC) $(DSLASRC) \ + $(SXLASRC) $(SCLAUX) $(ALLAUX) $(ALLXAUX) $(RANLIB) ../$(LAPACKLIB) -complex: $(CLASRC) $(ALLAUX) $(SCLAUX) - $(ARCH) $(ARCHFLAGS) ../$(LAPACKLIB) $(CLASRC) $(ALLAUX) \ - $(SCLAUX) $(ZCLASRC) +complex: $(CLASRC) $(ZCLASRC) $(CXLASRC) $(SCLAUX) $(ALLAUX) + $(ARCH) $(ARCHFLAGS) ../$(LAPACKLIB) $(CLASRC) $(ZCLASRC) \ + $(CXLASRC) $(SCLAUX) $(ALLAUX) $(ALLXAUX) $(RANLIB) ../$(LAPACKLIB) -double: $(DLASRC) $(ALLAUX) $(DZLAUX) - $(ARCH) $(ARCHFLAGS) ../$(LAPACKLIB) $(DLASRC) $(ALLAUX) \ - $(DZLAUX) $(DSLASRC) +double: $(DLASRC) $(DSLASRC) $(DXLASRC) $(DZLAUX) $(ALLAUX) + $(ARCH) $(ARCHFLAGS) ../$(LAPACKLIB) $(DLASRC) $(DSLASRC) \ + $(DXLASRC) $(DZLAUX) $(ALLAUX) $(ALLXAUX) $(RANLIB) ../$(LAPACKLIB) -complex16: $(ZLASRC) $(ALLAUX) $(DZLAUX) - $(ARCH) $(ARCHFLAGS) ../$(LAPACKLIB) $(ZLASRC) $(ALLAUX) \ - $(DZLAUX) $(ZCLASRC) +complex16: $(ZLASRC) $(ZCLASRC) $(ZXLASRC) $(DZLAUX) $(ALLAUX) + $(ARCH) $(ARCHFLAGS) ../$(LAPACKLIB) $(ZLASRC) $(ZCLASRC) \ + $(ZXLASRC) $(DZLAUX) $(ALLAUX) $(ALLXAUX) $(RANLIB) ../$(LAPACKLIB) $(ALLAUX): $(FRC) @@ -421,8 +431,9 @@ $(SLASRC): $(FRC) $(CLASRC): $(FRC) $(DLASRC): $(FRC) $(ZLASRC): $(FRC) +$(ZCLASRC): $(FRC) +$(DSLASRC): $(FRC) ifdef USEXBLAS -$(ALLXAUX): $(FRC) $(SXLASRC): $(FRC) $(CXLASRC): $(FRC) $(DXLASRC): $(FRC) |