Added support for custom external BLAS/LAPACK libraries.
authorRossen Apostolov <rossen@kth.se>
Fri, 9 Sep 2011 14:28:50 +0000 (16:28 +0200)
committerRossen Apostolov <rossen@kth.se>
Fri, 9 Sep 2011 14:28:50 +0000 (16:28 +0200)
To use them give give to cmake
-DGMX_EXTERNAL_LAPACK=TRUE and
-DGMX_LAPACK_USER=/path/to/external/lapack

Same for BLAS.

Change-Id: I4ca1c4ca365788fcafc4219934fdfe8758db84f1

CMakeLists.txt

index f26734d6f86e9c8ded3869cfbd64ff37ca9ef893..c52d54c90609d9148d4bb823beee51a2138298c9 100644 (file)
@@ -738,19 +738,27 @@ if(HAVE_MKL OR ACCELERATE_FRAMEWORK)
   set(GMX_EXTERNAL_BLAS TRUE CACHE BOOL "Use external BLAS instead of built-in")
   set(GMX_EXTERNAL_LAPACK TRUE CACHE BOOL "Use external LAPACK instead of built-in")
 else(HAVE_MKL OR ACCELERATE_FRAMEWORK)
-  set(GMX_EXTERNAL_BLAS FALSE CACHE BOOL "Use external LAPACK instead of built-in") 
+  set(GMX_EXTERNAL_BLAS FALSE CACHE BOOL "Use external BLAS instead of built-in") 
   set(GMX_EXTERNAL_LAPACK FALSE CACHE BOOL "Use external LAPACK instead of built-in") 
   if(GMX_EXTERNAL_BLAS)
     #FindBLAS needs Fortran
     enable_language(Fortran)
-    find_package(BLAS REQUIRED)
-    list(APPEND        GMX_EXTRA_LIBRARIES ${BLAS_LIBRARIES})
+    if (GMX_BLAS_USER)
+        list(APPEND GMX_EXTRA_LIBRARIES ${GMX_BLAS_USER})
+    else(GMX_BLAS_USER)
+        find_package(BLAS REQUIRED)
+        list(APPEND GMX_EXTRA_LIBRARIES ${BLAS_LIBRARIES})
+    endif(GMX_BLAS_USER)
   endif(GMX_EXTERNAL_BLAS)
   if(GMX_EXTERNAL_LAPACK)
     #FindLAPACK needs Fortran
     enable_language(Fortran)
-    find_package(LAPACK REQUIRED)
-    list(APPEND        GMX_EXTRA_LIBRARIES ${LAPACK_LIBRARIES})
+       if (GMX_LAPACK_USER)
+        list(APPEND GMX_EXTRA_LIBRARIES ${GMX_LAPACK_USER})
+       else(GMX_LAPACK_USER)
+        find_package(LAPACK REQUIRED)
+        list(APPEND GMX_EXTRA_LIBRARIES ${LAPACK_LIBRARIES})
+    endif(GMX_LAPACK_USER)
   endif(GMX_EXTERNAL_LAPACK)
 endif(HAVE_MKL OR ACCELERATE_FRAMEWORK)
 mark_as_advanced(GMX_EXTERNAL_LAPACK)