summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Wells2021-08-06 13:46:13 -0400
committerDavid Wells2021-08-06 13:46:13 -0400
commitc219c12154130b8c504a18a2f7e9d08c9d9dab74 (patch)
tree6ec84e6d2013fbb66ec995c487413da8e554057e
parent2f20dca7f2fb1cc25cb844ec492b159ddbf9fc64 (diff)
downloadaur-c219c12154130b8c504a18a2f7e9d08c9d9dab74.tar.gz
Fix MKL and rename TBB
-rw-r--r--.SRCINFO3
-rw-r--r--PKGBUILD12
2 files changed, 12 insertions, 3 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 94bd86a4b47a..3d676042337b 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -14,7 +14,7 @@ pkgbase = deal-ii
optdepends = gmsh: An automatic 3D finite element mesh generator with pre and post-processing facilities
optdepends = gsl: A modern numerical library for C and C++ programmers
optdepends = hdf5-openmpi: General purpose library and file format for storing scientific data
- optdepends = intel-tbb: High level abstract threading library
+ optdepends = intel-mkl: Intel Math Kernel Library
optdepends = lapack: Linear Algebra PACKage
optdepends = metis: partitioning graphs, finite element meshes, fill reducing orderings for sparse matrices.
optdepends = muparser: A fast math parser library
@@ -26,6 +26,7 @@ pkgbase = deal-ii
optdepends = scalapack: subset of scalable LAPACK routines redesigned for distributed memory MIMD parallel computers
optdepends = slepc: Scalable library for Eigenvalue problem computations
optdepends = symengine: Fast symbolic manipulation library
+ optdepends = tbb: High level abstract threading library
optdepends = trilinos: object-oriented software framework for the solution of large-scale, complex multi-physics engineering and scientific problems
optdepends = suitesparse: A collection of sparse matrix libraries
optdepends = zlib: Compression library implementing the deflate compression method found in gzip and PKZIP
diff --git a/PKGBUILD b/PKGBUILD
index ace4a7366723..d3d7a55b5f50 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -20,7 +20,7 @@ optdepends=(
'gmsh: An automatic 3D finite element mesh generator with pre and post-processing facilities'
'gsl: A modern numerical library for C and C++ programmers'
'hdf5-openmpi: General purpose library and file format for storing scientific data'
- 'intel-tbb: High level abstract threading library'
+ 'intel-mkl: Intel Math Kernel Library'
'lapack: Linear Algebra PACKage'
'metis: partitioning graphs, finite element meshes, fill reducing orderings for sparse matrices.'
'muparser: A fast math parser library'
@@ -34,6 +34,7 @@ optdepends=(
# deal.II is not compatible with sundials 4.0 or newer yet
# 'sundials: Suite of nonlinear differential/algebraic equation solvers'
'symengine: Fast symbolic manipulation library'
+ 'tbb: High level abstract threading library'
'trilinos: object-oriented software framework for the solution of large-scale, complex multi-physics engineering and scientific problems'
'suitesparse: A collection of sparse matrix libraries'
'zlib: Compression library implementing the deflate compression method found in gzip and PKZIP'
@@ -52,7 +53,7 @@ build() {
# /opt/petsc/), source their environment variable scripts in the (likely) case
# that a user installed one of these packages without logging out and logging
# back in
- for package in opencascade p4est-deal-ii petsc slepc
+ for package in opencascade p4est-deal-ii petsc slepc intel-mkl
do
if pacman -Qs $package >/dev/null
then
@@ -96,6 +97,13 @@ build() {
fi
fi
+ # deal.II cannot find MKL unless we specify where its header is
+ if [ -n "${MKLROOT+x}" ]
+ then
+ cmake_configuration_flags+=" -DLAPACK_INCLUDE_DIRS=${MKLROOT}/include"
+ fi
+
+
# For GSL compatibility we need the full link interface, which includes
# libgslcblas, so disable --as-needed with GCC:
sed -i '/ENABLE_IF_LINKS(DEAL_II_LINKER_FLAGS "-Wl,--as-needed")/d' \