[arch-commits] Commit in magma/trunk (PKGBUILD cuda11.patch)
Konstantin Gizdov
kgizdov at archlinux.org
Mon Jun 22 11:00:17 UTC 2020
Date: Monday, June 22, 2020 @ 11:00:17
Author: kgizdov
Revision: 650375
cuda11 rebuild
Added:
magma/trunk/cuda11.patch
Modified:
magma/trunk/PKGBUILD
--------------+
PKGBUILD | 37 ++++++++++++++++++++++---------------
cuda11.patch | 33 +++++++++++++++++++++++++++++++++
2 files changed, 55 insertions(+), 15 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2020-06-22 10:03:44 UTC (rev 650374)
+++ PKGBUILD 2020-06-22 11:00:17 UTC (rev 650375)
@@ -10,36 +10,43 @@
arch=('x86_64')
url="https://icl.cs.utk.edu/magma/"
license=('custom')
-depends=('blas' 'lapack' 'cuda')
-makedepends=('gcc-fortran' 'cmake')
-optdepends=('python2: for examples and tests')
-source=("http://icl.cs.utk.edu/projectsfiles/${pkgname}/downloads/${pkgname}-${pkgver}.tar.gz")
-sha256sums=('c602d269a9f9a3df28f6a4f593be819abb12ed3fa413bba1ff8183de721c5ef6')
+depends=('blas' 'gcc9' 'lapack' 'cuda')
+makedepends=('gcc9-fortran' 'cmake')
+optdepends=('python2: for examples and tests'
+ 'gcc9-fortran: Fortran interface')
+source=("${pkgname}-${pkgver}.tar.gz::http://icl.cs.utk.edu/projectsfiles/${pkgname}/downloads/${pkgname}-${pkgver}.tar.gz"
+ 'cuda11.patch')
+sha256sums=('c602d269a9f9a3df28f6a4f593be819abb12ed3fa413bba1ff8183de721c5ef6'
+ '958467ea765b025a89b53bb74d7aea476d01c926ae0631ba0ed5520f9c697646')
prepare() {
- mkdir "${srcdir}/magma-${pkgver}"/build
+ mkdir "${srcdir}"/build
+ patch -Np1 -i "${srcdir}/cuda11.patch" -d "${srcdir}/${pkgname}-${pkgver}"
}
build() {
- cd "${srcdir}/magma-${pkgver}"/build
+ cd "${srcdir}"/build
- cmake .. \
+ CC=gcc-9 \
+ CXX=g++-9 \
+ FC=gfortran-9 \
+ cmake "${srcdir}/${pkgname}-${pkgver}" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DBUILD_SHARED_LIBS=ON \
- -DGPU_TARGET="sm_30 sm_32 sm_35 sm_37 sm_50 sm_53 sm_60 sm_61 sm_62 sm_70 sm_72 sm_75"
+ -DGPU_TARGET="sm_35 sm_37 sm_50 sm_53 sm_60 sm_61 sm_62 sm_70 sm_72 sm_75 sm_80" \
make
}
package() {
- cd "${srcdir}"/magma-${pkgver}/build
+ cd "${srcdir}"/build
make DESTDIR="${pkgdir}" install
- mkdir -p ${pkgdir}/usr/share/magma/example
- cp -r ${srcdir}/magma-${pkgver}/example/* ${pkgdir}/usr/share/magma/example/
- mkdir -p ${pkgdir}/usr/share/magma/testing
- cp -r ${srcdir}/magma-${pkgver}/testing/* ${pkgdir}/usr/share/magma/testing/
- install -Dm644 ${srcdir}/magma-${pkgver}/COPYRIGHT ${pkgdir}/usr/share/licenses/magma/LICENSE
+ install -d "${pkgdir}"/usr/share/magma/example
+ cp -r "${srcdir}"/magma-${pkgver}/example/* "${pkgdir}"/usr/share/magma/example/
+ install -d "${pkgdir}"/usr/share/magma/testing
+ cp -r "${srcdir}"/magma-${pkgver}/testing/* "${pkgdir}"/usr/share/magma/testing/
+ install -Dm644 "${srcdir}"/magma-${pkgver}/COPYRIGHT "${pkgdir}"/usr/share/licenses/magma/LICENSE
}
# vim:set ts=2 sw=2 et:
Added: cuda11.patch
===================================================================
--- cuda11.patch (rev 0)
+++ cuda11.patch 2020-06-22 11:00:17 UTC (rev 650375)
@@ -0,0 +1,33 @@
+diff -aur --color magma-2.5.3-old/CMakeLists.txt magma-2.5.3-new/CMakeLists.txt
+--- magma-2.5.3-old/CMakeLists.txt 2020-03-30 03:48:20.000000000 +0300
++++ magma-2.5.3-new/CMakeLists.txt 2020-06-22 13:45:54.865895509 +0300
+@@ -151,6 +151,10 @@
+ set( GPU_TARGET "${GPU_TARGET} sm_75" )
+ endif()
+
++ if (${GPU_TARGET} MATCHES Ampere)
++ set( GPU_TARGET "${GPU_TARGET} sm_80" )
++ endif()
++
+ if (${GPU_TARGET} MATCHES sm_20)
+ if (NOT MIN_ARCH)
+ set( MIN_ARCH 200 )
+@@ -259,8 +263,17 @@
+ message( STATUS " compile for CUDA arch 7.5 (Turing)" )
+ endif()
+
++ if (${GPU_TARGET} MATCHES sm_80)
++ if (NOT MIN_ARCH)
++ set( MIN_ARCH 800 )
++ endif()
++ set( NV_SM ${NV_SM} -gencode arch=compute_80,code=sm_80 )
++ set( NV_COMP -gencode arch=compute_80,code=compute_80 )
++ message( STATUS " compile for CUDA arch 8.0 (Ampere)" )
++ endif()
++
+ if (NOT MIN_ARCH)
+- message( FATAL_ERROR "GPU_TARGET must contain one or more of Fermi, Kepler, Maxwell, Pascal, Volta, Turing, or valid sm_[0-9][0-9]" )
++ message( FATAL_ERROR "GPU_TARGET must contain one or more of Fermi, Kepler, Maxwell, Pascal, Volta, Turing, Ampere or valid sm_[0-9][0-9]" )
+ endif()
+
+ set( CUDA_NVCC_FLAGS ${CUDA_NVCC_FLAGS} -Xcompiler -fPIC -DHAVE_CUBLAS ${NV_SM} ${NV_COMP} ${FORTRAN_CONVENTION} )
More information about the arch-commits
mailing list