summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Pfeiffer2018-12-16 19:45:05 +0100
committerChristian Pfeiffer2018-12-16 19:45:05 +0100
commitaeeb3eb7cb9da9eb402d126024612f04e72f311e (patch)
treefeaeadfa1ed517c578b7d6cc39b37695d1a11455
parent3dee1920c99d012eddbffe4e0e08187800e4917e (diff)
downloadaur-aeeb3eb7cb9da9eb402d126024612f04e72f311e.tar.gz
Updated to 2.15.1, enabled FEI, MLI, SuperLU_DIST
-rw-r--r--.SRCINFO18
-rw-r--r--PKGBUILD46
-rw-r--r--hypre-config-fix.patch36
3 files changed, 66 insertions, 34 deletions
diff --git a/.SRCINFO b/.SRCINFO
index aae5f52984a..763345f4582 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,21 +1,17 @@
-# Generated by mksrcinfo v8
-# Fri Aug 25 14:51:04 UTC 2017
pkgbase = hypre
pkgdesc = A library for solving large, sparse linear systems on massively parallel computers
- pkgver = 2.11.2
+ pkgver = 2.15.1
pkgrel = 1
url = http://acts.nersc.gov/hypre
- arch = i686
arch = x86_64
license = lgpl
- depends = gcc-libs
- depends = gcc-fortran
- depends = openmpi
- depends = blas
- depends = lapack
+ makedepends = gcc-fortran
depends = superlu
- source = https://computation.llnl.gov/projects/hypre-scalable-linear-solvers-multigrid-methods/download/hypre-2.11.2.tar.gz
- md5sums = d507943a1a3ce5681c3308e2f3a6dd34
+ depends = superlu_dist
+ source = https://github.com/LLNL/hypre/archive/v2.15.1.tar.gz
+ source = hypre-config-fix.patch
+ sha512sums = 5be677727b815b2eb0cd711b65ff6b4ef798f42023ec2831e66bfbba7de0288208c67257734641b40f884868e8b0db97bb12d4d3ea27e97e36041eacc7ac9fa2
+ sha512sums = 280f1577b20ae13f94b5c98fc05836a6784285bdb34a2622230861b02b464793ce915a81378838c0a222fd8d4341c40ae658ca5ff2099ec10d08a67f8cfa150d
pkgname = hypre
diff --git a/PKGBUILD b/PKGBUILD
index 996a2bc03f4..be4a9d38c50 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,37 +1,41 @@
# Maintainer: Alessandro G. Magnasco <alessandromagnasco at gmail dot com>
# Contributor: Bertrand Lacoste <bertrandlacoste at gmail dot com>
# Contributor: Tim Langlois <langlois at cs dot cornell dot edu>
+# Maintainer: Christian Pfeiffer <cpfeiffer at live dot de>
# Contributor: Wink Saville <wink at saville dot com>
pkgname=hypre
-pkgver=2.11.2
-_suffix=
+pkgver=2.15.1
pkgrel=1
pkgdesc="A library for solving large, sparse linear systems on massively parallel computers"
-arch=('i686' 'x86_64')
+arch=('x86_64')
url="http://acts.nersc.gov/hypre"
license=('lgpl')
-depends=('gcc-libs' 'gcc-fortran' 'openmpi' 'blas' 'lapack' 'superlu')
-source=(https://computation.llnl.gov/projects/hypre-scalable-linear-solvers-multigrid-methods/download/${pkgname}-${pkgver}.tar.gz)
-md5sums=('d507943a1a3ce5681c3308e2f3a6dd34')
+depends=('superlu' 'superlu_dist')
+makedepends=('gcc-fortran')
+source=(https://github.com/LLNL/hypre/archive/v${pkgver}.tar.gz
+ hypre-config-fix.patch)
+sha512sums=('5be677727b815b2eb0cd711b65ff6b4ef798f42023ec2831e66bfbba7de0288208c67257734641b40f884868e8b0db97bb12d4d3ea27e97e36041eacc7ac9fa2'
+ '280f1577b20ae13f94b5c98fc05836a6784285bdb34a2622230861b02b464793ce915a81378838c0a222fd8d4341c40ae658ca5ff2099ec10d08a67f8cfa150d')
+
+prepare() {
+ _build_dir="${srcdir}/${pkgname}-${pkgver}${_suffix}"
+ cd "${_build_dir}"
+
+ patch -p1 -i ../hypre-config-fix.patch
+}
build() {
_build_dir="${srcdir}/${pkgname}-${pkgver}${_suffix}"
cd "${_build_dir}/src"
-
-
- CFLAGS='-O3 -fopenmp -DMPIPP_H'
- CXXFLAGS='-O3 -fopenmp -DMPIPP_H'
- MPI_FLAGS=(--with-MPI --with-openmp --with-MPI-lib-dirs=/usr/lib/openmpi)
- MPI_FLAGS+=(--with-MPI-libs="gomp mpi mpi_usempif08 mpi_usempi_ignore_tkr mpi_mpifh gfortran m quadmath pthread")
# disable internal superlu and fei for now, not sure yet how to get it to use external superlu
- ./configure --prefix=/usr --enable-shared \
- --with-superlu --with-extra-incpath=/usr/include/superlu \
- --without-fei --without-babel \
- --with-blas=yes --with-lapack=yes \
- "${MPI_FLAGS[@]}" \
- CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}"
+ CFLAGS="${CFLAGS} -fopenmp" CXXFLAGS="${CXXFLAGS} -fopenmp" LDFLAGS="${LDFLAGS} -lgomp" \
+ ./configure --prefix="${pkgdir}/usr" --enable-shared \
+ --with-superlu --with-superlu-include=/usr/include/superlu --with-superlu-lib="-lsuperlu" \
+ --with-dsuperlu --with-dsuperlu-include=/usr/include/superlu_dist --with-dsuperlu-lib="-lsuperlu_dist" \
+ --with-fei --with-blas --with-lapack --with-openmp --enable-fortran --with-mli --with-MPI
+
make
}
@@ -46,10 +50,6 @@ package() {
_build_dir="${srcdir}/${pkgname}-${pkgver}${_suffix}"
cd "${_build_dir}/src"
- mkdir -p ${pkgdir}/usr/lib ${pkgdir}/usr/include
-
- install -m644 ${_build_dir}/src/hypre/include/*.h ${pkgdir}/usr/include
- install -m644 ${_build_dir}/src/hypre/lib/libHYPRE-${pkgver}.so ${pkgdir}/usr/lib
- ln -s libHYPRE-${pkgver}.so ${pkgdir}/usr/lib/libHYPRE.so
+ make install
}
diff --git a/hypre-config-fix.patch b/hypre-config-fix.patch
new file mode 100644
index 00000000000..f4bc467fdf8
--- /dev/null
+++ b/hypre-config-fix.patch
@@ -0,0 +1,36 @@
+diff -Naur hypre-2.15.1/src/FEI_mv/femli/Makefile hypre-2.15.1-fix/src/FEI_mv/femli/Makefile
+--- hypre-2.15.1/src/FEI_mv/femli/Makefile 2018-10-19 17:21:31.000000000 +0200
++++ hypre-2.15.1-fix/src/FEI_mv/femli/Makefile 2018-12-16 19:15:59.962580300 +0100
+@@ -13,6 +13,8 @@
+
+ include ../../config/Makefile.config
+
++SYSTEM_LIBS = $(MPILIBDIRS) $(MPILIBS) $(MPIFLAGS) -lm ${SUPERLU_LIBS} ${LAPACKLIBDIRS} ${LAPACKLIBS}
++
+ CINCLUDES = ${INCLUDES} ${MPIINCLUDE}
+
+ MLI_INCLUDES = \
+diff -Naur hypre-2.15.1/src/lib/Makefile hypre-2.15.1-fix/src/lib/Makefile
+--- hypre-2.15.1/src/lib/Makefile 2018-10-19 17:21:31.000000000 +0200
++++ hypre-2.15.1-fix/src/lib/Makefile 2018-12-16 19:15:54.485320700 +0100
+@@ -59,7 +59,7 @@
+
+ SONAME = libHYPRE-${HYPRE_RELEASE_VERSION}${HYPRE_LIB_SUFFIX}
+ SOLIBS = ${MPILIBDIRS} ${MPILIBS} ${LAPACKLIBDIRS} ${LAPACKLIBS}\
+- ${BLASLIBDIRS} ${BLASLIBS} ${LIBS} ${FLIBS}
++ ${BLASLIBDIRS} ${BLASLIBS} ${LIBS} ${FLIBS} ${SUPERLU_LIBS} ${DSUPERLU_LIBS}
+
+
+ ##################################################################
+diff -Naur hypre-2.15.1/src/parcsr_ls/Makefile hypre-2.15.1-fix/src/parcsr_ls/Makefile
+--- hypre-2.15.1/src/parcsr_ls/Makefile 2018-10-19 17:21:31.000000000 +0200
++++ hypre-2.15.1-fix/src/parcsr_ls/Makefile 2018-12-16 19:15:59.961578800 +0100
+@@ -12,6 +12,8 @@
+
+ include ../config/Makefile.config
+
++SYSTEM_LIBS = $(MPILIBDIRS) $(MPILIBS) $(MPIFLAGS) -lm $(DSUPERLU_LIBS) $(LAPACKLIBDIRS) $(LAPACKLIBS)
++
+ ## Euclid specific macros taken from distributed_ls/Euclid
+
+ CINCLUDES = ${INCLUDES} ${MPIINCLUDE}