76 lines
2.7 KiB
CMake
76 lines
2.7 KiB
CMake
#######################################################################
|
|
# This is the makefile to create a library of the test matrix
|
|
# generators used in LAPACK. The files are organized as follows:
|
|
#
|
|
# SCATGEN -- Auxiliary routines called from both REAL and COMPLEX
|
|
# DZATGEN -- Auxiliary routines called from both DOUBLE PRECISION
|
|
# and COMPLEX*16
|
|
# SMATGEN -- Single precision real matrix generation routines
|
|
# CMATGEN -- Single precision complex matrix generation routines
|
|
# DMATGEN -- Double precision real matrix generation routines
|
|
# ZMATGEN -- Double precision complex matrix generation routines
|
|
#
|
|
# 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
|
|
# followed by one or more of the precisions desired. Some examples:
|
|
# make single
|
|
# make single complex
|
|
# make single double complex complex16
|
|
# Alternatively, the command
|
|
# make
|
|
# without any arguments creates a library of all four precisions.
|
|
# The library is called
|
|
# tmglib.a
|
|
# and is created at the LAPACK directory level.
|
|
#
|
|
# To remove the object files after the library is created, enter
|
|
# make clean
|
|
# On some systems, you can force the source files to be recompiled by
|
|
# entering (for example)
|
|
# make single FRC=FRC
|
|
#
|
|
#######################################################################
|
|
|
|
set(SCATGEN slatm1.f slaran.f slarnd.f)
|
|
|
|
set(SMATGEN slatms.f slatme.f slatmr.f slatmt.f
|
|
slagge.f slagsy.f slakf2.f slarge.f slaror.f slarot.f slatm2.f
|
|
slatm3.f slatm5.f slatm6.f slatm7.f slahilb.f)
|
|
|
|
set(CMATGEN clatms.f clatme.f clatmr.f clatmt.f
|
|
clagge.f claghe.f clagsy.f clakf2.f clarge.f claror.f clarot.f
|
|
clatm1.f clarnd.f clatm2.f clatm3.f clatm5.f clatm6.f clahilb.f slatm7.f)
|
|
|
|
set(DZATGEN dlatm1.f dlaran.f dlarnd.f)
|
|
|
|
set(DMATGEN dlatms.f dlatme.f dlatmr.f dlatmt.f
|
|
dlagge.f dlagsy.f dlakf2.f dlarge.f dlaror.f dlarot.f dlatm2.f
|
|
dlatm3.f dlatm5.f dlatm6.f dlatm7.f dlahilb.f)
|
|
|
|
set(ZMATGEN zlatms.f zlatme.f zlatmr.f zlatmt.f
|
|
zlagge.f zlaghe.f zlagsy.f zlakf2.f zlarge.f zlaror.f zlarot.f
|
|
zlatm1.f zlarnd.f zlatm2.f zlatm3.f zlatm5.f zlatm6.f zlahilb.f dlatm7.f)
|
|
|
|
if(BUILD_SINGLE)
|
|
set(ALLOBJ ${SMATGEN} ${SCATGEN})
|
|
endif()
|
|
if(BUILD_DOUBLE)
|
|
set(ALLOBJ ${ALLOBJ} ${DMATGEN} ${DZATGEN})
|
|
endif()
|
|
if(BUILD_COMPLEX)
|
|
set(ALLOBJ ${ALLOBJ} ${CMATGEN} ${SCATGEN})
|
|
endif()
|
|
if(BUILD_COMPLEX16)
|
|
set(ALLOBJ ${ALLOBJ} ${ZMATGEN} ${DZATGEN})
|
|
endif()
|
|
|
|
if (NOT ALLOBJ)
|
|
set(ALLOBJ ${SMATGEN} ${CMATGEN} ${SCATGEN} ${DMATGEN} ${ZMATGEN}
|
|
${DZATGEN})
|
|
else()
|
|
list(REMOVE_DUPLICATES ALLOBJ)
|
|
endif()
|
|
add_library(tmglib ${ALLOBJ} )
|
|
target_link_libraries(tmglib ${LAPACK_LIBRARIES})
|
|
lapack_install_library(tmglib)
|