|
kusano |
7d535a |
# makefile for sparse supernodal LU, implemented in ANSI C
|
|
kusano |
7d535a |
include ../make.inc
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
#######################################################################
|
|
kusano |
7d535a |
# This is the makefile to create a library for SuperLU.
|
|
kusano |
7d535a |
# The files are organized as follows:
|
|
kusano |
7d535a |
#
|
|
kusano |
7d535a |
# ALLAUX -- Auxiliary routines called from all precisions of SuperLU
|
|
kusano |
7d535a |
# LAAUX -- LAPACK auxiliary routines called from all precisions
|
|
kusano |
7d535a |
# SLASRC -- LAPACK single precision real routines
|
|
kusano |
7d535a |
# DLASRC -- LAPACK double precision real routines
|
|
kusano |
7d535a |
# CLASRC -- LAPACK single precision complex routines
|
|
kusano |
7d535a |
# ZLASRC -- LAPACK double precision complex routines
|
|
kusano |
7d535a |
# SCLAUX -- LAPACK Auxiliary routines called from both real and complex
|
|
kusano |
7d535a |
# DZLAUX -- LAPACK Auxiliary routines called from both double precision
|
|
kusano |
7d535a |
# and complex*16
|
|
kusano |
7d535a |
# SLUSRC -- Single precision real SuperLU routines
|
|
kusano |
7d535a |
# DLUSRC -- Double precision real SuperLU routines
|
|
kusano |
7d535a |
# CLUSRC -- Single precision complex SuperLU routines
|
|
kusano |
7d535a |
# ZLUSRC -- Double precision complex SuperLU routines
|
|
kusano |
7d535a |
#
|
|
kusano |
7d535a |
# The library can be set up to include routines for any combination
|
|
kusano |
7d535a |
# of the four precisions. To create or add to the library, enter make
|
|
kusano |
7d535a |
# followed by one or more of the precisions desired. Some examples:
|
|
kusano |
7d535a |
# make single
|
|
kusano |
7d535a |
# make single double
|
|
kusano |
7d535a |
# make single double complex complex16
|
|
kusano |
7d535a |
# Alternatively, the command
|
|
kusano |
7d535a |
# make
|
|
kusano |
7d535a |
# without any arguments creates a library of all four precisions.
|
|
kusano |
7d535a |
# The library is called
|
|
kusano |
7d535a |
# superlu.a
|
|
kusano |
7d535a |
# and is created at the next higher directory level.
|
|
kusano |
7d535a |
#
|
|
kusano |
7d535a |
# To remove the object files after the library is created, enter
|
|
kusano |
7d535a |
# make clean
|
|
kusano |
7d535a |
#
|
|
kusano |
7d535a |
#######################################################################
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
### LAPACK
|
|
kusano |
7d535a |
LAAUX = lsame.o xerbla.o
|
|
kusano |
7d535a |
SLASRC = slacon.o
|
|
kusano |
7d535a |
DLASRC = dlacon.o
|
|
kusano |
7d535a |
CLASRC = clacon.o scsum1.o icmax1.o
|
|
kusano |
7d535a |
ZLASRC = zlacon.o dzsum1.o izmax1.o
|
|
kusano |
7d535a |
SCLAUX = slamch.o
|
|
kusano |
7d535a |
DZLAUX = dlamch.o
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
### SuperLU
|
|
kusano |
7d535a |
ALLAUX = superlu_timer.o util.o memory.o get_perm_c.o mmd.o \
|
|
kusano |
7d535a |
sp_coletree.o sp_preorder.o sp_ienv.o relax_snode.o \
|
|
kusano |
7d535a |
heap_relax_snode.o colamd.o \
|
|
kusano |
7d535a |
ilu_relax_snode.o ilu_heap_relax_snode.o mark_relax.o \
|
|
kusano |
7d535a |
mc64ad.o qselect.o
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
SLUSRC = \
|
|
kusano |
7d535a |
sgssv.o sgssvx.o \
|
|
kusano |
7d535a |
ssp_blas2.o ssp_blas3.o sgscon.o \
|
|
kusano |
7d535a |
slangs.o sgsequ.o slaqgs.o spivotgrowth.o \
|
|
kusano |
7d535a |
sgsrfs.o sgstrf.o sgstrs.o scopy_to_ucol.o \
|
|
kusano |
7d535a |
ssnode_dfs.o ssnode_bmod.o \
|
|
kusano |
7d535a |
spanel_dfs.o spanel_bmod.o \
|
|
kusano |
7d535a |
sreadhb.o sreadrb.o sreadtriple.o \
|
|
kusano |
7d535a |
scolumn_dfs.o scolumn_bmod.o spivotL.o spruneL.o \
|
|
kusano |
7d535a |
smemory.o sutil.o smyblas2.o \
|
|
kusano |
7d535a |
sgsisx.o sgsitrf.o sldperm.o \
|
|
kusano |
7d535a |
ilu_sdrop_row.o ilu_ssnode_dfs.o \
|
|
kusano |
7d535a |
ilu_scolumn_dfs.o ilu_spanel_dfs.o ilu_scopy_to_ucol.o \
|
|
kusano |
7d535a |
ilu_spivotL.o sdiagonal.o
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
DLUSRC = \
|
|
kusano |
7d535a |
dgssv.o dgssvx.o \
|
|
kusano |
7d535a |
dsp_blas2.o dsp_blas3.o dgscon.o \
|
|
kusano |
7d535a |
dlangs.o dgsequ.o dlaqgs.o dpivotgrowth.o \
|
|
kusano |
7d535a |
dgsrfs.o dgstrf.o dgstrs.o dcopy_to_ucol.o \
|
|
kusano |
7d535a |
dsnode_dfs.o dsnode_bmod.o dpanel_dfs.o dpanel_bmod.o \
|
|
kusano |
7d535a |
dreadhb.o dreadrb.o dreadtriple.o \
|
|
kusano |
7d535a |
dcolumn_dfs.o dcolumn_bmod.o dpivotL.o dpruneL.o \
|
|
kusano |
7d535a |
dmemory.o dutil.o dmyblas2.o \
|
|
kusano |
7d535a |
dgsisx.o dgsitrf.o dldperm.o \
|
|
kusano |
7d535a |
ilu_ddrop_row.o ilu_dsnode_dfs.o \
|
|
kusano |
7d535a |
ilu_dcolumn_dfs.o ilu_dpanel_dfs.o ilu_dcopy_to_ucol.o \
|
|
kusano |
7d535a |
ilu_dpivotL.o ddiagonal.o
|
|
kusano |
7d535a |
## dgstrsL.o dgstrsU.o
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
CLUSRC = \
|
|
kusano |
7d535a |
scomplex.o cgssv.o cgssvx.o csp_blas2.o csp_blas3.o cgscon.o \
|
|
kusano |
7d535a |
clangs.o cgsequ.o claqgs.o cpivotgrowth.o \
|
|
kusano |
7d535a |
cgsrfs.o cgstrf.o cgstrs.o ccopy_to_ucol.o \
|
|
kusano |
7d535a |
csnode_dfs.o csnode_bmod.o \
|
|
kusano |
7d535a |
cpanel_dfs.o cpanel_bmod.o \
|
|
kusano |
7d535a |
creadhb.o creadrb.o creadtriple.o \
|
|
kusano |
7d535a |
ccolumn_dfs.o ccolumn_bmod.o cpivotL.o cpruneL.o \
|
|
kusano |
7d535a |
cmemory.o cutil.o cmyblas2.o \
|
|
kusano |
7d535a |
cgsisx.o cgsitrf.o cldperm.o \
|
|
kusano |
7d535a |
ilu_cdrop_row.o ilu_csnode_dfs.o \
|
|
kusano |
7d535a |
ilu_ccolumn_dfs.o ilu_cpanel_dfs.o ilu_ccopy_to_ucol.o \
|
|
kusano |
7d535a |
ilu_cpivotL.o cdiagonal.o
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
ZLUSRC = \
|
|
kusano |
7d535a |
dcomplex.o zgssv.o zgssvx.o zsp_blas2.o zsp_blas3.o zgscon.o \
|
|
kusano |
7d535a |
zlangs.o zgsequ.o zlaqgs.o zpivotgrowth.o \
|
|
kusano |
7d535a |
zgsrfs.o zgstrf.o zgstrs.o zcopy_to_ucol.o \
|
|
kusano |
7d535a |
zsnode_dfs.o zsnode_bmod.o \
|
|
kusano |
7d535a |
zpanel_dfs.o zpanel_bmod.o \
|
|
kusano |
7d535a |
zreadhb.o zreadrb.o zreadtriple.o \
|
|
kusano |
7d535a |
zcolumn_dfs.o zcolumn_bmod.o zpivotL.o zpruneL.o \
|
|
kusano |
7d535a |
zmemory.o zutil.o zmyblas2.o \
|
|
kusano |
7d535a |
zgsisx.o zgsitrf.o zldperm.o \
|
|
kusano |
7d535a |
ilu_zdrop_row.o ilu_zsnode_dfs.o \
|
|
kusano |
7d535a |
ilu_zcolumn_dfs.o ilu_zpanel_dfs.o ilu_zcopy_to_ucol.o \
|
|
kusano |
7d535a |
ilu_zpivotL.o zdiagonal.o
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
all: single double complex complex16
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
single: $(SLUSRC) $(ALLAUX) $(LAAUX) $(SLASRC) $(SCLAUX)
|
|
kusano |
7d535a |
$(ARCH) $(ARCHFLAGS) $(SUPERLULIB) \
|
|
kusano |
7d535a |
$(SLUSRC) $(ALLAUX) $(LAAUX) $(SLASRC) $(SCLAUX)
|
|
kusano |
7d535a |
$(RANLIB) $(SUPERLULIB)
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
double: $(DLUSRC) $(ALLAUX) $(LAAUX) $(DLASRC) $(DZLAUX)
|
|
kusano |
7d535a |
$(ARCH) $(ARCHFLAGS) $(SUPERLULIB) \
|
|
kusano |
7d535a |
$(DLUSRC) $(ALLAUX) $(LAAUX) $(DLASRC) $(DZLAUX)
|
|
kusano |
7d535a |
$(RANLIB) $(SUPERLULIB)
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
complex: $(CLUSRC) $(ALLAUX) $(LAAUX) $(CLASRC) $(SCLAUX)
|
|
kusano |
7d535a |
$(ARCH) $(ARCHFLAGS) $(SUPERLULIB) \
|
|
kusano |
7d535a |
$(CLUSRC) $(ALLAUX) $(LAAUX) $(CLASRC) $(SCLAUX)
|
|
kusano |
7d535a |
$(RANLIB) $(SUPERLULIB)
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
complex16: $(ZLUSRC) $(ALLAUX) $(LAAUX) $(ZLASRC) $(DZLAUX)
|
|
kusano |
7d535a |
$(ARCH) $(ARCHFLAGS) $(SUPERLULIB) \
|
|
kusano |
7d535a |
$(ZLUSRC) $(ALLAUX) $(LAAUX) $(ZLASRC) $(DZLAUX)
|
|
kusano |
7d535a |
$(RANLIB) $(SUPERLULIB)
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
##################################
|
|
kusano |
7d535a |
# Do not optimize these routines #
|
|
kusano |
7d535a |
##################################
|
|
kusano |
7d535a |
slamch.o: slamch.c ; $(CC) -c $(NOOPTS) $(CDEFS) $<
|
|
kusano |
7d535a |
dlamch.o: dlamch.c ; $(CC) -c $(NOOPTS) $(CDEFS) $<
|
|
kusano |
7d535a |
superlu_timer.o: superlu_timer.c ; $(CC) -c $(NOOPTS) $<
|
|
kusano |
7d535a |
##################################
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
.c.o:
|
|
kusano |
7d535a |
$(CC) $(CFLAGS) $(CDEFS) $(BLASDEF) -c $< $(VERBOSE)
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
.f.o:
|
|
kusano |
7d535a |
$(FORTRAN) $(FFLAGS) -c $<
|
|
kusano |
7d535a |
|
|
kusano |
7d535a |
clean:
|
|
kusano |
7d535a |
rm -f *.o $(SUPERLULIB)
|