academic/lapacke: Updated for version 3.7.1.
Signed-off-by: Kyle Guinn <elyk03@gmail.com>
This commit is contained in:
parent
cb02371b45
commit
b60615cf24
|
@ -2,7 +2,7 @@
|
|||
|
||||
# Slackware build script for LAPACKE
|
||||
|
||||
# Copyright 2016 Kyle Guinn <elyk03@gmail.com>, USA
|
||||
# Copyright 2016-2017 Kyle Guinn <elyk03@gmail.com>, USA
|
||||
# All rights reserved.
|
||||
#
|
||||
# Redistribution and use of this script, with or without modification, is
|
||||
|
@ -24,7 +24,7 @@
|
|||
|
||||
PRGNAM=lapacke
|
||||
SRCNAM=lapack
|
||||
VERSION=${VERSION:-3.6.1}
|
||||
VERSION=${VERSION:-3.7.1}
|
||||
BUILD=${BUILD:-1}
|
||||
TAG=${TAG:-_SBo}
|
||||
|
||||
|
@ -61,16 +61,12 @@ rm -rf $PKG
|
|||
mkdir -p $TMP $PKG $OUTPUT
|
||||
cd $TMP
|
||||
rm -rf $SRCNAM-$VERSION
|
||||
tar xvf $CWD/$SRCNAM-$VERSION.tgz
|
||||
tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
|
||||
cd $SRCNAM-$VERSION
|
||||
chown -R root:root .
|
||||
chmod -R u+w,go-w,a+rX-st .
|
||||
|
||||
# Fix lots of bugs with the cmake build system and .pc files.
|
||||
# More importantly, allow building only the LAPACKE component.
|
||||
patch -p1 < $CWD/patches/generate-pkgconfig.diff
|
||||
patch -p1 < $CWD/patches/link-dependencies.diff
|
||||
patch -p1 < $CWD/patches/target-cleanup.diff
|
||||
# Allow building only the LAPACKE component.
|
||||
patch -p1 < $CWD/patches/cmake-piecewise.diff
|
||||
|
||||
# Avoid adding an RPATH entry to the shared lib. It's unnecessary (except for
|
||||
|
@ -85,7 +81,6 @@ cd shared
|
|||
-DCMAKE_VERBOSE_MAKEFILE=TRUE \
|
||||
-DUSE_OPTIMIZED_LAPACK=ON \
|
||||
-DBUILD_LAPACKE=ON \
|
||||
-DBUILD_TESTING=OFF \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DCMAKE_SKIP_RPATH=YES \
|
||||
..
|
||||
|
@ -106,7 +101,6 @@ cd static
|
|||
-DCMAKE_VERBOSE_MAKEFILE=TRUE \
|
||||
-DUSE_OPTIMIZED_LAPACK=ON \
|
||||
-DBUILD_LAPACKE=ON \
|
||||
-DBUILD_TESTING=OFF \
|
||||
..
|
||||
make
|
||||
make install/strip DESTDIR=$PKG
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
PRGNAM="lapacke"
|
||||
VERSION="3.6.1"
|
||||
VERSION="3.7.1"
|
||||
HOMEPAGE="http://www.netlib.org/lapack/lapacke.html"
|
||||
DOWNLOAD="http://www.netlib.org/lapack/lapack-3.6.1.tgz"
|
||||
MD5SUM="421b2cb72e15f237e144428f9c460ee0"
|
||||
DOWNLOAD="https://github.com/Reference-LAPACK/lapack/archive/v3.7.1/lapack-3.7.1.tar.gz"
|
||||
MD5SUM="9cd679ab1fd325ca964de70adcd33441"
|
||||
DOWNLOAD_x86_64=""
|
||||
MD5SUM_x86_64=""
|
||||
REQUIRES="lapack"
|
||||
|
|
|
@ -9,21 +9,21 @@ diff --git a/CBLAS/CMakeLists.txt b/CBLAS/CMakeLists.txt
|
|||
-
|
||||
# Create a header file cblas.h for the routines called in my C programs
|
||||
include(FortranCInterface)
|
||||
FortranCInterface_HEADER( ${CMAKE_CURRENT_SOURCE_DIR}/include/cblas_mangling.h
|
||||
@@ -40,51 +38,8 @@
|
||||
add_subdirectory(examples)
|
||||
endif(BUILD_TESTING)
|
||||
## Ensure that the fortran compiler and c compiler specified are compatible
|
||||
@@ -36,50 +34,8 @@
|
||||
add_subdirectory(examples)
|
||||
endif()
|
||||
|
||||
-if(NOT BLAS_FOUND)
|
||||
- set(ALL_TARGETS ${ALL_TARGETS} blas)
|
||||
-endif(NOT BLAS_FOUND)
|
||||
-endif()
|
||||
-
|
||||
-# Export cblas targets from the
|
||||
-# install tree, if any.
|
||||
-set(_cblas_config_install_guard_target "")
|
||||
-if(ALL_TARGETS)
|
||||
- install(EXPORT cblas-targets
|
||||
- DESTINATION lib/cmake/cblas-${LAPACK_VERSION})
|
||||
- DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/cblas-${LAPACK_VERSION})
|
||||
- # Choose one of the cblas targets to use as a guard for
|
||||
- # cblas-config.cmake to load targets from the install tree.
|
||||
- list(GET ALL_TARGETS 0 _cblas_config_install_guard_target)
|
||||
|
@ -49,19 +49,18 @@ diff --git a/CBLAS/CMakeLists.txt b/CBLAS/CMakeLists.txt
|
|||
install(FILES
|
||||
${CMAKE_CURRENT_BINARY_DIR}/cblas.pc
|
||||
DESTINATION ${PKG_CONFIG_DIR}
|
||||
)
|
||||
)
|
||||
-
|
||||
-configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/cblas-config-install.cmake.in
|
||||
- ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/cblas-config.cmake @ONLY)
|
||||
-install(FILES
|
||||
- ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/cblas-config.cmake
|
||||
- ${LAPACK_BINARY_DIR}/cblas-config-version.cmake
|
||||
- DESTINATION lib/cmake/cblas-${LAPACK_VERSION}
|
||||
- DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/cblas-${LAPACK_VERSION}
|
||||
- )
|
||||
-
|
||||
-#install(EXPORT cblas-targets
|
||||
-# DESTINATION lib/cmake/cblas-${LAPACK_VERSION})
|
||||
-
|
||||
-# DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/cblas-${LAPACK_VERSION})
|
||||
diff --git a/CBLAS/cmake/cblas-config-build.cmake.in b/CBLAS/cmake/cblas-config-build.cmake.in
|
||||
deleted file mode 100644
|
||||
--- a/CBLAS/cmake/cblas-config-build.cmake.in
|
||||
|
@ -76,24 +75,24 @@ deleted file mode 100644
|
|||
- include("@LAPACK_BINARY_DIR@/lapack-targets.cmake")
|
||||
-endif()
|
||||
-
|
||||
-# Report lapacke header search locations.
|
||||
-set(CBLAS_INCLUDE_DIRS "@LAPACK_SOURCE_DIR@/cblas/include")
|
||||
-# Report cblas header search locations from build tree.
|
||||
-set(CBLAS_INCLUDE_DIRS "@LAPACK_BINARY_DIR@/include")
|
||||
-
|
||||
-# Report lapacke libraries.
|
||||
-# Report cblas libraries.
|
||||
-set(CBLAS_LIBRARIES cblas)
|
||||
diff --git a/CBLAS/cmake/cblas-config-install.cmake.in b/CBLAS/cmake/cblas-config-install.cmake.in
|
||||
deleted file mode 100644
|
||||
--- a/CBLAS/cmake/cblas-config-install.cmake.in
|
||||
+++ /dev/null
|
||||
@@ -1,23 +0,0 @@
|
||||
-# Compute locations from <prefix>/lib/cmake/lapacke-<v>/<self>.cmake
|
||||
-# Compute locations from <prefix>/@{LIBRARY_DIR@/cmake/lapacke-<v>/<self>.cmake
|
||||
-get_filename_component(_CBLAS_SELF_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
||||
-get_filename_component(_CBLAS_PREFIX "${_CBLAS_SELF_DIR}" PATH)
|
||||
-get_filename_component(_CBLAS_PREFIX "${_CBLAS_PREFIX}" PATH)
|
||||
-get_filename_component(_CBLAS_PREFIX "${_CBLAS_PREFIX}" PATH)
|
||||
-
|
||||
-# Load the LAPACK package with which we were built.
|
||||
-set(LAPACK_DIR "${_CBLAS_PREFIX}/lib/cmake/lapack-@LAPACK_VERSION@")
|
||||
-set(LAPACK_DIR "${_CBLAS_PREFIX}/@{LIBRARY_DIR@/cmake/lapack-@LAPACK_VERSION@")
|
||||
-find_package(LAPACK NO_MODULE)
|
||||
-
|
||||
-# Load lapacke targets from the install tree.
|
||||
|
@ -160,27 +159,58 @@ deleted file mode 100644
|
|||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -81,8 +81,6 @@
|
||||
@@ -8,6 +8,15 @@
|
||||
set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "Debug" "Release" "MinSizeRel" "RelWithDebInfo" "Coverage")
|
||||
endif()
|
||||
|
||||
+string(TOUPPER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_UPPER)
|
||||
+if(${CMAKE_BUILD_TYPE_UPPER} STREQUAL "COVERAGE")
|
||||
+ message(STATUS "Adding coverage")
|
||||
+ find_package(codecov)
|
||||
+endif()
|
||||
+
|
||||
+# By default static library
|
||||
+option(BUILD_SHARED_LIBS "Build shared libraries" OFF)
|
||||
+
|
||||
project(LAPACK Fortran C)
|
||||
|
||||
set(LAPACK_MAJOR_VERSION 3)
|
||||
@@ -96,11 +105,8 @@
|
||||
endif()
|
||||
# --------------------------------------------------
|
||||
|
||||
-set(LAPACK_INSTALL_EXPORT_NAME lapack-targets)
|
||||
-
|
||||
if (UNIX)
|
||||
include(GNUInstallDirs)
|
||||
set(ARCHIVE_DIR ${CMAKE_INSTALL_LIBDIR})
|
||||
@@ -96,7 +94,6 @@
|
||||
|
||||
macro(lapack_install_library lib)
|
||||
install(TARGETS ${lib}
|
||||
- EXPORT ${LAPACK_INSTALL_EXPORT_NAME}
|
||||
ARCHIVE DESTINATION ${ARCHIVE_DIR}
|
||||
LIBRARY DESTINATION ${LIBRARY_DIR}
|
||||
RUNTIME DESTINATION ${RUNTIME_DIR}
|
||||
@@ -122,20 +119,6 @@
|
||||
include( CheckLAPACKCompilerFlags )
|
||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
@@ -111,10 +117,12 @@
|
||||
|
||||
# --------------------------------------------------
|
||||
# Testing
|
||||
-
|
||||
+option(BUILD_TESTING "Build tests" OFF)
|
||||
enable_testing()
|
||||
include(CTest)
|
||||
enable_testing()
|
||||
+message(STATUS "Build tests: ${BUILD_TESTING}")
|
||||
+
|
||||
# --------------------------------------------------
|
||||
|
||||
# Organize output files. On Windows this also keeps .dll files next
|
||||
@@ -128,33 +136,6 @@
|
||||
include(CheckLAPACKCompilerFlags)
|
||||
CheckLAPACKCompilerFlags()
|
||||
|
||||
-string(TOUPPER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_UPPER)
|
||||
-if(${CMAKE_BUILD_TYPE_UPPER} STREQUAL "COVERAGE")
|
||||
- message(STATUS "Adding coverage")
|
||||
- find_package(codecov)
|
||||
-endif()
|
||||
-
|
||||
-# --------------------------------------------------
|
||||
-# Check second function
|
||||
-
|
||||
|
@ -193,82 +223,62 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|||
-CHECK_TIME_FUNCTION(INT_ETIME TIME_FUNC)
|
||||
-message(STATUS "--> Will use second_${TIME_FUNC}.f and dsecnd_${TIME_FUNC}.f as timing function.")
|
||||
-
|
||||
-set(SECOND_SRC ${LAPACK_SOURCE_DIR}/INSTALL/second_${TIME_FUNC}.f)
|
||||
-set(DSECOND_SRC ${LAPACK_SOURCE_DIR}/INSTALL/dsecnd_${TIME_FUNC}.f)
|
||||
set(PKG_CONFIG_DIR ${LIBRARY_DIR}/pkgconfig)
|
||||
|
||||
set(prefix ${CMAKE_INSTALL_PREFIX})
|
||||
@@ -146,6 +129,11 @@
|
||||
-set(SECOND_SRC ${LAPACK_SOURCE_DIR}/INSTALL/second_${TIME_FUNC}.f)
|
||||
-set(DSECOND_SRC ${LAPACK_SOURCE_DIR}/INSTALL/dsecnd_${TIME_FUNC}.f)
|
||||
-
|
||||
-# By default static library
|
||||
-option(BUILD_SHARED_LIBS "Build shared libraries" OFF)
|
||||
-
|
||||
-option(BUILD_TESTING "Build tests" OFF)
|
||||
-message(STATUS "Build tests: ${BUILD_TESTING}")
|
||||
-
|
||||
# deprecated LAPACK and LAPACKE routines
|
||||
option(BUILD_DEPRECATED "Build deprecated routines" OFF)
|
||||
message(STATUS "Build deprecated routines: ${BUILD_DEPRECATED}")
|
||||
@@ -178,8 +159,9 @@
|
||||
endif()
|
||||
|
||||
# --------------------------------------------------
|
||||
+# By default static library
|
||||
+option(BUILD_SHARED_LIBS "Build shared libraries" OFF)
|
||||
+option(BUILD_STATIC_LIBS "Build static libraries" ON)
|
||||
+
|
||||
+# --------------------------------------------------
|
||||
# Precision to build
|
||||
# By default all precisions are generated
|
||||
option(BUILD_SINGLE "Build Single Precision" ON)
|
||||
@@ -176,236 +164,134 @@
|
||||
Please enable at least one of these: BUILD_SINGLE, BUILD_DOUBLE, BUILD_COMPLEX, BUILD_COMPLEX16.")
|
||||
endif()
|
||||
|
||||
-# --------------------------------------------------
|
||||
-# Subdirectories that need to be processed
|
||||
+# deprecated LAPACK routines
|
||||
+option(BUILD_DEPRECATED "Build deprecated routines" OFF)
|
||||
|
||||
+# --------------------------------------------------
|
||||
+# BLAS
|
||||
option(USE_OPTIMIZED_BLAS "Whether or not to use an optimized BLAS library instead of included netlib BLAS" OFF)
|
||||
-
|
||||
+option(BUILD_BLAS "Build BLAS" OFF)
|
||||
|
||||
# Check the usage of the user provided BLAS libraries
|
||||
if(BLAS_LIBRARIES)
|
||||
include(CheckFortranFunctionExists)
|
||||
set(CMAKE_REQUIRED_LIBRARIES ${BLAS_LIBRARIES})
|
||||
CHECK_FORTRAN_FUNCTION_EXISTS("dgemm" BLAS_FOUND)
|
||||
- unset( CMAKE_REQUIRED_LIBRARIES )
|
||||
+ unset(CMAKE_REQUIRED_LIBRARIES)
|
||||
@@ -190,213 +172,117 @@
|
||||
if(BLAS_FOUND)
|
||||
message(STATUS "--> BLAS supplied by user is WORKING, will use ${BLAS_LIBRARIES}.")
|
||||
- else(BLAS_FOUND)
|
||||
else()
|
||||
- message(ERROR "--> BLAS supplied by user is not WORKING, CANNOT USE ${BLAS_LIBRARIES}.")
|
||||
- message(ERROR "--> Will use REFERENCE BLAS (by default)")
|
||||
- message(ERROR "--> Or Correct your BLAS_LIBRARIES entry ")
|
||||
- message(ERROR "--> Or Consider checking USE_OPTIMIZED_BLAS")
|
||||
- endif(BLAS_FOUND)
|
||||
+ else()
|
||||
+ message(SEND_ERROR "--> BLAS supplied by user is NOT WORKING, cannot use ${BLAS_LIBRARIES}.")
|
||||
+ endif()
|
||||
endif()
|
||||
|
||||
# User did not provide a BLAS Library but specified to search for one
|
||||
-elseif( USE_OPTIMIZED_BLAS )
|
||||
- find_package( BLAS )
|
||||
-endif (BLAS_LIBRARIES)
|
||||
+elseif(USE_OPTIMIZED_BLAS)
|
||||
+ find_package(BLAS)
|
||||
elseif(USE_OPTIMIZED_BLAS)
|
||||
find_package(BLAS)
|
||||
-endif()
|
||||
|
||||
-# Neither user specified or optimized BLAS libraries can be used
|
||||
-if(NOT BLAS_FOUND)
|
||||
- message(STATUS "Using supplied NETLIB BLAS implementation")
|
||||
- add_subdirectory(BLAS)
|
||||
- set( BLAS_LIBRARIES blas )
|
||||
-else()
|
||||
- set( CMAKE_EXE_LINKER_FLAGS
|
||||
- "${CMAKE_EXE_LINKER_FLAGS} ${BLAS_LINKER_FLAGS}"
|
||||
- CACHE STRING "Linker flags for executables" FORCE)
|
||||
- set( CMAKE_MODULE_LINKER_FLAGS
|
||||
- "${CMAKE_MODULE_LINKER_FLAGS} ${BLAS_LINKER_FLAGS}"
|
||||
- CACHE STRING "Linker flags for modules" FORCE)
|
||||
- set( CMAKE_SHARED_LINKER_FLAGS
|
||||
- "${CMAKE_SHARED_LINKER_FLAGS} ${BLAS_LINKER_FLAGS}"
|
||||
- CACHE STRING "Linker flags for shared libs" FORCE)
|
||||
-endif( NOT BLAS_FOUND )
|
||||
+elseif(BUILD_BLAS)
|
||||
+ set(BLAS_LIBRARIES blas)
|
||||
set(BLAS_LIBRARIES blas)
|
||||
-else()
|
||||
- set(CMAKE_EXE_LINKER_FLAGS
|
||||
- "${CMAKE_EXE_LINKER_FLAGS} ${BLAS_LINKER_FLAGS}"
|
||||
- CACHE STRING "Linker flags for executables" FORCE)
|
||||
- set(CMAKE_MODULE_LINKER_FLAGS
|
||||
- "${CMAKE_MODULE_LINKER_FLAGS} ${BLAS_LINKER_FLAGS}"
|
||||
- CACHE STRING "Linker flags for modules" FORCE)
|
||||
- set(CMAKE_SHARED_LINKER_FLAGS
|
||||
- "${CMAKE_SHARED_LINKER_FLAGS} ${BLAS_LINKER_FLAGS}"
|
||||
- CACHE STRING "Linker flags for shared libs" FORCE)
|
||||
-endif()
|
||||
+ set(BLAS_FOUND TRUE)
|
||||
|
||||
+ add_subdirectory(BLAS)
|
||||
|
@ -283,27 +293,25 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|||
+if(BUILD_CBLAS)
|
||||
+ set(NEED_BLAS TRUE)
|
||||
add_subdirectory(CBLAS)
|
||||
-endif(CBLAS)
|
||||
+endif(BUILD_CBLAS)
|
||||
endif()
|
||||
|
||||
# --------------------------------------------------
|
||||
# XBLAS
|
||||
-
|
||||
option(USE_XBLAS "Build extended precision (needs XBLAS)" OFF)
|
||||
-if (USE_XBLAS)
|
||||
+
|
||||
+if(USE_XBLAS)
|
||||
if(USE_XBLAS)
|
||||
find_library(XBLAS_LIBRARY NAMES xblas)
|
||||
endif(USE_XBLAS)
|
||||
-
|
||||
-option(USE_OPTIMIZED_LAPACK "Whether or not to use an optimized LAPACK library instead of included netlib LAPACK" OFF)
|
||||
endif()
|
||||
|
||||
-option(USE_OPTIMIZED_LAPACK "Whether or not to use an optimized LAPACK library instead of included netlib LAPACK" OFF)
|
||||
-
|
||||
# --------------------------------------------------
|
||||
# LAPACK
|
||||
-# User did not provide a LAPACK Library but specified to search for one
|
||||
-if( USE_OPTIMIZED_LAPACK )
|
||||
- find_package( LAPACK )
|
||||
-endif (USE_OPTIMIZED_LAPACK)
|
||||
-if(USE_OPTIMIZED_LAPACK)
|
||||
- find_package(LAPACK)
|
||||
-endif()
|
||||
+option(USE_OPTIMIZED_LAPACK "Whether or not to use an optimized LAPACK library instead of included netlib LAPACK" OFF)
|
||||
+option(BUILD_LAPACK "Build LAPACK" OFF)
|
||||
|
||||
|
@ -313,29 +321,29 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|||
set(CMAKE_REQUIRED_LIBRARIES ${LAPACK_LIBRARIES})
|
||||
# Check if new routine of 3.4.0 is in LAPACK_LIBRARIES
|
||||
- CHECK_FORTRAN_FUNCTION_EXISTS("dgeqrt" LATESTLAPACK_FOUND)
|
||||
- unset( CMAKE_REQUIRED_LIBRARIES )
|
||||
- if(LATESTLAPACK_FOUND)
|
||||
+ CHECK_FORTRAN_FUNCTION_EXISTS("dgeqrt" LAPACK_FOUND)
|
||||
+ unset(CMAKE_REQUIRED_LIBRARIES)
|
||||
unset(CMAKE_REQUIRED_LIBRARIES)
|
||||
- if(LATESTLAPACK_FOUND)
|
||||
+ if(LAPACK_FOUND)
|
||||
message(STATUS "--> LAPACK supplied by user is WORKING, will use ${LAPACK_LIBRARIES}.")
|
||||
- else(LAPACK_FOUND)
|
||||
- message(ERROR "--> LAPACK supplied by user is not WORKING or is older than LAPACK 3.4.0, CANNOT USE ${LAPACK_LIBRARIES}.")
|
||||
else()
|
||||
- message(ERROR "--> LAPACK supplied by user is not WORKING or is older than LAPACK 3.4.0, CANNOT USE ${LAPACK_LIBRARIES}.")
|
||||
- message(ERROR "--> Will use REFERENCE LAPACK (by default)")
|
||||
- message(ERROR "--> Or Correct your LAPACK_LIBRARIES entry ")
|
||||
- message(ERROR "--> Or Consider checking USE_OPTIMIZED_LAPACK")
|
||||
- endif(LATESTLAPACK_FOUND)
|
||||
-endif (LAPACK_LIBRARIES)
|
||||
+ else()
|
||||
+ message(SEND_ERROR "--> LAPACK supplied by user is NOT WORKING or is older than LAPACK 3.4.0, cannot use ${LAPACK_LIBRARIES}.")
|
||||
+ endif()
|
||||
+
|
||||
endif()
|
||||
-endif()
|
||||
|
||||
-# Neither user specified or optimized LAPACK libraries can be used
|
||||
-if(NOT LATESTLAPACK_FOUND)
|
||||
- message(STATUS "Using supplied NETLIB LAPACK implementation")
|
||||
+# User did not provide a LAPACK Library but specified to search for one
|
||||
+elseif(USE_OPTIMIZED_LAPACK)
|
||||
+ find_package(LAPACK)
|
||||
+
|
||||
+elseif(BUILD_LAPACK)
|
||||
+ set(LAPACK_LIBRARIES lapack)
|
||||
set(LAPACK_LIBRARIES lapack)
|
||||
+ set(LAPACK_FOUND TRUE)
|
||||
+
|
||||
+ set(NEED_BLAS TRUE)
|
||||
|
@ -350,34 +358,24 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|||
+ CHECK_TIME_FUNCTION(INT_ETIME TIME_FUNC)
|
||||
+ message(STATUS "--> Will use second_${TIME_FUNC}.f and dsecnd_${TIME_FUNC}.f as timing function.")
|
||||
+
|
||||
+ set(SECOND_SRC ${LAPACK_SOURCE_DIR}/INSTALL/second_${TIME_FUNC}.f)
|
||||
+ set(DSECOND_SRC ${LAPACK_SOURCE_DIR}/INSTALL/dsecnd_${TIME_FUNC}.f)
|
||||
|
||||
-# Neither user specified or optimized LAPACK libraries can be used
|
||||
-if(NOT LATESTLAPACK_FOUND)
|
||||
- message(STATUS "Using supplied NETLIB LAPACK implementation")
|
||||
- set( LAPACK_LIBRARIES lapack )
|
||||
+ set(SECOND_SRC ${LAPACK_SOURCE_DIR}/INSTALL/second_${TIME_FUNC}.f)
|
||||
+ set(DSECOND_SRC ${LAPACK_SOURCE_DIR}/INSTALL/dsecnd_${TIME_FUNC}.f)
|
||||
+
|
||||
add_subdirectory(SRC)
|
||||
-else()
|
||||
- set( CMAKE_EXE_LINKER_FLAGS
|
||||
- "${CMAKE_EXE_LINKER_FLAGS} ${LAPACK_LINKER_FLAGS}"
|
||||
- set(CMAKE_EXE_LINKER_FLAGS
|
||||
- "${CMAKE_EXE_LINKER_FLAGS} ${LAPACK_LINKER_FLAGS}"
|
||||
- CACHE STRING "Linker flags for executables" FORCE)
|
||||
- set( CMAKE_MODULE_LINKER_FLAGS
|
||||
- "${CMAKE_MODULE_LINKER_FLAGS} ${LAPACK_LINKER_FLAGS}"
|
||||
- set(CMAKE_MODULE_LINKER_FLAGS
|
||||
- "${CMAKE_MODULE_LINKER_FLAGS} ${LAPACK_LINKER_FLAGS}"
|
||||
- CACHE STRING "Linker flags for modules" FORCE)
|
||||
- set( CMAKE_SHARED_LINKER_FLAGS
|
||||
- "${CMAKE_SHARED_LINKER_FLAGS} ${LAPACK_LINKER_FLAGS}"
|
||||
- set(CMAKE_SHARED_LINKER_FLAGS
|
||||
- "${CMAKE_SHARED_LINKER_FLAGS} ${LAPACK_LINKER_FLAGS}"
|
||||
- CACHE STRING "Linker flags for shared libs" FORCE)
|
||||
-endif( NOT LATESTLAPACK_FOUND )
|
||||
-
|
||||
-message(STATUS "BUILD TESTING : ${BUILD_TESTING}" )
|
||||
-endif()
|
||||
|
||||
-if(BUILD_TESTING)
|
||||
- add_subdirectory(TESTING)
|
||||
-endif(BUILD_TESTING)
|
||||
|
||||
-# deprecated LAPACK routines
|
||||
-option(BUILD_DEPRECATED "Build deprecated routines" OFF)
|
||||
+ message(STATUS "BUILD TESTING : ${BUILD_TESTING}")
|
||||
+ if(BUILD_TESTING)
|
||||
+ add_subdirectory(TESTING)
|
||||
+ endif()
|
||||
|
@ -385,8 +383,9 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|||
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapack.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapack.pc @ONLY)
|
||||
+ install(FILES
|
||||
+ ${CMAKE_CURRENT_BINARY_DIR}/lapack.pc
|
||||
+ DESTINATION ${PKG_CONFIG_DIR})
|
||||
+endif()
|
||||
+ DESTINATION ${PKG_CONFIG_DIR}
|
||||
+ )
|
||||
endif()
|
||||
|
||||
# --------------------------------------------------
|
||||
# LAPACKE
|
||||
|
@ -396,93 +395,88 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|||
# LAPACKE has also the interface to some routines from tmglib,
|
||||
# if LAPACKE_WITH_TMG is selected, we need to add those routines to LAPACKE
|
||||
option(LAPACKE_WITH_TMG "Build LAPACKE with tmglib routines" OFF)
|
||||
if (LAPACKE_WITH_TMG)
|
||||
if(LAPACKE_WITH_TMG)
|
||||
- set(LAPACKE ON)
|
||||
+ set(BUILD_LAPACKE ON)
|
||||
if(NOT BUILD_TESTING)
|
||||
add_subdirectory(TESTING/MATGEN)
|
||||
endif(NOT BUILD_TESTING)
|
||||
endif(LAPACKE_WITH_TMG)
|
||||
endif()
|
||||
if(BUILD_TESTING OR LAPACKE_WITH_TMG) #already included, avoid double inclusion
|
||||
add_subdirectory(TESTING/MATGEN)
|
||||
endif()
|
||||
|
||||
-if(LAPACKE)
|
||||
+if(BUILD_LAPACKE)
|
||||
+ set(NEED_LAPACK TRUE)
|
||||
add_subdirectory(LAPACKE)
|
||||
-endif(LAPACKE)
|
||||
-
|
||||
endif()
|
||||
|
||||
-# --------------------------------------------------
|
||||
-# CPACK Packaging
|
||||
-# CPACK Packaging
|
||||
-
|
||||
-SET(CPACK_PACKAGE_NAME "LAPACK")
|
||||
-SET(CPACK_PACKAGE_VENDOR "University of Tennessee, Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd")
|
||||
-SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "LAPACK- Linear Algebra Package")
|
||||
-set(CPACK_PACKAGE_NAME "LAPACK")
|
||||
-set(CPACK_PACKAGE_VENDOR "University of Tennessee, Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd")
|
||||
-set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "LAPACK- Linear Algebra Package")
|
||||
-set(CPACK_PACKAGE_VERSION_MAJOR 3)
|
||||
-set(CPACK_PACKAGE_VERSION_MINOR 5)
|
||||
-set(CPACK_PACKAGE_VERSION_PATCH 0)
|
||||
-set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE")
|
||||
-SET(CPACK_PACKAGE_INSTALL_DIRECTORY "LAPACK")
|
||||
-IF(WIN32 AND NOT UNIX)
|
||||
-set(CPACK_PACKAGE_INSTALL_DIRECTORY "LAPACK")
|
||||
-if(WIN32 AND NOT UNIX)
|
||||
- # There is a bug in NSI that does not handle full unix paths properly. Make
|
||||
- # sure there is at least one set of four (4) backlasshes.
|
||||
- SET(CPACK_NSIS_HELP_LINK "http:\\\\\\\\http://icl.cs.utk.edu/lapack-forum")
|
||||
- SET(CPACK_NSIS_URL_INFO_ABOUT "http:\\\\\\\\www.netlib.org/lapack")
|
||||
- SET(CPACK_NSIS_CONTACT "lapack@eecs.utk.edu")
|
||||
- SET(CPACK_NSIS_MODIFY_PATH ON)
|
||||
- SET(CPACK_NSIS_DISPLAY_NAME "LAPACK-${LAPACK_VERSION}")
|
||||
- set(CPACK_NSIS_HELP_LINK "http:\\\\\\\\http://icl.cs.utk.edu/lapack-forum")
|
||||
- set(CPACK_NSIS_URL_INFO_ABOUT "http:\\\\\\\\www.netlib.org/lapack")
|
||||
- set(CPACK_NSIS_CONTACT "lapack@eecs.utk.edu")
|
||||
- set(CPACK_NSIS_MODIFY_PATH ON)
|
||||
- set(CPACK_NSIS_DISPLAY_NAME "LAPACK-${LAPACK_VERSION}")
|
||||
- set(CPACK_PACKAGE_RELOCATABLE "true")
|
||||
-ELSE(WIN32 AND NOT UNIX)
|
||||
- SET(CPACK_GENERATOR "TGZ")
|
||||
- SET(CPACK_SOURCE_GENERATOR TGZ)
|
||||
- SET(CPACK_SOURCE_PACKAGE_FILE_NAME "lapack-${LAPACK_VERSION}" )
|
||||
- SET(CPACK_SOURCE_IGNORE_FILES ~$ .svn ${CPACK_SOURCE_IGNORE_FILES} )
|
||||
-ENDIF(WIN32 AND NOT UNIX)
|
||||
-INCLUDE(CPack)
|
||||
+endif(BUILD_LAPACKE)
|
||||
|
||||
|
||||
-else()
|
||||
- set(CPACK_GENERATOR "TGZ")
|
||||
- set(CPACK_SOURCE_GENERATOR TGZ)
|
||||
- set(CPACK_SOURCE_PACKAGE_FILE_NAME "lapack-${LAPACK_VERSION}")
|
||||
- set(CPACK_SOURCE_IGNORE_FILES ~$ .svn ${CPACK_SOURCE_IGNORE_FILES})
|
||||
-endif()
|
||||
-include(CPack)
|
||||
-
|
||||
-
|
||||
-# --------------------------------------------------
|
||||
-# By default static library
|
||||
-OPTION(BUILD_SHARED_LIBS "Build shared libraries" OFF )
|
||||
-OPTION(BUILD_STATIC_LIBS "Build static libraries" ON )
|
||||
-#OPTION(BUILD_SHARED_LIBS "Build shared libraries" ON )
|
||||
-
|
||||
-if(NOT BLAS_FOUND)
|
||||
- set(ALL_TARGETS ${ALL_TARGETS} blas)
|
||||
-endif(NOT BLAS_FOUND)
|
||||
-
|
||||
-endif()
|
||||
|
||||
-if(NOT LATESTLAPACK_FOUND)
|
||||
- set(ALL_TARGETS ${ALL_TARGETS} lapack)
|
||||
-endif(NOT LATESTLAPACK_FOUND)
|
||||
-endif()
|
||||
-
|
||||
-if(BUILD_TESTING OR LAPACKE_WITH_TMG)
|
||||
- set(ALL_TARGETS ${ALL_TARGETS} tmglib)
|
||||
-endif(BUILD_TESTING OR LAPACKE_WITH_TMG)
|
||||
-endif()
|
||||
-
|
||||
-# Export lapack targets, not including lapacke, from the
|
||||
-# install tree, if any.
|
||||
-set(_lapack_config_install_guard_target "")
|
||||
-if(ALL_TARGETS)
|
||||
- install(EXPORT lapack-targets
|
||||
- DESTINATION ${LIBRARY_DIR}/cmake/lapack-${LAPACK_VERSION})
|
||||
- DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/lapack-${LAPACK_VERSION})
|
||||
-
|
||||
- # Choose one of the lapack targets to use as a guard for
|
||||
- # lapack-config.cmake to load targets from the install tree.
|
||||
- list(GET ALL_TARGETS 0 _lapack_config_install_guard_target)
|
||||
-endif()
|
||||
-
|
||||
-# Include cblas in targets exported from the build tree.
|
||||
-if(CBLAS)
|
||||
- set(ALL_TARGETS ${ALL_TARGETS} cblas)
|
||||
-endif()
|
||||
-
|
||||
-# Include lapacke in targets exported from the build tree.
|
||||
-if(LAPACKE)
|
||||
- set(ALL_TARGETS ${ALL_TARGETS} lapacke)
|
||||
+# Neither user specified or optimized BLAS libraries can be used
|
||||
+if(NEED_BLAS AND NOT BLAS_FOUND)
|
||||
+ message(FATAL_ERROR "--> No BLAS library found. Specify BLAS_LIBRARIES or enable USE_OPTIMIZED_BLAS or BUILD_BLAS.")
|
||||
endif()
|
||||
|
||||
-# Include cblas in targets exported from the build tree.
|
||||
-if(CBLAS)
|
||||
- set(ALL_TARGETS ${ALL_TARGETS} cblas)
|
||||
-endif(CBLAS)
|
||||
-
|
||||
-# Include lapacke in targets exported from the build tree.
|
||||
-if(LAPACKE)
|
||||
- set(ALL_TARGETS ${ALL_TARGETS} lapacke)
|
||||
-endif(LAPACKE)
|
||||
-
|
||||
-# Export lapack and lapacke targets from the build tree, if any.
|
||||
-set(_lapack_config_build_guard_target "")
|
||||
-if(ALL_TARGETS)
|
||||
|
@ -504,7 +498,7 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|||
- install(FILES
|
||||
- ${CMAKE_CURRENT_BINARY_DIR}/lapack.pc
|
||||
- DESTINATION ${PKG_CONFIG_DIR}
|
||||
- )
|
||||
- )
|
||||
-
|
||||
-configure_file(${LAPACK_SOURCE_DIR}/CMAKE/lapack-config-install.cmake.in
|
||||
- ${LAPACK_BINARY_DIR}/CMakeFiles/lapack-config.cmake @ONLY)
|
||||
|
@ -519,7 +513,7 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt
|
|||
-install(FILES
|
||||
- ${LAPACK_BINARY_DIR}/CMakeFiles/lapack-config.cmake
|
||||
- ${LAPACK_BINARY_DIR}/lapack-config-version.cmake
|
||||
- DESTINATION ${LIBRARY_DIR}/cmake/lapack-${LAPACK_VERSION}
|
||||
- DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/lapack-${LAPACK_VERSION}
|
||||
- )
|
||||
diff --git a/LAPACKE/CMakeLists.txt b/LAPACKE/CMakeLists.txt
|
||||
--- a/LAPACKE/CMakeLists.txt
|
||||
|
@ -530,13 +524,13 @@ diff --git a/LAPACKE/CMakeLists.txt b/LAPACKE/CMakeLists.txt
|
|||
|
||||
-set(LAPACK_INSTALL_EXPORT_NAME lapacke-targets)
|
||||
-
|
||||
# Create a header file netlib.h for the routines called in my C programs
|
||||
# Create a header file lapacke_mangling.h for the routines called in my C programs
|
||||
include(FortranCInterface)
|
||||
FortranCInterface_HEADER( ${CMAKE_CURRENT_SOURCE_DIR}/include/lapacke_mangling.h
|
||||
@@ -74,19 +72,3 @@
|
||||
## Ensure that the fortran compiler and c compiler specified are compatible
|
||||
@@ -79,19 +77,3 @@
|
||||
${CMAKE_CURRENT_BINARY_DIR}/lapacke.pc
|
||||
DESTINATION ${PKG_CONFIG_DIR}
|
||||
)
|
||||
)
|
||||
-
|
||||
-configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/lapacke-config-version.cmake.in
|
||||
- ${LAPACK_BINARY_DIR}/lapacke-config-version.cmake @ONLY)
|
||||
|
@ -548,11 +542,11 @@ diff --git a/LAPACKE/CMakeLists.txt b/LAPACKE/CMakeLists.txt
|
|||
-install(FILES
|
||||
- ${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/lapacke-config.cmake
|
||||
- ${LAPACK_BINARY_DIR}/lapacke-config-version.cmake
|
||||
- DESTINATION ${LIBRARY_DIR}/cmake/lapacke-${LAPACK_VERSION}
|
||||
- DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/lapacke-${LAPACK_VERSION}
|
||||
- )
|
||||
-
|
||||
-install(EXPORT lapacke-targets
|
||||
- DESTINATION lib/cmake/lapacke-${LAPACK_VERSION})
|
||||
- DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/lapacke-${LAPACK_VERSION})
|
||||
diff --git a/LAPACKE/cmake/lapacke-config-build.cmake.in b/LAPACKE/cmake/lapacke-config-build.cmake.in
|
||||
deleted file mode 100644
|
||||
--- a/LAPACKE/cmake/lapacke-config-build.cmake.in
|
||||
|
@ -567,8 +561,8 @@ deleted file mode 100644
|
|||
- include("@LAPACK_BINARY_DIR@/lapack-targets.cmake")
|
||||
-endif()
|
||||
-
|
||||
-# Report lapacke header search locations.
|
||||
-set(LAPACKE_INCLUDE_DIRS "@LAPACK_SOURCE_DIR@/lapacke/include")
|
||||
-# Report lapacke header search locations from build tree.
|
||||
-set(LAPACKE_INCLUDE_DIRS "@LAPACK_BINARY_DIR@/include")
|
||||
-
|
||||
-# Report lapacke libraries.
|
||||
-set(LAPACKE_LIBRARIES lapacke)
|
||||
|
@ -577,14 +571,14 @@ deleted file mode 100644
|
|||
--- a/LAPACKE/cmake/lapacke-config-install.cmake.in
|
||||
+++ /dev/null
|
||||
@@ -1,23 +0,0 @@
|
||||
-# Compute locations from <prefix>/lib/cmake/lapacke-<v>/<self>.cmake
|
||||
-# Compute locations from <prefix>/@{LIBRARY_DIR@/cmake/lapacke-<v>/<self>.cmake
|
||||
-get_filename_component(_LAPACKE_SELF_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
|
||||
-get_filename_component(_LAPACKE_PREFIX "${_LAPACKE_SELF_DIR}" PATH)
|
||||
-get_filename_component(_LAPACKE_PREFIX "${_LAPACKE_PREFIX}" PATH)
|
||||
-get_filename_component(_LAPACKE_PREFIX "${_LAPACKE_PREFIX}" PATH)
|
||||
-
|
||||
-# Load the LAPACK package with which we were built.
|
||||
-set(LAPACK_DIR "${_LAPACKE_PREFIX}/lib/cmake/lapack-@LAPACK_VERSION@")
|
||||
-set(LAPACK_DIR "${_LAPACKE_PREFIX}/@{LIBRARY_DIR@/cmake/lapack-@LAPACK_VERSION@")
|
||||
-find_package(LAPACK NO_MODULE)
|
||||
-
|
||||
-# Load lapacke targets from the install tree.
|
||||
|
|
|
@ -1,127 +0,0 @@
|
|||
diff --git a/BLAS/CMakeLists.txt b/BLAS/CMakeLists.txt
|
||||
--- a/BLAS/CMakeLists.txt
|
||||
+++ b/BLAS/CMakeLists.txt
|
||||
@@ -2,7 +2,7 @@
|
||||
if(BUILD_TESTING)
|
||||
add_subdirectory(TESTING)
|
||||
endif(BUILD_TESTING)
|
||||
-configure_file(${CMAKE_CURRENT_SOURCE_DIR}/blas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/blas.pc)
|
||||
+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/blas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/blas.pc @ONLY)
|
||||
install(FILES
|
||||
${CMAKE_CURRENT_BINARY_DIR}/blas.pc
|
||||
DESTINATION ${PKG_CONFIG_DIR}
|
||||
diff --git a/BLAS/blas.pc.in b/BLAS/blas.pc.in
|
||||
--- a/BLAS/blas.pc.in
|
||||
+++ b/BLAS/blas.pc.in
|
||||
@@ -1,9 +1,9 @@
|
||||
-prefix=@CMAKE_INSTALL_PREFIX@
|
||||
-libdir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@
|
||||
+prefix=@prefix@
|
||||
+libdir=@libdir@
|
||||
|
||||
-Name: blas
|
||||
+Name: BLAS
|
||||
Description: Basic Linear Algebra Subprograms F77 reference implementations
|
||||
Version: @LAPACK_VERSION@
|
||||
URL: http://www.netlib.org/blas/
|
||||
-Libs: -L@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@ -lblas
|
||||
+Libs: -L${libdir} -lblas
|
||||
Libs.private: -lm
|
||||
diff --git a/CBLAS/CMakeLists.txt b/CBLAS/CMakeLists.txt
|
||||
--- a/CBLAS/CMakeLists.txt
|
||||
+++ b/CBLAS/CMakeLists.txt
|
||||
@@ -71,7 +71,7 @@
|
||||
${LAPACK_BINARY_DIR}/cblas-config.cmake @ONLY)
|
||||
|
||||
|
||||
-configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cblas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/cblas.pc)
|
||||
+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cblas.pc.in ${CMAKE_CURRENT_BINARY_DIR}/cblas.pc @ONLY)
|
||||
install(FILES
|
||||
${CMAKE_CURRENT_BINARY_DIR}/cblas.pc
|
||||
DESTINATION ${PKG_CONFIG_DIR}
|
||||
diff --git a/CBLAS/cblas.pc.in b/CBLAS/cblas.pc.in
|
||||
--- a/CBLAS/cblas.pc.in
|
||||
+++ b/CBLAS/cblas.pc.in
|
||||
@@ -1,9 +1,9 @@
|
||||
prefix=@prefix@
|
||||
libdir=@libdir@
|
||||
|
||||
-Name: lapacke
|
||||
-Description: C Standard Interface to BLAS Linear Algebra PACKage
|
||||
+Name: CBLAS
|
||||
+Description: C Standard Interface to BLAS Basic Linear Algebra Subprograms
|
||||
Version: @LAPACK_VERSION@
|
||||
-URL: http://www.netlib.org/lapack/
|
||||
+URL: http://www.netlib.org/blas/#_cblas
|
||||
Libs: -L${libdir} -lcblas
|
||||
Requires: blas
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -138,6 +138,13 @@
|
||||
set(DSECOND_SRC ${LAPACK_SOURCE_DIR}/INSTALL/dsecnd_${TIME_FUNC}.f)
|
||||
set(PKG_CONFIG_DIR ${LIBRARY_DIR}/pkgconfig)
|
||||
|
||||
+set(prefix ${CMAKE_INSTALL_PREFIX})
|
||||
+if(NOT IS_ABSOLUTE ${LIBRARY_DIR})
|
||||
+ set(libdir "\${prefix}/${LIBRARY_DIR}")
|
||||
+else()
|
||||
+ set(libdir "${LIBRARY_DIR}")
|
||||
+endif()
|
||||
+
|
||||
# --------------------------------------------------
|
||||
# Precision to build
|
||||
# By default all precisions are generated
|
||||
@@ -359,7 +366,7 @@
|
||||
${LAPACK_BINARY_DIR}/lapack-config.cmake @ONLY)
|
||||
|
||||
|
||||
-configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapack.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapack.pc)
|
||||
+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapack.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapack.pc @ONLY)
|
||||
install(FILES
|
||||
${CMAKE_CURRENT_BINARY_DIR}/lapack.pc
|
||||
DESTINATION ${PKG_CONFIG_DIR}
|
||||
diff --git a/LAPACKE/CMakeLists.txt b/LAPACKE/CMakeLists.txt
|
||||
--- a/LAPACKE/CMakeLists.txt
|
||||
+++ b/LAPACKE/CMakeLists.txt
|
||||
@@ -65,7 +65,7 @@
|
||||
endif(BUILD_TESTING)
|
||||
|
||||
|
||||
-configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapacke.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapacke.pc)
|
||||
+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/lapacke.pc.in ${CMAKE_CURRENT_BINARY_DIR}/lapacke.pc @ONLY)
|
||||
install(FILES
|
||||
${CMAKE_CURRENT_BINARY_DIR}/lapacke.pc
|
||||
DESTINATION ${PKG_CONFIG_DIR}
|
||||
diff --git a/LAPACKE/lapacke.pc.in b/LAPACKE/lapacke.pc.in
|
||||
--- a/LAPACKE/lapacke.pc.in
|
||||
+++ b/LAPACKE/lapacke.pc.in
|
||||
@@ -1,9 +1,9 @@
|
||||
prefix=@prefix@
|
||||
libdir=@libdir@
|
||||
|
||||
-Name: lapacke
|
||||
+Name: LAPACKE
|
||||
Description: C Standard Interface to LAPACK Linear Algebra PACKage
|
||||
Version: @LAPACK_VERSION@
|
||||
-URL: http://www.netlib.org/lapack/
|
||||
+URL: http://www.netlib.org/lapack/#_standard_c_language_apis_for_lapack
|
||||
Libs: -L${libdir} -llapacke
|
||||
Requires: lapack blas
|
||||
diff --git a/lapack.pc.in b/lapack.pc.in
|
||||
--- a/lapack.pc.in
|
||||
+++ b/lapack.pc.in
|
||||
@@ -1,9 +1,9 @@
|
||||
-prefix=@CMAKE_INSTALL_PREFIX@
|
||||
-libdir=@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@
|
||||
+prefix=@prefix@
|
||||
+libdir=@libdir@
|
||||
|
||||
-Name: lapack
|
||||
+Name: LAPACK
|
||||
Description: FORTRAN reference implementation of LAPACK Linear Algebra PACKage
|
||||
Version: @LAPACK_VERSION@
|
||||
URL: http://www.netlib.org/lapack/
|
||||
-Libs: -L@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@ -llapack
|
||||
+Libs: -L${libdir} -llapack
|
||||
Requires: blas
|
|
@ -1,232 +0,0 @@
|
|||
diff --git a/BLAS/SRC/CMakeLists.txt b/BLAS/SRC/CMakeLists.txt
|
||||
--- a/BLAS/SRC/CMakeLists.txt
|
||||
+++ b/BLAS/SRC/CMakeLists.txt
|
||||
@@ -137,13 +137,9 @@
|
||||
|
||||
|
||||
add_library(blas ${ALLOBJ})
|
||||
-#if(UNIX)
|
||||
-# target_link_libraries(blas m)
|
||||
-#endif()
|
||||
set_target_properties(
|
||||
blas PROPERTIES
|
||||
VERSION ${LAPACK_VERSION}
|
||||
SOVERSION ${LAPACK_MAJOR_VERSION}
|
||||
)
|
||||
-target_link_libraries(blas)
|
||||
lapack_install_library(blas)
|
||||
diff --git a/BLAS/blas.pc.in b/BLAS/blas.pc.in
|
||||
--- a/BLAS/blas.pc.in
|
||||
+++ b/BLAS/blas.pc.in
|
||||
@@ -6,4 +6,3 @@
|
||||
Version: @LAPACK_VERSION@
|
||||
URL: http://www.netlib.org/blas/
|
||||
Libs: -L${libdir} -lblas
|
||||
-Libs.private: -lm
|
||||
diff --git a/CBLAS/cblas.pc.in b/CBLAS/cblas.pc.in
|
||||
--- a/CBLAS/cblas.pc.in
|
||||
+++ b/CBLAS/cblas.pc.in
|
||||
@@ -6,4 +6,4 @@
|
||||
Version: @LAPACK_VERSION@
|
||||
URL: http://www.netlib.org/blas/#_cblas
|
||||
Libs: -L${libdir} -lcblas
|
||||
-Requires: blas
|
||||
+Requires.private: blas
|
||||
diff --git a/CBLAS/examples/CMakeLists.txt b/CBLAS/examples/CMakeLists.txt
|
||||
--- a/CBLAS/examples/CMakeLists.txt
|
||||
+++ b/CBLAS/examples/CMakeLists.txt
|
||||
@@ -1,8 +1,8 @@
|
||||
add_executable(xexample1_CBLAS cblas_example1.c )
|
||||
add_executable(xexample2_CBLAS cblas_example2.c )
|
||||
|
||||
-target_link_libraries(xexample1_CBLAS cblas ${BLAS_LIBRARIES})
|
||||
-target_link_libraries(xexample2_CBLAS cblas ${BLAS_LIBRARIES})
|
||||
+target_link_libraries(xexample1_CBLAS cblas)
|
||||
+target_link_libraries(xexample2_CBLAS cblas)
|
||||
|
||||
add_test(example1_CBLAS ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/xexample1_CBLAS)
|
||||
add_test(example2_CBLAS ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/xexample2_CBLAS)
|
||||
diff --git a/CBLAS/src/CMakeLists.txt b/CBLAS/src/CMakeLists.txt
|
||||
--- a/CBLAS/src/CMakeLists.txt
|
||||
+++ b/CBLAS/src/CMakeLists.txt
|
||||
@@ -164,5 +164,9 @@
|
||||
endif(CBLAS_COMPLEX16)
|
||||
|
||||
add_library(cblas ${ALLOBJ})
|
||||
-target_link_libraries(cblas ${BLAS_LIBRARIES} )
|
||||
+target_link_libraries(cblas PRIVATE ${BLAS_LIBRARIES})
|
||||
+set_target_properties(
|
||||
+ cblas PROPERTIES
|
||||
+ LINKER_LANGUAGE C
|
||||
+ )
|
||||
lapack_install_library(cblas)
|
||||
diff --git a/CBLAS/testing/CMakeLists.txt b/CBLAS/testing/CMakeLists.txt
|
||||
--- a/CBLAS/testing/CMakeLists.txt
|
||||
+++ b/CBLAS/testing/CMakeLists.txt
|
||||
@@ -54,9 +54,9 @@
|
||||
add_executable(xscblat2 c_sblat2.f ${STESTL2O} ${LAPACK_BINARY_DIR}/include/cblas_test.h)
|
||||
add_executable(xscblat3 c_sblat3.f ${STESTL3O} ${LAPACK_BINARY_DIR}/include/cblas_test.h)
|
||||
|
||||
- target_link_libraries(xscblat1 cblas ${BLAS_LIBRARIES})
|
||||
- target_link_libraries(xscblat2 cblas ${BLAS_LIBRARIES})
|
||||
- target_link_libraries(xscblat3 cblas ${BLAS_LIBRARIES})
|
||||
+ target_link_libraries(xscblat1 cblas)
|
||||
+ target_link_libraries(xscblat2 cblas)
|
||||
+ target_link_libraries(xscblat3 cblas)
|
||||
|
||||
add_cblas_test(stest1.out "" xscblat1)
|
||||
add_cblas_test(stest2.out sin2 xscblat2)
|
||||
@@ -70,9 +70,9 @@
|
||||
add_executable(xdcblat2 c_dblat2.f ${DTESTL2O} ${LAPACK_BINARY_DIR}/include/cblas_test.h)
|
||||
add_executable(xdcblat3 c_dblat3.f ${DTESTL3O} ${LAPACK_BINARY_DIR}/include/cblas_test.h)
|
||||
|
||||
- target_link_libraries(xdcblat1 cblas ${BLAS_LIBRARIES})
|
||||
- target_link_libraries(xdcblat2 cblas ${BLAS_LIBRARIES})
|
||||
- target_link_libraries(xdcblat3 cblas ${BLAS_LIBRARIES})
|
||||
+ target_link_libraries(xdcblat1 cblas)
|
||||
+ target_link_libraries(xdcblat2 cblas)
|
||||
+ target_link_libraries(xdcblat3 cblas)
|
||||
|
||||
add_cblas_test(dtest1.out "" xdcblat1)
|
||||
add_cblas_test(dtest2.out din2 xdcblat2)
|
||||
@@ -86,9 +86,9 @@
|
||||
add_executable(xccblat2 c_cblat2.f ${CTESTL2O} ${LAPACK_BINARY_DIR}/include/cblas_test.h)
|
||||
add_executable(xccblat3 c_cblat3.f ${CTESTL3O} ${LAPACK_BINARY_DIR}/include/cblas_test.h)
|
||||
|
||||
- target_link_libraries(xccblat1 cblas ${BLAS_LIBRARIES})
|
||||
- target_link_libraries(xccblat2 cblas ${BLAS_LIBRARIES})
|
||||
- target_link_libraries(xccblat3 cblas ${BLAS_LIBRARIES})
|
||||
+ target_link_libraries(xccblat1 cblas)
|
||||
+ target_link_libraries(xccblat2 cblas)
|
||||
+ target_link_libraries(xccblat3 cblas)
|
||||
|
||||
add_cblas_test(ctest1.out "" xccblat1)
|
||||
add_cblas_test(ctest2.out cin2 xccblat2)
|
||||
@@ -102,9 +102,9 @@
|
||||
add_executable(xzcblat2 c_zblat2.f ${ZTESTL2O} ${LAPACK_BINARY_DIR}/include/cblas_test.h)
|
||||
add_executable(xzcblat3 c_zblat3.f ${ZTESTL3O} ${LAPACK_BINARY_DIR}/include/cblas_test.h)
|
||||
|
||||
- target_link_libraries(xzcblat1 cblas ${BLAS_LIBRARIES})
|
||||
- target_link_libraries(xzcblat2 cblas ${BLAS_LIBRARIES})
|
||||
- target_link_libraries(xzcblat3 cblas ${BLAS_LIBRARIES})
|
||||
+ target_link_libraries(xzcblat1 cblas)
|
||||
+ target_link_libraries(xzcblat2 cblas)
|
||||
+ target_link_libraries(xzcblat3 cblas)
|
||||
|
||||
add_cblas_test(ztest1.out "" xzcblat1)
|
||||
add_cblas_test(ztest2.out zin2 xzcblat2)
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -1,5 +1,5 @@
|
||||
cmake_minimum_required(VERSION 2.8.10)
|
||||
-project(LAPACK Fortran)
|
||||
+project(LAPACK C Fortran)
|
||||
|
||||
set(LAPACK_MAJOR_VERSION 3)
|
||||
set(LAPACK_MINOR_VERSION 6)
|
||||
diff --git a/LAPACKE/CMakeLists.txt b/LAPACKE/CMakeLists.txt
|
||||
--- a/LAPACKE/CMakeLists.txt
|
||||
+++ b/LAPACKE/CMakeLists.txt
|
||||
@@ -46,17 +46,21 @@
|
||||
|
||||
if (USE_XBLAS)
|
||||
add_library(lapacke ${SRC_OBJ} ${SRCX_OBJ} ${UTILS_OBJ})
|
||||
- target_link_libraries(lapacke ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES} ${XBLAS_LIBRARY})
|
||||
+ target_link_libraries(lapacke PRIVATE ${LAPACK_LIBRARIES})
|
||||
else (USE_XBLAS)
|
||||
if (LAPACKE_WITH_TMG)
|
||||
add_library(lapacke ${SRC_OBJ} ${MATGEN_OBJ} ${UTILS_OBJ})
|
||||
- target_link_libraries(lapacke tmglib ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES})
|
||||
+ target_link_libraries(lapacke PRIVATE tmglib ${LAPACK_LIBRARIES})
|
||||
else (LAPACKE_WITH_TMG)
|
||||
add_library(lapacke ${SRC_OBJ} ${UTILS_OBJ})
|
||||
- target_link_libraries(lapacke ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES})
|
||||
+ target_link_libraries(lapacke PRIVATE ${LAPACK_LIBRARIES})
|
||||
endif(LAPACKE_WITH_TMG)
|
||||
endif(USE_XBLAS)
|
||||
|
||||
+set_target_properties(
|
||||
+ lapacke PROPERTIES
|
||||
+ LINKER_LANGUAGE C
|
||||
+ )
|
||||
lapack_install_library(lapacke)
|
||||
INSTALL( FILES ${LAPACKE_INCLUDE} DESTINATION include )
|
||||
|
||||
diff --git a/LAPACKE/example/CMakeLists.txt b/LAPACKE/example/CMakeLists.txt
|
||||
--- a/LAPACKE/example/CMakeLists.txt
|
||||
+++ b/LAPACKE/example/CMakeLists.txt
|
||||
@@ -3,10 +3,10 @@
|
||||
add_executable(xexample_DGELS_rowmajor example_DGELS_rowmajor.c lapacke_example_aux.c lapacke_example_aux.h)
|
||||
add_executable(xexample_DGELS_colmajor example_DGELS_colmajor.c lapacke_example_aux.c lapacke_example_aux.h)
|
||||
|
||||
-target_link_libraries(xexample_DGESV_rowmajor lapacke ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES})
|
||||
-target_link_libraries(xexample_DGESV_colmajor lapacke ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES})
|
||||
-target_link_libraries(xexample_DGELS_rowmajor lapacke ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES})
|
||||
-target_link_libraries(xexample_DGELS_colmajor lapacke ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES})
|
||||
+target_link_libraries(xexample_DGESV_rowmajor lapacke)
|
||||
+target_link_libraries(xexample_DGESV_colmajor lapacke)
|
||||
+target_link_libraries(xexample_DGELS_rowmajor lapacke)
|
||||
+target_link_libraries(xexample_DGELS_colmajor lapacke)
|
||||
|
||||
add_test(example_DGESV_rowmajor ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/xexample_DGESV_rowmajor)
|
||||
add_test(example_DGESV_colmajor ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/xexample_DGESV_colmajor)
|
||||
diff --git a/LAPACKE/lapacke.pc.in b/LAPACKE/lapacke.pc.in
|
||||
--- a/LAPACKE/lapacke.pc.in
|
||||
+++ b/LAPACKE/lapacke.pc.in
|
||||
@@ -6,4 +6,4 @@
|
||||
Version: @LAPACK_VERSION@
|
||||
URL: http://www.netlib.org/lapack/#_standard_c_language_apis_for_lapack
|
||||
Libs: -L${libdir} -llapacke
|
||||
-Requires: lapack blas
|
||||
+Requires.private: lapack
|
||||
diff --git a/SRC/CMakeLists.txt b/SRC/CMakeLists.txt
|
||||
--- a/SRC/CMakeLists.txt
|
||||
+++ b/SRC/CMakeLists.txt
|
||||
@@ -455,12 +455,10 @@
|
||||
list(REMOVE_DUPLICATES ALLOBJ)
|
||||
|
||||
add_library(lapack ${ALLOBJ} ${ALLXOBJ})
|
||||
-target_link_libraries(lapack ${BLAS_LIBRARIES} ${XBLAS_LIBRARY})
|
||||
-
|
||||
+target_link_libraries(lapack PRIVATE ${BLAS_LIBRARIES} ${XBLAS_LIBRARY})
|
||||
set_target_properties(
|
||||
lapack PROPERTIES
|
||||
VERSION ${LAPACK_VERSION}
|
||||
SOVERSION ${LAPACK_MAJOR_VERSION}
|
||||
)
|
||||
-
|
||||
lapack_install_library(lapack)
|
||||
diff --git a/TESTING/EIG/CMakeLists.txt b/TESTING/EIG/CMakeLists.txt
|
||||
--- a/TESTING/EIG/CMakeLists.txt
|
||||
+++ b/TESTING/EIG/CMakeLists.txt
|
||||
@@ -119,7 +119,7 @@
|
||||
|
||||
macro(add_eig_executable name )
|
||||
add_executable(${name} ${ARGN})
|
||||
- target_link_libraries(${name} tmglib ${LAPACK_LIBRARIES})
|
||||
+ target_link_libraries(${name} tmglib ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES})
|
||||
endmacro(add_eig_executable)
|
||||
|
||||
if (BUILD_SINGLE)
|
||||
diff --git a/TESTING/LIN/CMakeLists.txt b/TESTING/LIN/CMakeLists.txt
|
||||
--- a/TESTING/LIN/CMakeLists.txt
|
||||
+++ b/TESTING/LIN/CMakeLists.txt
|
||||
@@ -193,7 +193,7 @@
|
||||
|
||||
macro(add_lin_executable name )
|
||||
add_executable(${name} ${ARGN})
|
||||
- target_link_libraries(${name} tmglib ${LAPACK_LIBRARIES})
|
||||
+ target_link_libraries(${name} tmglib ${LAPACK_LIBRARIES} ${BLAS_LIBRARIES})
|
||||
endmacro(add_lin_executable)
|
||||
|
||||
IF(BUILD_SINGLE)
|
||||
diff --git a/lapack.pc.in b/lapack.pc.in
|
||||
--- a/lapack.pc.in
|
||||
+++ b/lapack.pc.in
|
||||
@@ -6,4 +6,4 @@
|
||||
Version: @LAPACK_VERSION@
|
||||
URL: http://www.netlib.org/lapack/
|
||||
Libs: -L${libdir} -llapack
|
||||
-Requires: blas
|
||||
+Requires.private: blas
|
|
@ -1,761 +0,0 @@
|
|||
diff --git a/BLAS/SRC/CMakeLists.txt b/BLAS/SRC/CMakeLists.txt
|
||||
--- a/BLAS/SRC/CMakeLists.txt
|
||||
+++ b/BLAS/SRC/CMakeLists.txt
|
||||
@@ -113,29 +113,22 @@
|
||||
|
||||
set(ZBLAS3 zgemm.f zsymm.f zsyrk.f zsyr2k.f ztrmm.f ztrsm.f
|
||||
zhemm.f zherk.f zher2k.f)
|
||||
-# default build all of it
|
||||
-set(ALLOBJ ${SBLAS1} ${SBLAS2} ${SBLAS3} ${DBLAS1} ${DBLAS2} ${DBLAS3}
|
||||
- ${CBLAS1} ${CBLAS2} ${CBLAS3} ${ZBLAS1}
|
||||
- ${ZBLAS2} ${ZBLAS3} ${ALLBLAS})
|
||||
-
|
||||
-if(BLAS_SINGLE)
|
||||
- set(ALLOBJ ${SBLAS1} ${ALLBLAS}
|
||||
- ${SBLAS2} ${SBLAS3})
|
||||
+
|
||||
+set(ALLOBJ)
|
||||
+if(BUILD_SINGLE)
|
||||
+ list(APPEND ALLOBJ ${SBLAS1} ${ALLBLAS} ${SBLAS2} ${SBLAS3})
|
||||
endif()
|
||||
-if(BLAS_DOUBLE)
|
||||
- set(ALLOBJ ${DBLAS1} ${ALLBLAS}
|
||||
- ${DBLAS2} ${DBLAS3})
|
||||
+if(BUILD_DOUBLE)
|
||||
+ list(APPEND ALLOBJ ${DBLAS1} ${ALLBLAS} ${DBLAS2} ${DBLAS3})
|
||||
endif()
|
||||
-if(BLAS_COMPLEX)
|
||||
- set(ALLOBJ ${BLASLIB} ${CBLAS1} ${CB1AUX}
|
||||
- ${ALLBLAS} ${CBLAS2})
|
||||
+if(BUILD_COMPLEX)
|
||||
+ list(APPEND ALLOBJ ${BLASLIB} ${CBLAS1} ${CB1AUX} ${ALLBLAS} ${CBLAS2} ${CBLAS3})
|
||||
endif()
|
||||
-if(BLAS_COMPLEX16)
|
||||
- set(ALLOBJ ${BLASLIB} ${ZBLAS1} ${ZB1AUX}
|
||||
- ${ALLBLAS} ${ZBLAS2} ${ZBLAS3})
|
||||
+if(BUILD_COMPLEX16)
|
||||
+ list(APPEND ALLOBJ ${BLASLIB} ${ZBLAS1} ${ZB1AUX} ${ALLBLAS} ${ZBLAS2} ${ZBLAS3})
|
||||
endif()
|
||||
-
|
||||
-
|
||||
+list(REMOVE_DUPLICATES ALLOBJ)
|
||||
+
|
||||
add_library(blas ${ALLOBJ})
|
||||
set_target_properties(
|
||||
blas PROPERTIES
|
||||
diff --git a/CBLAS/src/CMakeLists.txt b/CBLAS/src/CMakeLists.txt
|
||||
--- a/CBLAS/src/CMakeLists.txt
|
||||
+++ b/CBLAS/src/CMakeLists.txt
|
||||
@@ -28,34 +28,26 @@
|
||||
cblas_ddot.c cblas_dsdot.c cblas_dnrm2.c cblas_dasum.c
|
||||
cblas_idamax.c ddotsub.f dsdotsub.f dnrm2sub.f
|
||||
dasumsub.f idamaxsub.f)
|
||||
-
|
||||
#
|
||||
# All object files for single complex precision
|
||||
#
|
||||
set (CLEV1 cblas_cswap.c cblas_cscal.c cblas_csscal.c cblas_ccopy.c
|
||||
cblas_caxpy.c cblas_cdotu_sub.c cblas_cdotc_sub.c
|
||||
cblas_icamax.c cdotcsub.f cdotusub.f icamaxsub.f)
|
||||
-
|
||||
#
|
||||
# All object files for double complex precision
|
||||
#
|
||||
set (ZLEV1 cblas_zswap.c cblas_zscal.c cblas_zdscal.c cblas_zcopy.c
|
||||
- cblas_zaxpy.c cblas_zdotu_sub.c cblas_zdotc_sub.c cblas_dznrm2.c
|
||||
- cblas_dzasum.c cblas_izamax.c zdotcsub.f zdotusub.f
|
||||
- dzasumsub.f dznrm2sub.f izamaxsub.f)
|
||||
-
|
||||
-
|
||||
+ cblas_zaxpy.c cblas_zdotu_sub.c cblas_zdotc_sub.c
|
||||
+ cblas_izamax.c zdotcsub.f zdotusub.f izamaxsub.f)
|
||||
#
|
||||
# Common files for single complex precision
|
||||
#
|
||||
set (SCLEV1 cblas_scasum.c scasumsub.f cblas_scnrm2.c scnrm2sub.f)
|
||||
-
|
||||
-
|
||||
#
|
||||
-# All object files
|
||||
+# Common files for double complex precision
|
||||
#
|
||||
-set (ALEV1 ${slev1} ${dlev1} ${clev1} ${zlev1} ${sclev1})
|
||||
-
|
||||
+set (DZLEV1 cblas_dzasum.c dzasumsub.f cblas_dznrm2.c dznrm2sub.f)
|
||||
|
||||
#
|
||||
#
|
||||
@@ -72,8 +64,6 @@
|
||||
cblas_sspr.c cblas_sspr2.c cblas_ssymv.c cblas_ssyr.c cblas_ssyr2.c
|
||||
cblas_stbmv.c cblas_stbsv.c cblas_stpmv.c cblas_stpsv.c cblas_strmv.c
|
||||
cblas_strsv.c)
|
||||
-
|
||||
-
|
||||
#
|
||||
# All object files for double real precision
|
||||
#
|
||||
@@ -81,7 +71,6 @@
|
||||
cblas_dspr.c cblas_dspr2.c cblas_dsymv.c cblas_dsyr.c cblas_dsyr2.c
|
||||
cblas_dtbmv.c cblas_dtbsv.c cblas_dtpmv.c cblas_dtpsv.c cblas_dtrmv.c
|
||||
cblas_dtrsv.c)
|
||||
-
|
||||
#
|
||||
# All object files for single complex precision
|
||||
#
|
||||
@@ -89,7 +78,6 @@
|
||||
cblas_ctrmv.c cblas_ctbmv.c cblas_ctpmv.c cblas_ctrsv.c cblas_ctbsv.c
|
||||
cblas_ctpsv.c cblas_cgeru.c cblas_cgerc.c cblas_cher.c cblas_cher2.c
|
||||
cblas_chpr.c cblas_chpr2.c)
|
||||
-
|
||||
#
|
||||
# All object files for double complex precision
|
||||
#
|
||||
@@ -97,10 +85,6 @@
|
||||
cblas_ztrmv.c cblas_ztbmv.c cblas_ztpmv.c cblas_ztrsv.c cblas_ztbsv.c
|
||||
cblas_ztpsv.c cblas_zgeru.c cblas_zgerc.c cblas_zher.c cblas_zher2.c
|
||||
cblas_zhpr.c cblas_zhpr2.c)
|
||||
-#
|
||||
-# All object files
|
||||
-#
|
||||
-set (AVEL2 ${slev2} ${dlev2} ${clev2} ${zlev2})
|
||||
|
||||
#
|
||||
#
|
||||
@@ -132,36 +116,21 @@
|
||||
set (ZLEV3 cblas_zgemm.c cblas_zsymm.c cblas_zhemm.c cblas_zherk.c
|
||||
cblas_zher2k.c cblas_ztrmm.c cblas_ztrsm.c cblas_zsyrk.c
|
||||
cblas_zsyr2k.c)
|
||||
-#
|
||||
-# All object files
|
||||
-#
|
||||
-set (ALEV3 ${slev3} ${dlev3} ${clev3} ${zlev3})
|
||||
-
|
||||
-# default build all of it
|
||||
-set(ALLOBJ ${SCLEV1} ${SLEV1} ${SLEV2} ${SLEV3} ${ERRHAND}
|
||||
- ${DLEV1} ${DLEV2} ${DLEV3}
|
||||
- ${CLEV1} ${CLEV2} ${CLEV3}
|
||||
- ${ZLEV1} ${ZLEV2} ${ZLEV3} )
|
||||
-
|
||||
-# Single real precision
|
||||
-if(CBLAS_SINGLE)
|
||||
- set(ALLOBJ ${SCLEV1} ${SLEV1} ${SLEV2} ${SLEV3} ${ERRHAND})
|
||||
-endif(CBLAS_SINGLE)
|
||||
-
|
||||
-# Double real precision
|
||||
-if(CBLAS_DOUBLE)
|
||||
- set(ALLOBJ ${DLEV1} ${DLEV2} ${DLEV3} ${ERRHAND})
|
||||
-endif(CBLAS_DOUBLE)
|
||||
-
|
||||
-# Single complex precision
|
||||
-if (CBLAS_COMPLEX)
|
||||
- set(ALLOBJ ${CLEV1} ${SCLEV1} ${CLEV2} ${CLEV3} ${ERRHAND})
|
||||
-endif(CBLAS_COMPLEX)
|
||||
|
||||
-# Double complex precision
|
||||
-if (CBLAS_COMPLEX16)
|
||||
- set(ALLOBJ ${ZLEV1} ${ZLEV2} ${ZLEV3} ${ERRHAND})
|
||||
-endif(CBLAS_COMPLEX16)
|
||||
+set(ALLOBJ)
|
||||
+if(BUILD_SINGLE)
|
||||
+ list(APPEND ALLOBJ ${SLEV1} ${SCLEV1} ${ERRHAND} ${SLEV2} ${SLEV3})
|
||||
+endif()
|
||||
+if(BUILD_DOUBLE)
|
||||
+ list(APPEND ALLOBJ ${DLEV1} ${DZLEV1} ${ERRHAND} ${DLEV2} ${DLEV3})
|
||||
+endif()
|
||||
+if(BUILD_COMPLEX)
|
||||
+ list(APPEND ALLOBJ ${CLEV1} ${SCLEV1} ${ERRHAND} ${CLEV2} ${CLEV3})
|
||||
+endif()
|
||||
+if(BUILD_COMPLEX16)
|
||||
+ list(APPEND ALLOBJ ${ZLEV1} ${DZLEV1} ${ERRHAND} ${ZLEV2} ${ZLEV3})
|
||||
+endif()
|
||||
+list(REMOVE_DUPLICATES ALLOBJ)
|
||||
|
||||
add_library(cblas ${ALLOBJ})
|
||||
target_link_libraries(cblas PRIVATE ${BLAS_LIBRARIES})
|
||||
diff --git a/CBLAS/src/Makefile b/CBLAS/src/Makefile
|
||||
--- a/CBLAS/src/Makefile
|
||||
+++ b/CBLAS/src/Makefile
|
||||
@@ -52,9 +52,8 @@
|
||||
# All object files for double complex precision
|
||||
#
|
||||
zlev1 = cblas_zswap.o cblas_zscal.o cblas_zdscal.o cblas_zcopy.o \
|
||||
- cblas_zaxpy.o cblas_zdotu_sub.o cblas_zdotc_sub.o cblas_dznrm2.o \
|
||||
- cblas_dzasum.o cblas_izamax.o zdotcsub.o zdotusub.o \
|
||||
- dzasumsub.o dznrm2sub.o izamaxsub.o
|
||||
+ cblas_zaxpy.o cblas_zdotu_sub.o cblas_zdotc_sub.o \
|
||||
+ cblas_izamax.o zdotcsub.o zdotusub.o izamaxsub.o
|
||||
|
||||
#
|
||||
# Common files for single / complex precision
|
||||
@@ -62,9 +61,14 @@
|
||||
sclev1 = cblas_scasum.o scasumsub.o cblas_scnrm2.o scnrm2sub.o
|
||||
|
||||
#
|
||||
+# Common files for double / complex precision
|
||||
+#
|
||||
+dzlev1 = cblas_dzasum.o dzasumsub.o cblas_dznrm2.o dznrm2sub.o
|
||||
+
|
||||
+#
|
||||
# All object files
|
||||
#
|
||||
-alev1 = $(slev1) $(dlev1) $(clev1) $(zlev1) $(sclev1)
|
||||
+alev1 = $(slev1) $(dlev1) $(clev1) $(zlev1) $(sclev1) $(dzlev1)
|
||||
|
||||
|
||||
#
|
||||
@@ -77,8 +81,8 @@
|
||||
$(RANLIB) $(CBLASLIB)
|
||||
|
||||
# Double real precision
|
||||
-dlib1: $(dlev1)
|
||||
- $(ARCH) $(ARCHFLAGS) $(CBLASLIB) $(dlev1)
|
||||
+dlib1: $(dlev1) $(dzlev1)
|
||||
+ $(ARCH) $(ARCHFLAGS) $(CBLASLIB) $(dlev1) $(dzlev1)
|
||||
$(RANLIB) $(CBLASLIB)
|
||||
|
||||
# Single complex precision
|
||||
@@ -87,8 +91,8 @@
|
||||
$(RANLIB) $(CBLASLIB)
|
||||
|
||||
# Double complex precision
|
||||
-zlib1: $(zlev1)
|
||||
- $(ARCH) $(ARCHFLAGS) $(CBLASLIB) $(zlev1)
|
||||
+zlib1: $(zlev1) $(dzlev1)
|
||||
+ $(ARCH) $(ARCHFLAGS) $(CBLASLIB) $(zlev1) $(dzlev1)
|
||||
$(RANLIB) $(CBLASLIB)
|
||||
|
||||
# All precisions
|
||||
diff --git a/CBLAS/testing/CMakeLists.txt b/CBLAS/testing/CMakeLists.txt
|
||||
--- a/CBLAS/testing/CMakeLists.txt
|
||||
+++ b/CBLAS/testing/CMakeLists.txt
|
||||
@@ -27,8 +27,6 @@
|
||||
|
||||
# Object files for single real precision
|
||||
SET( STESTL1O c_sblas1.c)
|
||||
-
|
||||
-SET( STESTL2O c_sblas2.c c_s2chke.c auxiliary.c c_xerbla.c)
|
||||
SET( STESTL2O c_sblas2.c c_s2chke.c auxiliary.c c_xerbla.c)
|
||||
SET( STESTL3O c_sblas3.c c_s3chke.c auxiliary.c c_xerbla.c)
|
||||
|
||||
@@ -61,11 +59,9 @@
|
||||
add_cblas_test(stest1.out "" xscblat1)
|
||||
add_cblas_test(stest2.out sin2 xscblat2)
|
||||
add_cblas_test(stest3.out sin3 xscblat3)
|
||||
-
|
||||
endif()
|
||||
|
||||
if(BUILD_DOUBLE)
|
||||
-
|
||||
add_executable(xdcblat1 c_dblat1.f ${DTESTL1O} ${LAPACK_BINARY_DIR}/include/cblas_test.h)
|
||||
add_executable(xdcblat2 c_dblat2.f ${DTESTL2O} ${LAPACK_BINARY_DIR}/include/cblas_test.h)
|
||||
add_executable(xdcblat3 c_dblat3.f ${DTESTL3O} ${LAPACK_BINARY_DIR}/include/cblas_test.h)
|
||||
@@ -77,11 +73,9 @@
|
||||
add_cblas_test(dtest1.out "" xdcblat1)
|
||||
add_cblas_test(dtest2.out din2 xdcblat2)
|
||||
add_cblas_test(dtest3.out din3 xdcblat3)
|
||||
-
|
||||
endif()
|
||||
|
||||
if(BUILD_COMPLEX)
|
||||
-
|
||||
add_executable(xccblat1 c_cblat1.f ${CTESTL1O} ${LAPACK_BINARY_DIR}/include/cblas_test.h)
|
||||
add_executable(xccblat2 c_cblat2.f ${CTESTL2O} ${LAPACK_BINARY_DIR}/include/cblas_test.h)
|
||||
add_executable(xccblat3 c_cblat3.f ${CTESTL3O} ${LAPACK_BINARY_DIR}/include/cblas_test.h)
|
||||
@@ -93,11 +87,9 @@
|
||||
add_cblas_test(ctest1.out "" xccblat1)
|
||||
add_cblas_test(ctest2.out cin2 xccblat2)
|
||||
add_cblas_test(ctest3.out cin3 xccblat3)
|
||||
-
|
||||
endif()
|
||||
|
||||
if(BUILD_COMPLEX16)
|
||||
-
|
||||
add_executable(xzcblat1 c_zblat1.f ${ZTESTL1O} ${LAPACK_BINARY_DIR}/include/cblas_test.h)
|
||||
add_executable(xzcblat2 c_zblat2.f ${ZTESTL2O} ${LAPACK_BINARY_DIR}/include/cblas_test.h)
|
||||
add_executable(xzcblat3 c_zblat3.f ${ZTESTL3O} ${LAPACK_BINARY_DIR}/include/cblas_test.h)
|
||||
@@ -109,5 +101,4 @@
|
||||
add_cblas_test(ztest1.out "" xzcblat1)
|
||||
add_cblas_test(ztest2.out zin2 xzcblat2)
|
||||
add_cblas_test(ztest3.out zin3 xzcblat3)
|
||||
-
|
||||
endif()
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -148,7 +148,33 @@
|
||||
# --------------------------------------------------
|
||||
# Precision to build
|
||||
# By default all precisions are generated
|
||||
+option(BUILD_SINGLE "Build Single Precision" ON)
|
||||
+option(BUILD_DOUBLE "Build Double Precision" ON)
|
||||
+option(BUILD_COMPLEX "Build Complex Precision" ON)
|
||||
+option(BUILD_COMPLEX16 "Build Double Complex Precision" ON)
|
||||
+
|
||||
+set(PRECISIONS)
|
||||
+if(BUILD_SINGLE)
|
||||
+ message(STATUS "Building Single Precision")
|
||||
+ list(APPEND PRECISIONS "single")
|
||||
+endif()
|
||||
+if(BUILD_DOUBLE)
|
||||
+ message(STATUS "Building Double Precision")
|
||||
+ list(APPEND PRECISIONS "double")
|
||||
+endif()
|
||||
+if(BUILD_COMPLEX)
|
||||
+ message(STATUS "Building Complex Precision")
|
||||
+ list(APPEND PRECISIONS "complex")
|
||||
+endif()
|
||||
+if(BUILD_COMPLEX16)
|
||||
+ message(STATUS "Building Double Complex Precision")
|
||||
+ list(APPEND PRECISIONS "complex16")
|
||||
+endif()
|
||||
|
||||
+if(NOT PRECISIONS)
|
||||
+ 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
|
||||
@@ -240,10 +266,6 @@
|
||||
if(NOT LATESTLAPACK_FOUND)
|
||||
message(STATUS "Using supplied NETLIB LAPACK implementation")
|
||||
set( LAPACK_LIBRARIES lapack )
|
||||
- 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)
|
||||
add_subdirectory(SRC)
|
||||
else()
|
||||
set( CMAKE_EXE_LINKER_FLAGS
|
||||
diff --git a/SRC/CMakeLists.txt b/SRC/CMakeLists.txt
|
||||
--- a/SRC/CMakeLists.txt
|
||||
+++ b/SRC/CMakeLists.txt
|
||||
@@ -1,22 +1,28 @@
|
||||
#######################################################################
|
||||
# This is the makefile to create a library for LAPACK.
|
||||
# The files are organized as follows:
|
||||
-# ALLAUX -- Auxiliary routines called from all precisions
|
||||
-# ALLXAUX -- Auxiliary routines called from all precisions but
|
||||
-# only from routines using extra precision.
|
||||
-# SCLAUX -- Auxiliary routines called from both REAL and COMPLEX
|
||||
-# DZLAUX -- Auxiliary routines called from both DOUBLE PRECISION
|
||||
-# and COMPLEX*16
|
||||
-# SLASRC -- Single precision real LAPACK routines
|
||||
+# ALLAUX -- Auxiliary routines called from all precisions
|
||||
+#
|
||||
+# SCLAUX -- Auxiliary routines called from both REAL and COMPLEX.
|
||||
+# DZLAUX -- Auxiliary routines called from both DOUBLE and COMPLEX*16.
|
||||
+#
|
||||
+# DSLASRC -- Double-single mixed precision real routines called from
|
||||
+# single, single-extra and double precision real LAPACK
|
||||
+# routines (i.e. from SLASRC, SXLASRC, DLASRC).
|
||||
+# ZCLASRC -- Double-single mixed precision complex routines called from
|
||||
+# single, single-extra and double precision complex LAPACK
|
||||
+# routines (i.e. from CLASRC, CXLASRC, ZLASRC).
|
||||
+#
|
||||
+# SLASRC -- Single precision real LAPACK routines
|
||||
# SXLASRC -- Single precision real LAPACK routines using extra
|
||||
# precision.
|
||||
-# CLASRC -- Single precision complex LAPACK routines
|
||||
+# CLASRC -- Single precision complex LAPACK routines
|
||||
# CXLASRC -- Single precision complex LAPACK routines using extra
|
||||
# precision.
|
||||
-# DLASRC -- Double precision real LAPACK routines
|
||||
+# DLASRC -- Double precision real LAPACK routines
|
||||
# DXLASRC -- Double precision real LAPACK routines using extra
|
||||
# precision.
|
||||
-# ZLASRC -- Double precision complex LAPACK routines
|
||||
+# ZLASRC -- Double precision complex LAPACK routines
|
||||
# ZXLASRC -- Double precision complex LAPACK routines using extra
|
||||
# precision.
|
||||
#
|
||||
@@ -51,8 +57,6 @@
|
||||
../INSTALL/ilaver.f ../INSTALL/lsame.f xerbla.f xerbla_array.f
|
||||
../INSTALL/slamch.f)
|
||||
|
||||
-set(ALLXAUX )
|
||||
-
|
||||
set(SCLAUX
|
||||
sbdsdc.f
|
||||
sbdsqr.f sdisna.f slabad.f slacpy.f sladiv.f slae2.f slaebz.f
|
||||
@@ -97,8 +101,8 @@
|
||||
sgels.f sgelsd.f sgelss.f sgelsy.f sgeql2.f sgeqlf.f
|
||||
sgeqp3.f sgeqr2.f sgeqr2p.f sgeqrf.f sgeqrfp.f sgerfs.f sgerq2.f sgerqf.f
|
||||
sgesc2.f sgesdd.f sgesv.f sgesvd.f sgesvdx.f sgesvx.f sgetc2.f sgetf2.f
|
||||
- sgetrf.f sgetrf2.f sgetri.f
|
||||
- sgetrs.f sggbak.f sggbal.f
|
||||
+ sgetrf2.f sgetri.f
|
||||
+ sggbak.f sggbal.f
|
||||
sgges.f sgges3.f sggesx.f sggev.f sggev3.f sggevx.f
|
||||
sggglm.f sgghrd.f sgghd3.f sgglse.f sggqrf.f
|
||||
sggrqf.f sggsvd3.f sggsvp3.f sgtcon.f sgtrfs.f sgtsv.f
|
||||
@@ -123,7 +127,7 @@
|
||||
sormr3.f sormrq.f sormrz.f sormtr.f spbcon.f spbequ.f spbrfs.f
|
||||
spbstf.f spbsv.f spbsvx.f
|
||||
spbtf2.f spbtrf.f spbtrs.f spocon.f spoequ.f sporfs.f sposv.f
|
||||
- sposvx.f spotf2.f spotrf.f spotrf2.f spotri.f spotrs.f spstrf.f spstf2.f
|
||||
+ sposvx.f spotf2.f spotrf2.f spotri.f spstrf.f spstf2.f
|
||||
sppcon.f sppequ.f
|
||||
spprfs.f sppsv.f sppsvx.f spptrf.f spptri.f spptrs.f sptcon.f
|
||||
spteqr.f sptrfs.f sptsv.f sptsvx.f spttrs.f sptts2.f srscl.f
|
||||
@@ -172,8 +176,8 @@
|
||||
cgeqr2.f cgeqr2p.f cgeqrf.f cgeqrfp.f cgerfs.f cgerq2.f cgerqf.f
|
||||
cgesc2.f cgesdd.f cgesv.f cgesvd.f cgesvdx.f
|
||||
cgesvj.f cgejsv.f cgsvj0.f cgsvj1.f
|
||||
- cgesvx.f cgetc2.f cgetf2.f cgetrf.f cgetrf2.f
|
||||
- cgetri.f cgetrs.f
|
||||
+ cgesvx.f cgetc2.f cgetf2.f cgetrf2.f
|
||||
+ cgetri.f
|
||||
cggbak.f cggbal.f
|
||||
cgges.f cgges3.f cggesx.f cggev.f cggev3.f cggevx.f
|
||||
cggglm.f cgghrd.f cgghd3.f cgglse.f cggqrf.f cggrqf.f
|
||||
@@ -207,7 +211,7 @@
|
||||
claswp.f clasyf.f clasyf_rook.f clatbs.f clatdf.f clatps.f clatrd.f clatrs.f clatrz.f
|
||||
clauu2.f clauum.f cpbcon.f cpbequ.f cpbrfs.f cpbstf.f cpbsv.f
|
||||
cpbsvx.f cpbtf2.f cpbtrf.f cpbtrs.f cpocon.f cpoequ.f cporfs.f
|
||||
- cposv.f cposvx.f cpotf2.f cpotrf.f cpotrf2.f cpotri.f cpotrs.f cpstrf.f cpstf2.f
|
||||
+ cposv.f cposvx.f cpotf2.f cpotrf2.f cpotri.f cpstrf.f cpstf2.f
|
||||
cppcon.f cppequ.f cpprfs.f cppsv.f cppsvx.f cpptrf.f cpptri.f cpptrs.f
|
||||
cptcon.f cpteqr.f cptrfs.f cptsv.f cptsvx.f cpttrf.f cpttrs.f cptts2.f
|
||||
crot.f cspcon.f cspmv.f cspr.f csprfs.f cspsv.f
|
||||
@@ -409,52 +413,45 @@
|
||||
zla_heamv.f zla_hercond_c.f zla_hercond_x.f zla_herpvgrw.f
|
||||
zla_lin_berr.f zlarscl2.f zlascl2.f zla_wwaddw.f)
|
||||
|
||||
-
|
||||
-if( USE_XBLAS)
|
||||
- set(ALLXOBJ ${SXLASRC} ${DXLASRC} ${CXLASRC} ${ZXLASRC} ${ALLXAUX})
|
||||
+if(USE_XBLAS)
|
||||
+ list(APPEND SLASRC ${SXLASRC})
|
||||
+ list(APPEND DLASRC ${DXLASRC})
|
||||
+ list(APPEND CLASRC ${CXLASRC})
|
||||
+ list(APPEND ZLASRC ${ZXLASRC})
|
||||
endif()
|
||||
|
||||
if(BUILD_DEPRECATED)
|
||||
- LIST(APPEND SLASRC DEPRECATED/sgegs.f DEPRECATED/sgegv.f
|
||||
+ LIST(APPEND SLASRC DEPRECATED/sgegs.f DEPRECATED/sgegv.f
|
||||
DEPRECATED/sgeqpf.f DEPRECATED/sgelsx.f DEPRECATED/sggsvd.f
|
||||
DEPRECATED/sggsvp.f DEPRECATED/slahrd.f DEPRECATED/slatzm.f DEPRECATED/stzrqf.f)
|
||||
- LIST(APPEND DLASRC DEPRECATED/dgegs.f DEPRECATED/dgegv.f
|
||||
+ LIST(APPEND DLASRC DEPRECATED/dgegs.f DEPRECATED/dgegv.f
|
||||
DEPRECATED/dgeqpf.f DEPRECATED/dgelsx.f DEPRECATED/dggsvd.f
|
||||
- DEPRECATED/dggsvp.f DEPRECATED/dlahrd.f DEPRECATED/dlatzm.f DEPRECATED/dtzrqf.f )
|
||||
+ DEPRECATED/dggsvp.f DEPRECATED/dlahrd.f DEPRECATED/dlatzm.f DEPRECATED/dtzrqf.f)
|
||||
LIST(APPEND CLASRC DEPRECATED/cgegs.f DEPRECATED/cgegv.f
|
||||
DEPRECATED/cgeqpf.f DEPRECATED/cgelsx.f DEPRECATED/cggsvd.f
|
||||
DEPRECATED/cggsvp.f DEPRECATED/clahrd.f DEPRECATED/clatzm.f DEPRECATED/ctzrqf.f)
|
||||
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 deprecated routines")
|
||||
+ message(STATUS "Building LAPACK deprecated routines")
|
||||
endif()
|
||||
|
||||
+set(ALLOBJ)
|
||||
if(BUILD_SINGLE)
|
||||
-set(ALLOBJ ${SLASRC} ${ALLAUX} ${SCLAUX} )
|
||||
-message(STATUS "Building Single Precision")
|
||||
+ list(APPEND ALLOBJ ${SLASRC} ${ALLAUX} ${SCLAUX} ${DSLASRC})
|
||||
endif()
|
||||
if(BUILD_DOUBLE)
|
||||
- set(ALLOBJ ${ALLOBJ} ${DLASRC} ${ALLAUX} ${DZLAUX} ${DSLASRC})
|
||||
-message(STATUS "Building Double Precision")
|
||||
+ list(APPEND ALLOBJ ${DLASRC} ${ALLAUX} ${DZLAUX} ${DSLASRC})
|
||||
endif()
|
||||
if(BUILD_COMPLEX)
|
||||
- set(ALLOBJ ${ALLOBJ} ${CLASRC} ${ALLAUX} ${SCLAUX} )
|
||||
-message(STATUS "Building Complex Precision")
|
||||
+ list(APPEND ALLOBJ ${CLASRC} ${ALLAUX} ${SCLAUX} ${ZCLASRC})
|
||||
endif()
|
||||
if(BUILD_COMPLEX16)
|
||||
- set(ALLOBJ ${ALLOBJ} ${ZLASRC} ${ALLAUX} ${DZLAUX} ${ZCLASRC})
|
||||
-message(STATUS "Building Double Complex Precision")
|
||||
-endif()
|
||||
-
|
||||
-if (NOT ALLOBJ)
|
||||
- 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.")
|
||||
+ list(APPEND ALLOBJ ${ZLASRC} ${ALLAUX} ${DZLAUX} ${ZCLASRC})
|
||||
endif()
|
||||
-
|
||||
list(REMOVE_DUPLICATES ALLOBJ)
|
||||
|
||||
-add_library(lapack ${ALLOBJ} ${ALLXOBJ})
|
||||
+add_library(lapack ${ALLOBJ})
|
||||
target_link_libraries(lapack PRIVATE ${BLAS_LIBRARIES} ${XBLAS_LIBRARY})
|
||||
set_target_properties(
|
||||
lapack PROPERTIES
|
||||
diff --git a/TESTING/CMakeLists.txt b/TESTING/CMakeLists.txt
|
||||
--- a/TESTING/CMakeLists.txt
|
||||
+++ b/TESTING/CMakeLists.txt
|
||||
@@ -289,7 +289,7 @@
|
||||
endif()
|
||||
|
||||
|
||||
-if (BUILD_SIMPLE)
|
||||
+if (BUILD_SINGLE)
|
||||
if (BUILD_DOUBLE)
|
||||
#
|
||||
# ======== SINGLE-DOUBLE PROTO LIN TESTS ==============
|
||||
diff --git a/TESTING/LIN/CMakeLists.txt b/TESTING/LIN/CMakeLists.txt
|
||||
--- a/TESTING/LIN/CMakeLists.txt
|
||||
+++ b/TESTING/LIN/CMakeLists.txt
|
||||
@@ -13,10 +13,10 @@
|
||||
schksp.f schksy.f schksy_rook.f schktb.f schktp.f schktr.f
|
||||
schktz.f
|
||||
sdrvgt.f sdrvls.f sdrvpb.f
|
||||
- sdrvpp.f sdrvpt.f sdrvsp.f sdrvsy.f sdrvsy_rook.f
|
||||
+ sdrvpp.f sdrvpt.f sdrvsp.f sdrvsy_rook.f
|
||||
serrgt.f serrlq.f serrls.f
|
||||
- serrpo.f serrps.f serrql.f serrqp.f serrqr.f
|
||||
- serrrq.f serrsy.f serrtr.f serrtz.f serrvx.f
|
||||
+ serrps.f serrql.f serrqp.f serrqr.f
|
||||
+ serrrq.f serrtr.f serrtz.f
|
||||
sgbt01.f sgbt02.f sgbt05.f sgelqs.f sgeqls.f sgeqrs.f
|
||||
sgerqs.f sget01.f sget02.f
|
||||
sget03.f sget04.f sget06.f sget07.f sgtt01.f sgtt02.f
|
||||
@@ -37,9 +37,11 @@
|
||||
sqrt04.f sqrt05.f schkqrt.f serrqrt.f schkqrtp.f serrqrtp.f)
|
||||
|
||||
if(USEXBLAS)
|
||||
- list(APPEND SLINTST sdrvgex.f serrgex.f sdrvgbx.f sdrvpox.f sebchvxx.f)
|
||||
+ list(APPEND SLINTST serrvxx.f sdrvgex.f sdrvsyx.f serrgex.f sdrvgbx.f sdrvpox.f
|
||||
+ sebchvxx.f serrsyx.f serrpox.f)
|
||||
else()
|
||||
- list(APPEND SLINTST sdrvge.f serrge.f sdrvgb.f sdrvpo.f)
|
||||
+ list(APPEND SLINTST serrvx.f sdrvge.f sdrvsy.f serrge.f sdrvgb.f sdrvpo.f
|
||||
+ serrsy.f serrpo.f)
|
||||
endif()
|
||||
|
||||
set(CLINTST cchkaa.f
|
||||
@@ -48,13 +50,12 @@
|
||||
cchkpo.f cchkps.f cchkpp.f cchkpt.f cchkq3.f cchkql.f
|
||||
cchkqr.f cchkrq.f cchksp.f cchksy.f cchksy_rook.f cchktb.f
|
||||
cchktp.f cchktr.f cchktz.f
|
||||
- cdrvgt.f cdrvhe.f cdrvhe_rook.f cdrvhp.f
|
||||
+ cdrvgt.f cdrvhe_rook.f cdrvhp.f
|
||||
cdrvls.f cdrvpb.f cdrvpp.f cdrvpt.f
|
||||
- cdrvsp.f cdrvsy.f cdrvsy_rook.f
|
||||
- cerrgt.f cerrhe.f cerrlq.f
|
||||
+ cdrvsp.f cdrvsy_rook.f
|
||||
+ cerrgt.f cerrlq.f
|
||||
cerrls.f cerrps.f cerrql.f cerrqp.f
|
||||
- cerrqr.f cerrrq.f cerrsy.f cerrtr.f cerrtz.f
|
||||
- cerrvx.f
|
||||
+ cerrqr.f cerrrq.f cerrtr.f cerrtz.f
|
||||
cgbt01.f cgbt02.f cgbt05.f cgelqs.f cgeqls.f cgeqrs.f
|
||||
cgerqs.f cget01.f cget02.f
|
||||
cget03.f cget04.f cget07.f cgtt01.f cgtt02.f
|
||||
@@ -77,10 +78,11 @@
|
||||
cqrt04.f cqrt05.f cchkqrt.f cerrqrt.f cchkqrtp.f cerrqrtp.f )
|
||||
|
||||
if(USEXBLAS)
|
||||
- list(APPEND
|
||||
- CLINTST cdrvgex.f cdrvgbx.f cerrgex.f cdrvpox.f cerrpox.f cebchvxx.f)
|
||||
+ list(APPEND CLINTST cerrvxx.f cdrvgex.f cdrvsyx.f cdrvgbx.f cerrgex.f cdrvpox.f
|
||||
+ cdrvhex.f cerrpox.f cebchvxx.f cerrsyx.f cerrhex.f)
|
||||
else()
|
||||
- list(APPEND CLINTST cdrvge.f cdrvgb.f cerrge.f cdrvpo.f cerrpo.f)
|
||||
+ list(APPEND CLINTST cerrvx.f cdrvge.f cdrvsy.f cdrvgb.f cerrge.f cdrvpo.f
|
||||
+ cdrvhe.f cerrpo.f cerrsy.f cerrhe.f)
|
||||
endif()
|
||||
|
||||
set(DLINTST dchkaa.f
|
||||
@@ -90,10 +92,10 @@
|
||||
dchksp.f dchksy.f dchksy_rook.f dchktb.f dchktp.f dchktr.f
|
||||
dchktz.f
|
||||
ddrvgt.f ddrvls.f ddrvpb.f
|
||||
- ddrvpp.f ddrvpt.f ddrvsp.f ddrvsy.f ddrvsy_rook.f
|
||||
+ ddrvpp.f ddrvpt.f ddrvsp.f ddrvsy_rook.f
|
||||
derrgt.f derrlq.f derrls.f
|
||||
derrps.f derrql.f derrqp.f derrqr.f
|
||||
- derrrq.f derrsy.f derrtr.f derrtz.f derrvx.f
|
||||
+ derrrq.f derrtr.f derrtz.f
|
||||
dgbt01.f dgbt02.f dgbt05.f dgelqs.f dgeqls.f dgeqrs.f
|
||||
dgerqs.f dget01.f dget02.f
|
||||
dget03.f dget04.f dget06.f dget07.f dgtt01.f dgtt02.f
|
||||
@@ -114,11 +116,11 @@
|
||||
dqrt04.f dqrt05.f dchkqrt.f derrqrt.f dchkqrtp.f derrqrtp.f )
|
||||
|
||||
if(USEXBLAS)
|
||||
- list(APPEND
|
||||
- DLINTST ddrvgex.f ddrvgbx.f derrgex.f ddrvpox.f derrpox.f debchvxx.f)
|
||||
+ list(APPEND DLINTST derrvxx.f ddrvgex.f ddrvsyx.f ddrvgbx.f derrgex.f ddrvpox.f derrpox.f
|
||||
+ debchvxx.f derrsyx.f)
|
||||
else()
|
||||
- list(APPEND
|
||||
- DLINTST ddrvge.f ddrvgb.f derrge.f ddrvpo.f derrpo.f)
|
||||
+ list(APPEND DLINTST derrvx.f ddrvge.f ddrvsy.f ddrvgb.f derrge.f ddrvpo.f derrpo.f
|
||||
+ derrsy.f)
|
||||
endif()
|
||||
|
||||
set(ZLINTST zchkaa.f
|
||||
@@ -127,17 +129,16 @@
|
||||
zchkpo.f zchkps.f zchkpp.f zchkpt.f zchkq3.f zchkql.f
|
||||
zchkqr.f zchkrq.f zchksp.f zchksy.f zchksy_rook.f zchktb.f
|
||||
zchktp.f zchktr.f zchktz.f
|
||||
- zdrvgt.f zdrvhe.f zdrvhe_rook.f zdrvhp.f
|
||||
+ zdrvgt.f zdrvhe_rook.f zdrvhp.f
|
||||
zdrvls.f zdrvpb.f zdrvpp.f zdrvpt.f
|
||||
- zdrvsp.f zdrvsy.f zdrvsy_rook.f
|
||||
- zerrgt.f zerrhe.f zerrlq.f
|
||||
+ zdrvsp.f zdrvsy_rook.f
|
||||
+ zerrgt.f zerrlq.f
|
||||
zerrls.f zerrps.f zerrql.f zerrqp.f
|
||||
- zerrqr.f zerrrq.f zerrsy.f zerrtr.f zerrtz.f
|
||||
- zerrvx.f
|
||||
+ zerrqr.f zerrrq.f zerrtr.f zerrtz.f
|
||||
zgbt01.f zgbt02.f zgbt05.f zgelqs.f zgeqls.f zgeqrs.f
|
||||
zgerqs.f zget01.f zget02.f
|
||||
zget03.f zget04.f zget07.f zgtt01.f zgtt02.f
|
||||
- zgtt05.f zhet01.f zhet01.f zhet01_rook.f zhpt01.f zlaipd.f zlaptm.f zlarhs.f zlatb4.f zlatb5.f
|
||||
+ zgtt05.f zhet01.f zhet01_rook.f zhpt01.f zlaipd.f zlaptm.f zlarhs.f zlatb4.f zlatb5.f
|
||||
zlatsp.f zlatsy.f zlattb.f zlattp.f zlattr.f
|
||||
zlavhe.f zlavhe_rook.f zlavhp.f zlavsp.f zlavsy.f zlavsy_rook.f zlqt01.f
|
||||
zlqt02.f zlqt03.f zpbt01.f zpbt02.f zpbt05.f
|
||||
@@ -156,11 +157,11 @@
|
||||
zqrt04.f zqrt05.f zchkqrt.f zerrqrt.f zchkqrtp.f zerrqrtp.f )
|
||||
|
||||
if(USEXBLAS)
|
||||
- list(APPEND
|
||||
- ZLINTST zdrvgex.f zdrvgbx.f zerrgex.f zdrvpox.f zerrpox.f zebchvxx.f)
|
||||
+ list(APPEND ZLINTST zerrvxx.f zdrvgex.f zdrvsyx.f zdrvgbx.f zerrgex.f zdrvpox.f zdrvhex.f
|
||||
+ zerrpox.f zebchvxx.f zerrsyx.f zerrhex.f)
|
||||
else()
|
||||
- list(APPEND
|
||||
- ZLINTST zdrvge.f zdrvgb.f zerrge.f zdrvpo.f zerrpo.f)
|
||||
+ list(APPEND ZLINTST zerrvx.f zdrvge.f zdrvsy.f zdrvgb.f zerrge.f zdrvpo.f zdrvhe.f
|
||||
+ zerrpo.f zerrsy.f zerrhe.f)
|
||||
endif()
|
||||
|
||||
set(DSLINTST dchkab.f
|
||||
@@ -197,29 +198,29 @@
|
||||
endmacro(add_lin_executable)
|
||||
|
||||
IF(BUILD_SINGLE)
|
||||
-add_lin_executable(xlintsts ${ALINTST} ${SCLNTST} ${SLINTST} ${SECOND_SRC} )
|
||||
+add_lin_executable(xlintsts ${ALINTST} ${SLINTST} ${SCLNTST} ${SECOND_SRC})
|
||||
add_lin_executable(xlintstrfs ${SLINTSTRFP} ${SECOND_SRC})
|
||||
endif()
|
||||
|
||||
if(BUILD_DOUBLE)
|
||||
-add_lin_executable(xlintstd ${ALINTST} ${DLINTST} ${DZLNTST} ${DSECOND_SRC})
|
||||
+add_lin_executable(xlintstd ${ALINTST} ${DLINTST} ${DZLNTST} ${DSECOND_SRC})
|
||||
add_lin_executable(xlintstrfd ${DLINTSTRFP} ${DSECOND_SRC})
|
||||
endif()
|
||||
|
||||
IF(BUILD_SINGLE AND BUILD_DOUBLE)
|
||||
-add_lin_executable(xlintstds ${DSLINTST} ${SECOND_SRC} ${DSECOND_SRC} )
|
||||
+add_lin_executable(xlintstds ${DSLINTST} ${SECOND_SRC} ${DSECOND_SRC})
|
||||
endif()
|
||||
|
||||
if(BUILD_COMPLEX)
|
||||
-add_lin_executable(xlintstc ${ALINTST} ${CLINTST} ${SCLNTST} ${SECOND_SRC} )
|
||||
-add_lin_executable(xlintstrfc ${CLINTSTRFP} ${SECOND_SRC})
|
||||
+add_lin_executable(xlintstc ${ALINTST} ${CLINTST} ${SCLNTST} ${SECOND_SRC})
|
||||
+add_lin_executable(xlintstrfc ${CLINTSTRFP} ${SECOND_SRC})
|
||||
endif()
|
||||
|
||||
if(BUILD_COMPLEX16)
|
||||
-add_lin_executable(xlintstz ${ALINTST} ${ZLINTST} ${DZLNTST} ${DSECOND_SRC})
|
||||
+add_lin_executable(xlintstz ${ALINTST} ${ZLINTST} ${DZLNTST} ${DSECOND_SRC})
|
||||
add_lin_executable(xlintstrfz ${ZLINTSTRFP} ${DSECOND_SRC})
|
||||
endif()
|
||||
|
||||
IF(BUILD_COMPLEX AND BUILD_COMPLEX16)
|
||||
-add_lin_executable(xlintstzc ${ZCLINTST} ${SECOND_SRC} ${DSECOND_SRC} )
|
||||
+add_lin_executable(xlintstzc ${ZCLINTST} ${SECOND_SRC} ${DSECOND_SRC})
|
||||
endif()
|
||||
diff --git a/TESTING/MATGEN/CMakeLists.txt b/TESTING/MATGEN/CMakeLists.txt
|
||||
--- a/TESTING/MATGEN/CMakeLists.txt
|
||||
+++ b/TESTING/MATGEN/CMakeLists.txt
|
||||
@@ -31,45 +31,41 @@
|
||||
#
|
||||
#######################################################################
|
||||
|
||||
-set(SCATGEN slatm1.f slaran.f slarnd.f)
|
||||
+set(SCATGEN slatm1.f slatm7.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)
|
||||
+ slatm3.f slatm5.f slatm6.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)
|
||||
+ clatm1.f clarnd.f clatm2.f clatm3.f clatm5.f clatm6.f clahilb.f)
|
||||
|
||||
-set(DZATGEN dlatm1.f dlaran.f dlarnd.f)
|
||||
+set(DZATGEN dlatm1.f dlatm7.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)
|
||||
+ dlatm3.f dlatm5.f dlatm6.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)
|
||||
+ 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)
|
||||
|
||||
+set(ALLOBJ)
|
||||
if(BUILD_SINGLE)
|
||||
- set(ALLOBJ ${SMATGEN} ${SCATGEN})
|
||||
+ list(APPEND ALLOBJ ${SMATGEN} ${SCATGEN})
|
||||
endif()
|
||||
if(BUILD_DOUBLE)
|
||||
- set(ALLOBJ ${ALLOBJ} ${DMATGEN} ${DZATGEN})
|
||||
+ list(APPEND ALLOBJ ${DMATGEN} ${DZATGEN})
|
||||
endif()
|
||||
if(BUILD_COMPLEX)
|
||||
- set(ALLOBJ ${ALLOBJ} ${CMATGEN} ${SCATGEN})
|
||||
+ list(APPEND ALLOBJ ${CMATGEN} ${SCATGEN})
|
||||
endif()
|
||||
if(BUILD_COMPLEX16)
|
||||
- set(ALLOBJ ${ALLOBJ} ${ZMATGEN} ${DZATGEN})
|
||||
+ list(APPEND ALLOBJ ${ZMATGEN} ${DZATGEN})
|
||||
endif()
|
||||
+list(REMOVE_DUPLICATES ALLOBJ)
|
||||
|
||||
-if (NOT ALLOBJ)
|
||||
-set(ALLOBJ ${SMATGEN} ${CMATGEN} ${SCATGEN} ${DMATGEN} ${ZMATGEN}
|
||||
- ${DZATGEN})
|
||||
-else()
|
||||
- list(REMOVE_DUPLICATES ALLOBJ)
|
||||
-endif()
|
||||
-add_library(tmglib ${ALLOBJ} )
|
||||
+add_library(tmglib ${ALLOBJ})
|
||||
target_link_libraries(tmglib ${LAPACK_LIBRARIES})
|
||||
lapack_install_library(tmglib)
|
||||
diff --git a/TESTING/MATGEN/Makefile b/TESTING/MATGEN/Makefile
|
||||
--- a/TESTING/MATGEN/Makefile
|
||||
+++ b/TESTING/MATGEN/Makefile
|
||||
@@ -33,21 +33,21 @@
|
||||
#
|
||||
#######################################################################
|
||||
|
||||
-SCATGEN = slatm1.o slaran.o slarnd.o
|
||||
+SCATGEN = slatm1.o slatm7.o slaran.o slarnd.o
|
||||
|
||||
SMATGEN = slatms.o slatme.o slatmr.o slatmt.o \
|
||||
slagge.o slagsy.o slakf2.o slarge.o slaror.o slarot.o slatm2.o \
|
||||
- slatm3.o slatm5.o slatm6.o slatm7.o slahilb.o
|
||||
+ slatm3.o slatm5.o slatm6.o slahilb.o
|
||||
|
||||
CMATGEN = clatms.o clatme.o clatmr.o clatmt.o \
|
||||
clagge.o claghe.o clagsy.o clakf2.o clarge.o claror.o clarot.o \
|
||||
clatm1.o clarnd.o clatm2.o clatm3.o clatm5.o clatm6.o clahilb.o
|
||||
|
||||
-DZATGEN = dlatm1.o dlaran.o dlarnd.o
|
||||
+DZATGEN = dlatm1.o dlatm7.o dlaran.o dlarnd.o
|
||||
|
||||
DMATGEN = dlatms.o dlatme.o dlatmr.o dlatmt.o \
|
||||
dlagge.o dlagsy.o dlakf2.o dlarge.o dlaror.o dlarot.o dlatm2.o \
|
||||
- dlatm3.o dlatm5.o dlatm6.o dlatm7.o dlahilb.o
|
||||
+ dlatm3.o dlatm5.o dlatm6.o dlahilb.o
|
||||
|
||||
ZMATGEN = zlatms.o zlatme.o zlatmr.o zlatmt.o \
|
||||
zlagge.o zlaghe.o zlagsy.o zlakf2.o zlarge.o zlaror.o zlarot.o \
|
Loading…
Reference in New Issue