From a020a41298e2a03dc96468fd65d93c51e1fe7743 Mon Sep 17 00:00:00 2001 From: Serban Maerean Date: Thu, 17 May 2018 20:51:34 -0400 Subject: Changed netlib-lapack to fix an error in the CMake setup. (#8172) * Changed netlib-lapack to fix an error in their CMake setup. Changed netlib-lapack spackage file to add Fortran flags correctly for XL compiler. * Fixed line length -- forgot abt flake8... * Fix the package version where the ibm patch applies. --- .../builtin/packages/netlib-lapack/ibm-xl.patch | 20 +++++++++++++++++--- .../repos/builtin/packages/netlib-lapack/package.py | 7 ++++--- 2 files changed, 21 insertions(+), 6 deletions(-) (limited to 'var') diff --git a/var/spack/repos/builtin/packages/netlib-lapack/ibm-xl.patch b/var/spack/repos/builtin/packages/netlib-lapack/ibm-xl.patch index c9598a4e7c..fcb44af5a3 100644 --- a/var/spack/repos/builtin/packages/netlib-lapack/ibm-xl.patch +++ b/var/spack/repos/builtin/packages/netlib-lapack/ibm-xl.patch @@ -1,6 +1,5 @@ -diff -Naur lapack-3.6.1/CMAKE/CheckLAPACKCompilerFlags.cmake lapack-3.6.1-patched/CMAKE/CheckLAPACKCompilerFlags.cmake ---- lapack-3.6.1/CMAKE/CheckLAPACKCompilerFlags.cmake 2017-01-27 17:14:37.414854283 -0500 -+++ lapack-3.6.1-patched/CMAKE/CheckLAPACKCompilerFlags.cmake 2017-01-27 17:14:24.754719546 -0500 +--- a/CMAKE/CheckLAPACKCompilerFlags.cmake ++++ b/CMAKE/CheckLAPACKCompilerFlags.cmake @@ -43,12 +43,6 @@ if( "${CMAKE_Fortran_FLAGS}" MATCHES "-qflttrap=[a-zA-Z:]:enable" ) set( FPE_EXIT TRUE ) @@ -14,3 +13,18 @@ diff -Naur lapack-3.6.1/CMAKE/CheckLAPACKCompilerFlags.cmake lapack-3.6.1-patche # HP Fortran elseif( CMAKE_Fortran_COMPILER_ID STREQUAL "HP" ) + +--- a/CBLAS/CMakeLists.txt ++++ b/CBLAS/CMakeLists.txt +@@ -12,8 +12,8 @@ + SYMBOL_NAMESPACE "F77_") + if(NOT FortranCInterface_GLOBAL_FOUND OR NOT FortranCInterface_MODULE_FOUND) + message(WARNING "Reverting to pre-defined include/lapacke_mangling.h") +- configure_file(include/lapacke_mangling_with_flags.h.in +- ${LAPACK_BINARY_DIR}/include/lapacke_mangling.h) ++ configure_file(include/cblas_mangling_with_flags.h.in ++ ${LAPACK_BINARY_DIR}/include/cblas_mangling.h) + endif() + + include_directories(include ${LAPACK_BINARY_DIR}/include) + diff --git a/var/spack/repos/builtin/packages/netlib-lapack/package.py b/var/spack/repos/builtin/packages/netlib-lapack/package.py index 8c5336cf04..c99b3fc91a 100644 --- a/var/spack/repos/builtin/packages/netlib-lapack/package.py +++ b/var/spack/repos/builtin/packages/netlib-lapack/package.py @@ -59,8 +59,8 @@ class NetlibLapack(Package): variant('xblas', default=False, description='Builds extended precision routines using XBLAS') - patch('ibm-xl.patch', when='@3:6%xl') - patch('ibm-xl.patch', when='@3:6%xl_r') + patch('ibm-xl.patch', when='@3.7: %xl') + patch('ibm-xl.patch', when='@3.7: %xl_r') # virtual dependency provides('blas', when='~external-blas') @@ -153,7 +153,8 @@ class NetlibLapack(Package): # use F77 compiler if IBM XL cmake_args.extend([ '-DCMAKE_Fortran_COMPILER=%s' % self.compiler.f77, - '-DCMAKE_Fortran_FLAGS=-qzerosize' + '-DCMAKE_Fortran_FLAGS=%s' % ( + ' '.join(self.spec.compiler_flags['fflags'])), ]) # deprecated routines are commonly needed by, for example, suitesparse -- cgit v1.2.3-70-g09d2