about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--Makefile6
-rw-r--r--src/fastblas.cpp5
2 files changed, 8 insertions, 3 deletions
diff --git a/Makefile b/Makefile
index 054eab3..f03903d 100644
--- a/Makefile
+++ b/Makefile
@@ -46,7 +46,7 @@ SYS                    = LNX # LNX|MAC (Linux is the default)
 DIST_NAME              = gemma-$(GEMMA_VERSION)
 DEBUG                  = 1                # DEBUG mode, set DEBUG=0 for a release
 SHOW_COMPILER_WARNINGS =
-WITH_LAPACK            = 1
+WITH_LAPACK            =                  # Force linking LAPACK
 WITH_OPENBLAS          = 1                # Without OpenBlas uses LAPACK
 OPENBLAS_LEGACY        =                  # Using older OpenBlas
 FORCE_STATIC           =                  # Static linking of libraries
@@ -110,7 +110,9 @@ OUTPUT = $(BIN_DIR)/gemma
 
 # Detailed libary paths, D for dynamic and S for static
 
-# LIBS_LNX_D_LAPACK = -llapack
+ifdef WITH_LAPACK
+  LIBS_LNX_D_LAPACK = -llapack
+endif
 # LIBS_LNX_D_BLAS = -lblas
 LIBS_LNX_D_OPENBLAS = -lopenblas
 LIBS_MAC_D_LAPACK = -framework Accelerate
diff --git a/src/fastblas.cpp b/src/fastblas.cpp
index 81705a6..362027c 100644
--- a/src/fastblas.cpp
+++ b/src/fastblas.cpp
@@ -232,5 +232,8 @@ void fast_dgemm(const char *TransA, const char *TransB, const double alpha,
 void fast_eigen_dgemm(const char *TransA, const char *TransB, const double alpha,
                       const gsl_matrix *A, const gsl_matrix *B, const double beta,
                       gsl_matrix *C) {
-  eigenlib_dgemm(TransA,TransB,alpha,A,B,beta,C);
+  if (is_legacy_mode())
+    eigenlib_dgemm(TransA,TransB,alpha,A,B,beta,C);
+  else
+    fast_cblas_dgemm(TransA,TransB,alpha,A,B,beta,C);
 }