diff options
-rw-r--r-- | libraries/blas/README | 4 | ||||
-rw-r--r-- | libraries/blas/blas.SlackBuild | 30 | ||||
-rw-r--r-- | libraries/blas/blas.info | 6 | ||||
-rw-r--r-- | libraries/blas/patches/cmake-piecewise.diff | 84 |
4 files changed, 55 insertions, 69 deletions
diff --git a/libraries/blas/README b/libraries/blas/README index a68d1dc790..e6326e5946 100644 --- a/libraries/blas/README +++ b/libraries/blas/README @@ -1,5 +1,7 @@ Build script for the reference BLAS library provided by Netlib. -The final package will contain static and shared libraries. + +To build a static library in addition to the shared library, +pass STATIC=yes to the script. Note: If you want good performance, then use the BLAS libraries provided by your CPU vendor, or OpenBLAS or atlas provided by SlackBuilds.org. diff --git a/libraries/blas/blas.SlackBuild b/libraries/blas/blas.SlackBuild index 62bd5f9e21..94de7720f7 100644 --- a/libraries/blas/blas.SlackBuild +++ b/libraries/blas/blas.SlackBuild @@ -24,7 +24,7 @@ PRGNAM=blas SRCNAM=lapack -VERSION=${VERSION:-3.7.1} +VERSION=${VERSION:-3.8.0} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} @@ -90,19 +90,21 @@ cd .. # cmake doesn't appear to let us build both shared and static libs # at the same time, so build it twice. This may build a non-PIC library # on some architectures, which should be faster. -mkdir -p static -cd static - cmake \ - -DCMAKE_Fortran_FLAGS:STRING="$SLKCFLAGS" \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_BUILD_TYPE=None \ - -DCMAKE_RULE_MESSAGES=OFF \ - -DCMAKE_VERBOSE_MAKEFILE=TRUE \ - -DBUILD_BLAS=ON \ - .. - make - make install/strip DESTDIR=$PKG -cd .. +if [ "${STATIC:-no}" != "no" ]; then + mkdir -p static + cd static + cmake \ + -DCMAKE_Fortran_FLAGS:STRING="$SLKCFLAGS" \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=None \ + -DCMAKE_RULE_MESSAGES=OFF \ + -DCMAKE_VERBOSE_MAKEFILE=TRUE \ + -DBUILD_BLAS=ON \ + .. + make + make install/strip DESTDIR=$PKG + cd .. +fi # Generate man pages. Requires some fix-ups: # 0. Join all escaped newlines so the entire value is replaced. diff --git a/libraries/blas/blas.info b/libraries/blas/blas.info index d483b1ff51..8ac55139f2 100644 --- a/libraries/blas/blas.info +++ b/libraries/blas/blas.info @@ -1,8 +1,8 @@ PRGNAM="blas" -VERSION="3.7.1" +VERSION="3.8.0" HOMEPAGE="http://www.netlib.org/blas/" -DOWNLOAD="https://github.com/Reference-LAPACK/lapack/archive/v3.7.1/lapack-3.7.1.tar.gz" -MD5SUM="9cd679ab1fd325ca964de70adcd33441" +DOWNLOAD="https://github.com/Reference-LAPACK/lapack/archive/v3.8.0/lapack-3.8.0.tar.gz" +MD5SUM="96591affdbf58c450d45c1daa540dbd2" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="" diff --git a/libraries/blas/patches/cmake-piecewise.diff b/libraries/blas/patches/cmake-piecewise.diff index e5fd1d9c6c..8c2ac6c6a3 100644 --- a/libraries/blas/patches/cmake-piecewise.diff +++ b/libraries/blas/patches/cmake-piecewise.diff @@ -92,7 +92,7 @@ deleted file mode 100644 -get_filename_component(_CBLAS_PREFIX "${_CBLAS_PREFIX}" PATH) - -# Load the LAPACK package with which we were built. --set(LAPACK_DIR "${_CBLAS_PREFIX}/@{LIBRARY_DIR@/cmake/lapack-@LAPACK_VERSION@") +-set(LAPACK_DIR "${_CBLAS_PREFIX}/@CMAKE_INSTALL_LIBDIR@/cmake/lapack-@LAPACK_VERSION@") -find_package(LAPACK NO_MODULE) - -# Load lapacke targets from the install tree. @@ -121,6 +121,19 @@ deleted file mode 100644 - endif() -endif() - +diff --git a/CBLAS/src/CMakeLists.txt b/CBLAS/src/CMakeLists.txt +--- a/CBLAS/src/CMakeLists.txt ++++ b/CBLAS/src/CMakeLists.txt +@@ -120,9 +120,5 @@ + VERSION ${LAPACK_VERSION} + SOVERSION ${LAPACK_MAJOR_VERSION} + ) +-target_include_directories(cblas PUBLIC +- $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../include> +- $<INSTALL_INTERFACE:include> +-) + target_link_libraries(cblas PRIVATE ${BLAS_LIBRARIES}) + lapack_install_library(cblas) diff --git a/CMAKE/lapack-config-build.cmake.in b/CMAKE/lapack-config-build.cmake.in deleted file mode 100644 --- a/CMAKE/lapack-config-build.cmake.in @@ -159,23 +172,7 @@ deleted file mode 100644 diff --git a/CMakeLists.txt b/CMakeLists.txt --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -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 @@ +@@ -106,11 +106,8 @@ endif() # -------------------------------------------------- @@ -187,30 +184,10 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt 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 @@ +@@ -139,21 +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 - @@ -226,16 +203,10 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -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 @@ +@@ -177,8 +159,9 @@ endif() # -------------------------------------------------- @@ -246,7 +217,7 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt # Check the usage of the user provided BLAS libraries if(BLAS_LIBRARIES) -@@ -190,213 +172,117 @@ +@@ -189,213 +172,117 @@ if(BLAS_FOUND) message(STATUS "--> BLAS supplied by user is WORKING, will use ${BLAS_LIBRARIES}.") else() @@ -443,7 +414,7 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -if(NOT BLAS_FOUND) - set(ALL_TARGETS ${ALL_TARGETS} blas) -endif() - +- -if(NOT LATESTLAPACK_FOUND) - set(ALL_TARGETS ${ALL_TARGETS} lapack) -endif() @@ -458,7 +429,7 @@ diff --git a/CMakeLists.txt b/CMakeLists.txt -if(ALL_TARGETS) - install(EXPORT lapack-targets - 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) @@ -527,7 +498,18 @@ diff --git a/LAPACKE/CMakeLists.txt b/LAPACKE/CMakeLists.txt # Create a header file lapacke_mangling.h for the routines called in my C programs include(FortranCInterface) ## Ensure that the fortran compiler and c compiler specified are compatible -@@ -79,19 +77,3 @@ +@@ -60,10 +58,6 @@ + VERSION ${LAPACK_VERSION} + SOVERSION ${LAPACK_MAJOR_VERSION} + ) +-target_include_directories(lapacke PUBLIC +- $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../include> +- $<INSTALL_INTERFACE:include> +-) + + if(LAPACKE_WITH_TMG) + target_link_libraries(lapacke PRIVATE tmglib) +@@ -83,19 +77,3 @@ ${CMAKE_CURRENT_BINARY_DIR}/lapacke.pc DESTINATION ${PKG_CONFIG_DIR} ) @@ -578,7 +560,7 @@ deleted file mode 100644 -get_filename_component(_LAPACKE_PREFIX "${_LAPACKE_PREFIX}" PATH) - -# Load the LAPACK package with which we were built. --set(LAPACK_DIR "${_LAPACKE_PREFIX}/@{LIBRARY_DIR@/cmake/lapack-@LAPACK_VERSION@") +-set(LAPACK_DIR "${_LAPACKE_PREFIX}/@CMAKE_INSTALL_LIBDIR@/cmake/lapack-@LAPACK_VERSION@") -find_package(LAPACK NO_MODULE) - -# Load lapacke targets from the install tree. |