summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO14
-rw-r--r--PKGBUILD79
2 files changed, 38 insertions, 55 deletions
diff --git a/.SRCINFO b/.SRCINFO
index acc87d1011f1..67d8d3172563 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,11 +1,15 @@
pkgbase = scotch
pkgdesc = Software package and libraries for graph, mesh and hypergraph partitioning, static mapping, and sparse matrix block ordering. This is the all-inclusive version (MPI/serial/esmumps).
- pkgver = 6.0.9
- pkgrel = 1
+ pkgver = 7.0.4
+ pkgrel = 2
url = https://gitlab.inria.fr/scotch/scotch
arch = i686
arch = x86_64
license = custom:CeCILL-C
+ makedepends = gcc-fortran
+ makedepends = cmake
+ makedepends = flex
+ makedepends = bison
depends = zlib
depends = openmpi
depends = bzip2
@@ -16,8 +20,8 @@ pkgbase = scotch
conflicts = ptscotch-openmpi
conflicts = scotch_esmumps
conflicts = scotch_esmumps5
- source = https://gitlab.inria.fr/scotch/scotch/-/archive/v6.0.9/scotch-v6.0.9.tar.gz
- sha256sums = b9bc86c50b65781eb416663e938d57555373c2517ea8b9acf680fd3acde0cb0c
+ options = !emptydirs
+ source = https://gitlab.inria.fr/scotch/scotch/-/archive/v7.0.4/scotch-v7.0.4.tar.gz
+ sha512sums = 7c2a770c8b0932372a01613668d200fb934596df76293c7ed0e51ed8c1b57447d441937d98a2ad1d53e5579c0320d499910e7b1451b319c2acd9bcc56e6cfac3
pkgname = scotch
-
diff --git a/PKGBUILD b/PKGBUILD
index 9cf47140f787..aa6c83e5ed6d 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,70 +1,49 @@
+# Maintainer: Martin Diehl <aur@martin-diehl.net>
+# Contributor: Samuel Williams <samuel.williams@oriontransfer.co.nz>
pkgname=scotch
-pkgver=6.0.9
-pkgrel=1
+pkgver=7.0.4
+pkgrel=2
pkgdesc="Software package and libraries for graph, mesh and hypergraph partitioning, static mapping, and sparse matrix block ordering. This is the all-inclusive version (MPI/serial/esmumps)."
url="https://gitlab.inria.fr/scotch/scotch"
license=("custom:CeCILL-C")
depends=('zlib' 'openmpi' 'bzip2')
+makedepends=('gcc-fortran' 'cmake' 'flex' 'bison')
provides=('ptscotch' 'ptscotch-openmpi' 'scotch_esmumps' 'scotch_ptesmumps')
conflicts=('ptscotch-openmpi' 'scotch_esmumps' 'scotch_esmumps5')
arch=('i686' 'x86_64')
source=("https://gitlab.inria.fr/scotch/scotch/-/archive/v${pkgver}/${pkgname}-v${pkgver}.tar.gz")
-sha256sums=('b9bc86c50b65781eb416663e938d57555373c2517ea8b9acf680fd3acde0cb0c')
+sha512sums=('7c2a770c8b0932372a01613668d200fb934596df76293c7ed0e51ed8c1b57447d441937d98a2ad1d53e5579c0320d499910e7b1451b319c2acd9bcc56e6cfac3')
-prepare() {
- cd "${srcdir}/${pkgname}-v${pkgver}/src"
+options=(!emptydirs)
- [ -e Makefile.inc ] && rm Makefile.inc
- cp "Make.inc/Makefile.inc.${CARCH/_/-}_pc_linux2.shlib" Makefile.inc
-
- # Apply patch to fix shared library ldflags
- sed -i 's/$(AR) $(ARFLAGS) $(@) $(?)/$(AR) $(ARFLAGS) $(@) $(?) $(LDFLAGS)/g' libscotch/Makefile
-
- # Use the CFLAGS defined /etc/makepkg.conf
- sed -i "s/-O3/${CFLAGS} -fPIC/g" Makefile.inc
-
- # Fix C compiler
- sed -i "s/CCD\t.*=.*gcc/CCD = mpicc/" Makefile.inc
-
- # Also enable bzip2 compression
- sed -i "s/-DCOMMON_FILE_COMPRESS_GZ/-DCOMMON_FILE_COMPRESS_GZ -DCOMMON_FILE_COMPRESS_BZ2/" Makefile.inc
- sed -i "s/-lz/-lz -lbz2/" Makefile.inc
-
- # Fix the creation of directories
- sed -i "s/mkdir/mkdir\ -p/" Makefile.inc
-
- # To install headers and libs also for esmumps
- sed -i 's/scotch\*/{scotch,esmumps}\*/g' Makefile
+prepare(){
+ sed -i 's/DESTINATION man/DESTINATION share\/man/g' ${pkgname}-v${pkgver}/CMakeLists.txt
}
-
-build() {
- cd "${srcdir}/${pkgname}-v${pkgver}/src"
-
- make scotch
- make -j1 esmumps
-
- # MPI implementation is not thread-safe: compile the parallel versions without SCOTCH_PTHREAD
- sed -i "s/-DSCOTCH_PTHREAD//" Makefile.inc
- make ptscotch
- make -j1 ptesmumps
+build() {
+ cmake -S ${pkgname}-v${pkgver} \
+ -B build \
+ -D CMAKE_INSTALL_PREFIX:PATH=/usr \
+ -D CMAKE_BUILD_TYPE:STRING=Release \
+ -D BUILD_SHARED_LIBS:BOOL=ON \
+ -D INSTALL_METIS_HEADERS:BOOL=OFF \
+ -D COMMON_PTHREAD_FILE:BOOL=ON \
+ -D SCOTCH_PTHREAD:BOOL=ON \
+ -D SCOTCH_PTHREAD_MPI:BOOL=ON \
+ -D COMMON_PTHREAD_AFFINITY_LINUX:BOOL=ON
+ make -C build
}
-
+
check() {
- cd "${srcdir}/${pkgname}-v${pkgver}/src"
-
- make check LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:../../lib"
- make ptcheck LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:../../lib"
+ if [ -z "$(ldconfig -p | grep libcuda.so.1)" ]; then
+ export _libcuda=0
+ fi
+ make -C build test
}
-
+
package() {
- cd "${srcdir}/${pkgname}-v${pkgver}/src"
-
- make install prefix="${pkgdir}/usr" includedir="${pkgdir}/usr/include/scotch"
-
+ DESTDIR=${pkgdir} cmake --install build
# To avoid conflict with extra/gpart, maybe move the package to /opt/scotch ?
- mv "${pkgdir}/usr/bin/gpart" "${pkgdir}/usr/bin/gpart-scotch"
-
- install -m 644 -D "../doc/CeCILL-C_V1-en.txt" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ install -m 644 -D "${pkgname}-v${pkgver}/doc/CeCILL-C_V1-en.txt" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}