option(BUILD_SHARED_LIBS "Build shared libraries" OFF)
option(BUILD_TESTING "Build tests" OFF)
+message(STATUS "Build tests: ${BUILD_TESTING}")
-# deprecated LAPACK routines
+# deprecated LAPACK and LAPACKE routines
option(BUILD_DEPRECATED "Build deprecated routines" OFF)
+message(STATUS "Build deprecated routines: ${BUILD_DEPRECATED}")
# --------------------------------------------------
# Precision to build
# By default all precisions are generated
-option(BUILD_SINGLE "Build LAPACK Single Precision" ON)
-option(BUILD_DOUBLE "Build LAPACK Double Precision" ON)
-option(BUILD_COMPLEX "Build LAPACK Complex Precision" ON)
-option(BUILD_COMPLEX16 "Build LAPACK Double Complex Precision" ON)
+option(BUILD_SINGLE "Build single precision real" ON)
+option(BUILD_DOUBLE "Build double precision real" ON)
+option(BUILD_COMPLEX "Build single precision complex" ON)
+option(BUILD_COMPLEX16 "Build double precision complex" ON)
+message(STATUS "Build single precision real: ${BUILD_SINGLE}")
+message(STATUS "Build double precision real: ${BUILD_DOUBLE}")
+message(STATUS "Build single precision complex: ${BUILD_COMPLEX}")
+message(STATUS "Build double precision complex: ${BUILD_COMPLEX16}")
+
+if(NOT (BUILD_SINGLE OR BUILD_DOUBLE OR BUILD_COMPLEX OR BUILD_COMPLEX16))
+ message(FATAL_ERROR "Nothing to build, no precision selected.
+ Please enable at least one of these:
+ BUILD_SINGLE, BUILD_DOUBLE, BUILD_COMPLEX, BUILD_COMPLEX16.")
+endif()
# --------------------------------------------------
# Subdirectories that need to be processed
CACHE STRING "Linker flags for shared libs" FORCE)
endif()
-message(STATUS "BUILD TESTING : ${BUILD_TESTING}")
if(BUILD_TESTING)
add_subdirectory(TESTING)
endif()
list(APPEND ZLASRC DEPRECATED/zgegs.f DEPRECATED/zgegv.f
DEPRECATED/zgeqpf.f DEPRECATED/zgelsx.f DEPRECATED/zggsvd.f
DEPRECATED/zggsvp.f DEPRECATED/zlahrd.f DEPRECATED/zlatzm.f DEPRECATED/ztzrqf.f)
- message(STATUS "Building LAPACK deprecated routines")
endif()
if(USE_XBLAS)
set(SOURCES)
if(BUILD_SINGLE)
list(APPEND SOURCES ${SLASRC} ${DSLASRC} ${SCLAUX} ${ALLAUX})
- message(STATUS "Building single precision real")
endif()
if(BUILD_DOUBLE)
list(APPEND SOURCES ${DLASRC} ${DSLASRC} ${DZLAUX} ${ALLAUX})
- message(STATUS "Building double precision real")
endif()
if(BUILD_COMPLEX)
list(APPEND SOURCES ${CLASRC} ${ZCLASRC} ${SCLAUX} ${ALLAUX})
- message(STATUS "Building single precision complex")
endif()
if(BUILD_COMPLEX16)
list(APPEND SOURCES ${ZLASRC} ${ZCLASRC} ${DZLAUX} ${ALLAUX})
- message(STATUS "Building double precision complex")
endif()
list(REMOVE_DUPLICATES SOURCES)
-if(NOT SOURCES)
- message(FATAL_ERROR "-->LAPACK SRC BUILD: NOTHING TO BUILD, NO PRECISION SELECTED:
- PLEASE ENABLE AT LEAST ONE OF THOSE: BUILD_SINGLE, BUILD_COMPLEX, BUILD_DOUBLE, BUILD_COMPLEX16.")
-endif()
-
add_library(lapack ${SOURCES})
set_target_properties(
lapack PROPERTIES