spack/var/spack/repos/builtin/packages/magma/magma-2.5.0-cmake.patch
Veselin Dobrev 49334f006d [WIP] CEED 2.0 (#10903)
* Initial commit for v2.0 of the CEED software suite.

* Update Nek packages and gslib

* Help spack concretize the hypre version for ceed-2.0.

* Fix nekcem install error

* Add support for gfortran v8 in nek5000 and nekcem.

* Split Nek5000 into Nek5000 and Nektools

* Get Nektools to build fine in Theta

* Fix travis failure: remove unused 'import numbers' from nek5000.

* Check for gfortran if it is wrapped

* Tweak the detection of gfortran in nek5000.

* Fix Nek packages to add -std=legacy when FC=gcc

* spack install ceed~petsc works fine on Theta

* Fix flake8 errors

* Fix more flake8 tests

* Fix an import issue

* Tweak the suite-sparse package to avoid interaction with existing system
installations of suite-sparse.

* petsc: update superlu-dist dependency

* Updates in the packages: occa, libceed, and ceed.

* In the libceed package, explicitly tell nvcc which host compiler to use.

* Fix python formatting.

* Simplify the test for gfortran in nek* packages.

* ceed: 2.0 uses petsc@3.11.0

* hpgmg-0.4; use from ceed@2.0.0

* Update the hypre dependency for ceed 2.0.

* Disable the superlu-dist dependency (through hypre) when using a
+quickbuild of ceed 2.0.

* petsc-3.11.0: add xlf fix

* nekcem: has a build dependency on Python 2.7+

* hpgmg: better setting of compiler options and use python for configure

* libceed: use v0.4 tag

* libceed: fix 0.4 release oops (pkgconfig version)

* Add a patch for magma-2.5.0 that brings it up the current 'master'.

* In the mfem package, install the examples, miniapps, and data under
$prefix/share/mfem.

* In the magma package, apply a patch to v2.5.0 that disables
magma_sparse - for testing purposes.

* In the magma package, link the 'magma' library with the
'nvToolsExt' library.

* In the magma package, update the 'magma-2.5.0.patch' with the latest
commits from the magma source repository. Also, remove the library
'nvToolsExt' from the 'magma-2.5.0-cmake.patch' - now it is not
needed.

* In the magma package, disable OpenMP when using v2.5.0 with the
IBM XL compiler.

 Please enter the commit message for your changes. Lines starting

* In the mfem package, add version for the 'laghos-v2.0' tag; also,
prefix the versions `laghos-v*` with their respective development
version numbers -- this way they are properly ordered within spack
relative to the official numbered versions.

* petsc: add version 3.11.1 (#11179)


(cherry picked from commit 1eab6e3c86)

* ceed-2.0: use petsc-3.11.1

* this-is-so-dumb.f -> empty.f
2019-04-17 17:37:41 -07:00

78 lines
2.5 KiB
Diff

diff -ru magma-2.5.0-orig/CMakeLists.txt magma-2.5.0/CMakeLists.txt
--- magma-2.5.0-orig/CMakeLists.txt 2019-01-02 11:18:39.000000000 -0800
+++ magma-2.5.0/CMakeLists.txt 2019-04-03 15:58:01.871234891 -0700
@@ -440,18 +440,20 @@
# compile MAGMA sparse library
# sparse doesn't have Fortran at the moment, so no need for above shenanigans
-include_directories( sparse/include )
-include_directories( sparse/control )
-include_directories( testing )
-cuda_add_library( magma_sparse ${libsparse_all} )
-target_link_libraries( magma_sparse
- magma
+if (MAGMA_SPARSE)
+ include_directories( sparse/include )
+ include_directories( sparse/control )
+ include_directories( testing )
+ cuda_add_library( magma_sparse ${libsparse_all} )
+ target_link_libraries( magma_sparse
+ magma
${LAPACK_LIBRARIES}
${CUDA_CUDART_LIBRARY}
${CUDA_CUBLAS_LIBRARIES}
${CUDA_cusparse_LIBRARY}
-)
-set( LIBS_SPARSE ${LIBS} magma_sparse )
+ )
+ set( LIBS_SPARSE ${LIBS} magma_sparse )
+endif()
# ----------------------------------------
@@ -480,23 +482,31 @@
# ----------------------------------------
# compile each sparse tester
-set( CMAKE_RUNTIME_OUTPUT_DIRECTORY sparse/testing )
-foreach( TEST ${sparse_testing_all} )
+if (MAGMA_SPARSE)
+ set( CMAKE_RUNTIME_OUTPUT_DIRECTORY sparse/testing )
+ foreach( TEST ${sparse_testing_all} )
string( REGEX REPLACE "\\.(cpp|f90|F90)" "" EXE ${TEST} )
string( REGEX REPLACE "sparse/testing/" "" EXE ${EXE} )
#message( "${TEST} --> ${EXE}" )
add_executable( ${EXE} ${TEST} )
target_link_libraries( ${EXE} ${LIBS_SPARSE} )
-endforeach()
+ endforeach()
+endif()
# ----------------------------------------
# what to install
-install( TARGETS magma magma_sparse ${blas_fix}
+set(MAGMA_TARGETS magma)
+set(MAGMA_HEADERS_PATTERNS include/*.h)
+if (MAGMA_SPARSE)
+ set(MAGMA_TARGETS ${MAGMA_TARGETS} magma_sparse)
+ set(MAGMA_HEADERS_PATTERNS ${MAGMA_HEADERS_PATTERNS} sparse/include/*.h)
+endif()
+install( TARGETS ${MAGMA_TARGETS} ${blas_fix}
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib
ARCHIVE DESTINATION lib )
-file( GLOB headers include/*.h sparse/include/*.h )
+file( GLOB headers ${MAGMA_HEADERS_PATTERNS} )
install( FILES ${headers}
DESTINATION include )
@@ -509,4 +519,6 @@
message( STATUS " NFLAGS ${CUDA_NVCC_FLAGS}" )
message( STATUS " FFLAGS ${CMAKE_Fortran_FLAGS}" )
message( STATUS " LIBS ${LIBS}" )
-message( STATUS " LIBS_SPARSE ${LIBS_SPARSE}" )
+if (MAGMA_SPARSE)
+ message( STATUS " LIBS_SPARSE ${LIBS_SPARSE}" )
+endif()