# TODO: Need to generate object files for S, D, C, Q and X - start with D for now.
# The sources are the same, but there are additional preprocessor definitions depending on the precision (see Makefile.tail).
add_library(DBLAS1OBJS OBJECT
axpy.c swap.c
copy.c scal.c
dot.c
asum.c nrm2.c
max.c # amax/min/amin compiled later from same source
rot.c rotg.c rotm.c rotmg.c
axpby.c
)
set(BLAS1_SOURCES
axpy.c swap.c
copy.c scal.c
dot.c
asum.c nrm2.c
rot.c rotg.c rotm.c rotmg.c
axpby.c
)
# TODO: USE_NETLIB_GEMV shoudl switch gemv.c to netlib/*gemv.f
set(BLAS2_SOURCES
gemv.c ger.c
trsv.c trmv.c symv.c
syr.c syr2.c gbmv.c
sbmv.c spmv.c
spr.c spr2.c
tbsv.c tbmv.c
tpsv.c tpmv.c
)
set(BLAS3_SOURCES
gemm.c symm.c
trsm.c syrk.c syr2k.c
omatcopy.c imatcopy.c
)
if (NOT DEFINED NO_FBLAS)
# N.B. The original Makefile passed in -UUSE_MIN and -UUSE_ABS (where appropriate), no way to do that at a source-level in cmake. REMOVE_DEFINITIONS removes a definition for the rest of the compilation.