Update to latest versions.

This commit is contained in:
andreili 2024-01-22 01:17:57 +01:00
parent c2d0aeabb0
commit 589675cba2
9 changed files with 22 additions and 770 deletions

View File

@ -2,3 +2,8 @@ dev-cpp
dev-libs dev-libs
sci-electronics sci-electronics
sci-libs sci-libs
cross-riscv32-unknown-elf
cross-x86_64-w64-mingw32
cross-i686-w64-mingw32
cross-aarch64-unknown-linux-gnu
cross-avr

View File

@ -1,14 +1,5 @@
AUX gcc-13.patch 627 BLAKE2B dd45523c61b5f328a04ab7397d2bfbf345a15eff1c0290390111b15f67f541d74811c100d9d9930c6a9f2b8da980de0c7ad04ef7067d1d08852102185fba1e60 SHA512 0c0e6d41025f3e331883cf2b3dd21ad5420f74f16d3222a9de17e61386cbd0fa7cfc3ab10beaa983ba42b44a9cfbfa51ab040c4e964a1aa8de47ecb4b7edd750
AUX v13-gcc-13.patch 2199 BLAKE2B 588a656312a38f3034651bc0d286635be4815312cd4c57411a03b7ba8e1e863c8758f114e5f09085468a6801c35f26300dd26f15871f5546428ec9aad698c7da SHA512 84d7a7911b59e985c03d1d6d189d59193ced479464e0c3c07c1dce1caed5cc2a1d76563724a1c09ef15bd0f2a8a98b581d5091a5b2c99861ecdaa3237264e295
AUX v14-gcc13.patch 629 BLAKE2B a61ff618e63e4fc5675670e4b2f53fffc67bba6fe74f8ccfbad69bd9694ef8982b7769a809e634152851fcc47b1cd0d1269458c11e0a8eddfd8acf9917f3b1c2 SHA512 57293c2d8c3a3b869df37d9723db55af82050c76ec2881480ea543c6f1f452cc74c6f24bc2bf682de082902ed1c61b05769d6e5a3da6c7e92b1f595265bcbb8c
AUX v14.patch 2101 BLAKE2B 2c888edcddb386f9256cb0fc85c0386ca1d24c0cfaaa1af08778e802c0fce058f29bc0a63912d46044c8cfa82025e1ba8086c75444d2ec003e2ff4b90543160e SHA512 436a472f9fa5d43c52e12d8d7ebfc961a82e9e9a893c61113980906fcdfff1ec4b38bb2fb5df4b239c8485931b8fad720eda5f19da1c61096e874c0f7f357945
AUX xyce.patch 1991 BLAKE2B 94c0b1a5afc67c0897c51506a8ae3ba82e821e2ededba960907dfac50109e685858d09dce4322fae1c569f7d53ab6ffec8dcc8f0f00b90242f860467399858a0 SHA512 dde23513862d8a79767ecadb3be076fa6f83e0c6867e98e4ea936d37d18c435fd0200197b38deec757eefab076338274f3788c18e73288744739c9f4de47560f AUX xyce.patch 1991 BLAKE2B 94c0b1a5afc67c0897c51506a8ae3ba82e821e2ededba960907dfac50109e685858d09dce4322fae1c569f7d53ab6ffec8dcc8f0f00b90242f860467399858a0 SHA512 dde23513862d8a79767ecadb3be076fa6f83e0c6867e98e4ea936d37d18c435fd0200197b38deec757eefab076338274f3788c18e73288744739c9f4de47560f
DIST trilinos-13.4.0-patches-r0.tar.xz 8740 BLAKE2B 333ab9ff1acb2f4b08007c7b99b96f023f6c742e4f991fc0ab9dd6595be7e3e319a77d5e329790cedca72d7a9060df837549d28e8a6cb4b8a838570d455ae356 SHA512 f30c16801cadec2a612ab2f7d3ca05c5ddfdfc513343a182562253cdfb58d38fa8b771ab07f7bc6bcb2505d146469da2ddda478f74447de746d5eca850da123e
DIST trilinos-13.4.1.tar.gz 168720416 BLAKE2B 5201c36aa998045f4eab99b67fce25f9a2f2a9524b8ca1147cd8db9ccc306e3df61336df3b2ee981317c8defbae2df9e36546a0e5ddfed3142213e437e4dfba0 SHA512 9c0fb3af2fa625cd0af1309bfa61c212e12657820707348c81355d506e07f540da5e42aa30237fbc80adf257bb636029345f248abaf7ef96fcdaed1c28ec3a19
DIST trilinos-14.0.0.tar.gz 179086187 BLAKE2B 0e0c3e3fa4b88164cd7e90720ec42eb007f8e89734e5537a7eba1f17754faf30c21fa1d77f7e8a7968bdb8bb230596a1adc74f8170577fd7b4eccb2e88c5b8f6 SHA512 b08fcf4f6bf2605267c44c038f352949e5bfe14b853de77e4c80e28f66c088ead1699b1e49f8475f1b98ce5a21238b98a299e760f1373e585c78b65120fa18e5
DIST trilinos-14.2.0.tar.gz 178867695 BLAKE2B 07ff61775399014091aae9c14ad12a69ab19853bc3489c15775490aa3f6e8ae868ac4e90bf046d10bf1ecb1d5558992f0afb0ce656f947336559fcf10085c038 SHA512 c676ff2b59904dc05a0ff434dd164bc96076999a5851c160c5851c124d3c519dd0cc3f088eba19f2000c7d1c2377f4efb2b2b8f9f3ee641b2180f3b99b28ea0b
DIST trilinos-14.4.0.tar.gz 188325969 BLAKE2B 909e3ebe229d035263d835e0d68977516d2a5df168785021fe300f7904e149586a82a6dba271cc1472455472397ee5467443244fb68fb27c00cf4e9b3d10a282 SHA512 497fc4fb4ab4338fffef7111635f3dc3b12cb7302bc3f56bafb5cc75b7c68e94cc22fcacd9dd625803a0f38e4fbce5105cab61df76e033a4581568c36a53fe8a DIST trilinos-14.4.0.tar.gz 188325969 BLAKE2B 909e3ebe229d035263d835e0d68977516d2a5df168785021fe300f7904e149586a82a6dba271cc1472455472397ee5467443244fb68fb27c00cf4e9b3d10a282 SHA512 497fc4fb4ab4338fffef7111635f3dc3b12cb7302bc3f56bafb5cc75b7c68e94cc22fcacd9dd625803a0f38e4fbce5105cab61df76e033a4581568c36a53fe8a
EBUILD trilinos-13.4.1.ebuild 9560 BLAKE2B bf029cfd7877ab5377dd8ea76eccc7bfac400500ffefcc01fcb78a11e096a17cd0dd140a9e04686d13ee82f33b96dc35795480faae57411e5fad1d016b30c7d4 SHA512 3819f3abf8889a48ab4e62302cfe6018269d13a0505ee057763cdebbf1fd7d3bf0247b81216b89a372a2d1abb38ac6ed49c28ff07ad84a8a32f28f2b107a691b DIST trilinos-15.0.0.tar.gz 182971338 BLAKE2B 0e459b9d070085a2a5bf06de8274ceec628f8913ab87c87a9502baf8065bfdabeca827ea9fa0f274c163bff1e7dc252eabf79ca250c0470d1da5e13492287d28 SHA512 a364e67686cdd4e1e34aa0e14b6cc051ed21a72b63719c47260d7839d47590b9e652be76cb9d61e513c7933b965fc8141c3ff898167e22353b33c9491a525c84
EBUILD trilinos-14.0.0.ebuild 8451 BLAKE2B d0ca1847ca3f964424304eb9c1abb21d96c7406310d8bccf2049b4aa5267c23878b88352bbd7c23640fa63d903ffa024240e29b988645fbb6cf216bd41ab996b SHA512 cb6774f526e18edf8f94c17f5444982181da7bfefcd18befa8204f97c2ec999209aaeaef9e16df3c567537e891aa905121569183873e2b70883609b7cf2b69bb
EBUILD trilinos-14.2.0.ebuild 8758 BLAKE2B 6abd3955a281d3477b6418b45e3a6008730595ea76ae0731cc66310c62e4b10115d41b9eb7ca0bac6689f91861c9f3a326cd46d81450db97bfc5485094ed477d SHA512 1e4a2753139e70039e4f567c28c27928909eb330599fd0a207a9b3d2af5675599207194b95a23c346ae56787ef341129bffc55916e3ca77aca02d7bd15e88551
EBUILD trilinos-14.4.0.ebuild 8864 BLAKE2B f9d93b9f77e4fe41a8f24dddf9d2b36fc78c446a242f3174c4a7ae683035646887d500b50e5799d39b1629472ae4171529a120158661cfe342c41885e8c365ff SHA512 a2488476f1a8abe0f37533e5ef051491884c780e653b40bee637aaab2560dc798de87d17142efccc69a443c1371e1d27d49e77bfb68cef67c8b13c957e6f6d8f EBUILD trilinos-14.4.0.ebuild 8864 BLAKE2B f9d93b9f77e4fe41a8f24dddf9d2b36fc78c446a242f3174c4a7ae683035646887d500b50e5799d39b1629472ae4171529a120158661cfe342c41885e8c365ff SHA512 a2488476f1a8abe0f37533e5ef051491884c780e653b40bee637aaab2560dc798de87d17142efccc69a443c1371e1d27d49e77bfb68cef67c8b13c957e6f6d8f
EBUILD trilinos-15.0.0.ebuild 8652 BLAKE2B 8f9e24acec395c9b57dff3c8e9382a0f8d5fc04d986d3554cbcb1f36e8d343bdb745ae01ec0a5d12218101f8673ca2d9ed036ea105cb25c8e5e1a99fdb99f943 SHA512 01c3fe794001e46234bb2e225de9d404c6d4aad02097a5376abd3b260d88550d46b4538c083bbef81c32866866b078447e7c5f05c58b5ad81d8403ee2d6ba3b1

View File

@ -1,11 +0,0 @@
diff -Naur Trilinos-trilinos-release-13-4-1_or/packages/teuchos/core/src/Teuchos_BigUIntDecl.hpp Trilinos-trilinos-release-13-4-1/packages/teuchos/core/src/Teuchos_BigUIntDecl.hpp
--- Trilinos-trilinos-release-13-4-1_or/packages/teuchos/core/src/Teuchos_BigUIntDecl.hpp 2023-05-13 23:56:33.699073588 +0200
+++ Trilinos-trilinos-release-13-4-1/packages/teuchos/core/src/Teuchos_BigUIntDecl.hpp 2023-05-13 23:56:59.079010911 +0200
@@ -43,6 +43,7 @@
#define TEUCHOS_BIG_UINT_DECL_HPP
#include <iosfwd>
+#include <cstdint>
/*! \file Teuchos_BigUIntDecl.hpp
\brief Arbitrary-precision unsigned integer declaration.

View File

@ -1,50 +0,0 @@
diff -Naur Trilinos-trilinos-release-13-4-1_or/packages/kokkos/core/src/impl/Kokkos_MemoryPool.cpp Trilinos-trilinos-release-13-4-1/packages/kokkos/core/src/impl/Kokkos_MemoryPool.cpp
--- Trilinos-trilinos-release-13-4-1_or/packages/kokkos/core/src/impl/Kokkos_MemoryPool.cpp 2023-06-11 21:27:20.637681333 +0200
+++ Trilinos-trilinos-release-13-4-1/packages/kokkos/core/src/impl/Kokkos_MemoryPool.cpp 2023-06-11 21:28:23.316933920 +0200
@@ -46,6 +46,7 @@
#include <ostream>
#include <sstream>
+#include <cstdint>
//----------------------------------------------------------------------------
//----------------------------------------------------------------------------
diff -Naur Trilinos-trilinos-release-13-4-1_or/packages/stk/stk_util/stk_util/ngp/NgpSpaces.hpp Trilinos-trilinos-release-13-4-1/packages/stk/stk_util/stk_util/ngp/NgpSpaces.hpp
--- Trilinos-trilinos-release-13-4-1_or/packages/stk/stk_util/stk_util/ngp/NgpSpaces.hpp 2023-06-12 22:13:54.653058491 +0200
+++ Trilinos-trilinos-release-13-4-1/packages/stk/stk_util/stk_util/ngp/NgpSpaces.hpp 2023-06-12 22:22:22.234504055 +0200
@@ -49,6 +49,8 @@
using ExecSpace = Kokkos::Experimental::HIP;
#elif defined(KOKKOS_ENABLE_OPENMP)
using ExecSpace = Kokkos::OpenMP;
+#elif defined(KOKKOS_ENABLE_THREADS)
+using ExecSpace = Kokkos::Threads;
#else
using ExecSpace = Kokkos::Serial;
#endif
@@ -59,6 +61,8 @@
using HostExecSpace = Kokkos::Serial;
#elif defined(KOKKOS_ENABLE_OPENMP)
using HostExecSpace = Kokkos::OpenMP;
+#elif defined(KOKKOS_ENABLE_THREADS)
+using HostExecSpace = Kokkos::Threads;
#else
using HostExecSpace = Kokkos::Serial;
#endif
@@ -69,6 +73,8 @@
using MemSpace = Kokkos::Experimental::HIPSpace;
#elif defined(KOKKOS_ENABLE_OPENMP)
using MemSpace = Kokkos::OpenMP;
+#elif defined(KOKKOS_ENABLE_THREADS)
+using MemSpace = Kokkos::Threads;
#else
using MemSpace = Kokkos::HostSpace;
#endif
@@ -83,6 +89,8 @@
using UVMMemSpace = Kokkos::Experimental::HIPHostPinnedSpace;
#elif defined(KOKKOS_ENABLE_OPENMP)
using UVMMemSpace = Kokkos::OpenMP;
+#elif defined(KOKKOS_ENABLE_THREADS)
+using UVMMemSpace = Kokkos::Threads;
#else
using UVMMemSpace = Kokkos::HostSpace;
#endif

View File

@ -1,11 +0,0 @@
diff -Naur Trilinos-trilinos-release-14-0-0_or/packages/teuchos/core/src/Teuchos_BigUIntDecl.hpp Trilinos-trilinos-release-14-0-0/packages/teuchos/core/src/Teuchos_BigUIntDecl.hpp
--- Trilinos-trilinos-release-14-0-0_or/packages/teuchos/core/src/Teuchos_BigUIntDecl.hpp 2023-06-14 22:54:06.565526085 +0200
+++ Trilinos-trilinos-release-14-0-0/packages/teuchos/core/src/Teuchos_BigUIntDecl.hpp 2023-06-14 22:54:26.028613299 +0200
@@ -43,6 +43,7 @@
#define TEUCHOS_BIG_UINT_DECL_HPP
#include <iosfwd>
+#include <cstdint>
/*! \file Teuchos_BigUIntDecl.hpp
\brief Arbitrary-precision unsigned integer declaration.

View File

@ -1,67 +0,0 @@
diff -Naur Trilinos-trilinos-release-14-0-0_or/packages/stk/stk_util/stk_util/ngp/NgpSpaces.hpp Trilinos-trilinos-release-14-0-0/packages/stk/stk_util/stk_util/ngp/NgpSpaces.hpp
--- Trilinos-trilinos-release-14-0-0_or/packages/stk/stk_util/stk_util/ngp/NgpSpaces.hpp 2023-06-14 23:24:20.313033330 +0200
+++ Trilinos-trilinos-release-14-0-0/packages/stk/stk_util/stk_util/ngp/NgpSpaces.hpp 2023-06-14 23:31:11.551230025 +0200
@@ -39,36 +39,21 @@
namespace stk {
namespace ngp {
-#ifdef KOKKOS_ENABLE_CUDA
-using ExecSpace = Kokkos::Cuda;
-#elif defined(KOKKOS_ENABLE_HIP)
-using ExecSpace = Kokkos::Experimental::HIP;
-#elif defined(KOKKOS_ENABLE_OPENMP)
-using ExecSpace = Kokkos::OpenMP;
-#else
-using ExecSpace = Kokkos::Serial;
-#endif
+using ExecSpace = Kokkos::DefaultExecutionSpace;
-#ifdef KOKKOS_ENABLE_CUDA
-using HostExecSpace = Kokkos::Serial;
-#elif defined(KOKKOS_ENABLE_HIP)
-using HostExecSpace = Kokkos::Serial;
-#elif defined(KOKKOS_ENABLE_OPENMP)
-using HostExecSpace = Kokkos::OpenMP;
-#else
-using HostExecSpace = Kokkos::Serial;
-#endif
+using HostExecSpace = Kokkos::DefaultHostExecutionSpace;
#ifdef KOKKOS_ENABLE_CUDA
using MemSpace = Kokkos::CudaSpace;
#elif defined(KOKKOS_ENABLE_HIP)
-using MemSpace = Kokkos::Experimental::HIPSpace;
-#elif defined(KOKKOS_ENABLE_OPENMP)
-using MemSpace = Kokkos::OpenMP;
+using MemSpace = Kokkos::HIPSpace;
#else
-using MemSpace = Kokkos::HostSpace;
+using MemSpace = ExecSpace::memory_space;
#endif
+#ifdef KOKKOS_HAS_SHARED_SPACE
+using UVMMemSpace = Kokkos::SharedSpace;
+#else
#ifdef KOKKOS_ENABLE_CUDA
#ifdef KOKKOS_ENABLE_CUDA_UVM
using UVMMemSpace = Kokkos::CudaUVMSpace;
@@ -82,7 +67,11 @@
#else
using UVMMemSpace = Kokkos::HostSpace;
#endif
+#endif
+#ifdef KOKKOS_HAS_SHARED_SPACE
+using HostPinnedSpace = Kokkos::SharedHostPinnedSpace;
+#else
#ifdef KOKKOS_ENABLE_CUDA
using HostPinnedSpace = Kokkos::CudaHostPinnedSpace;
#elif defined(KOKKOS_ENABLE_HIP)
@@ -90,6 +79,7 @@
#else
using HostPinnedSpace = MemSpace;
#endif
+#endif
#ifdef KOKKOS_ENABLE_HIP
template <typename ExecutionSpace>

View File

@ -1,314 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
CMAKE_MAKEFILE_GENERATOR=emake
inherit cmake toolchain-funcs
DESCRIPTION="Scientific library collection for large scale problems"
HOMEPAGE="http://trilinos.sandia.gov/"
MY_PV="${PV//\./-}"
PATCHSET="r0"
SRC_URI="https://github.com/${PN}/Trilinos/archive/${PN}-release-${MY_PV}.tar.gz -> ${P}.tar.gz
https://dev.gentoo.org/~tamiko/distfiles/${PN}-13.4.0-patches-${PATCHSET}.tar.xz"
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
LICENSE="BSD LGPL-2.1"
SLOT="0"
IUSE="
adolc all-packages arprec clp cuda eigen glpk gtest hdf5 hwloc hypre
matio metis mkl mumps netcdf openmp petsc qd scalapack scotch sparse
superlu taucs tbb test threads tvmet yaml zlib X superlu_dist
"
# TODO: fix export cmake function for tests
RESTRICT="test"
RDEPEND="
!dev-cpp/kokkos
dev-libs/boost:=
sys-libs/binutils-libs:=
virtual/blas
virtual/lapack
virtual/mpi
adolc? ( sci-libs/adolc )
arprec? ( sci-libs/arprec )
clp? ( sci-libs/coinor-clp )
cuda? ( >=dev-util/nvidia-cuda-toolkit-3.2 )
eigen? ( dev-cpp/eigen:3 )
glpk? ( sci-mathematics/glpk )
gtest? ( dev-cpp/gtest )
hdf5? ( sci-libs/hdf5:=[mpi] )
hypre? ( sci-libs/hypre:= )
hwloc? ( sys-apps/hwloc:= )
matio? ( sci-libs/matio )
mkl? ( sci-libs/mkl )
metis? ( sci-libs/metis )
mumps? ( sci-libs/mumps )
netcdf? ( sci-libs/netcdf:= )
petsc? ( sci-mathematics/petsc )
qd? ( sci-libs/qd )
scalapack? ( sci-libs/scalapack )
scotch? ( sci-libs/scotch:= )
sparse? ( sci-libs/cxsparse sci-libs/umfpack )
superlu? ( <=sci-libs/superlu-5.0 )
superlu_dist? ( <sci-libs/superlu_dist-8.1.0 sci-libs/parmetis:= )
taucs? ( sci-libs/taucs )
tbb? ( dev-cpp/tbb:= )
tvmet? ( dev-libs/tvmet )
yaml? ( dev-cpp/yaml-cpp:= )
zlib? ( sys-libs/zlib )
X? ( x11-libs/libX11 )"
DEPEND="${RDEPEND}
virtual/pkgconfig"
S="${WORKDIR}/Trilinos-${PN}-release-${MY_PV}"
PATCHES=(
"${WORKDIR}"/patches
"${FILESDIR}"/v13-gcc-13.patch
"${FILESDIR}"/gcc-13.patch
"${FILESDIR}"/xyce.patch
)
pkg_pretend() {
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
}
pkg_setup() {
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
}
trilinos_conf() {
local dirs libs d
for d in $($(tc-getPKG_CONFIG) --libs-only-L $1); do
dirs="${dirs};${d:2}"
done
[[ -n ${dirs} ]] && mycmakeargs+=( "-D${2}_LIBRARY_DIRS=${dirs:1}" )
for d in $($(tc-getPKG_CONFIG) --libs-only-l $1); do
libs="${libs};${d:2}"
done
[[ -n ${libs} ]] && mycmakeargs+=( "-D${2}_LIBRARY_NAMES=${libs:1}" )
dirs=""
for d in $($(tc-getPKG_CONFIG) --cflags-only-I $1); do
dirs="${dirs};${d:2}"
done
[[ -n ${dirs} ]] && mycmakeargs+=( "-D${2}_INCLUDE_DIRS=${dirs:1}" )
}
#
# The following packages are currently disabled:
# - Adelus/Zadelus due to underlinkage.
# - Moertel due to underlinkage
# - SEACAS is incompatible with netcdf, see
# https://github.com/trilinos/Trilinos/tree/master/packages/seacas#netcdf
#
src_configure() {
local mycmakeargs=(
-DBUILD_SHARED_LIBS=ON
-DCMAKE_INSTALL_PREFIX="${EPREFIX}"
-DCMAKE_SKIP_INSTALL_RPATH=ON
-DCMAKE_INSTALL_RPATH_USE_LINK_PATH=OFF
-DTrilinos_INSTALL_CONFIG_DIR="${EPREFIX}/usr/$(get_libdir)/cmake"
-DTrilinos_INSTALL_INCLUDE_DIR="${EPREFIX}/usr/include/trilinos"
-DTrilinos_INSTALL_LIB_DIR="${EPREFIX}/usr/$(get_libdir)/trilinos"
-DTrilinos_ENABLE_ALL_PACKAGES="$(usex all-packages)"
-DTrilinos_ENABLE_Adelus=OFF
-DTrilinos_ENABLE_Moertel=OFF
-DTrilinos_ENABLE_PyTrilinos=OFF
-DTrilinos_ENABLE_SEACAS=OFF
-DTrilinos_ENABLE_Amesos=ON
-DTrilinos_ENABLE_AztecOO=ON
-DTrilinos_ENABLE_COMPLEX_DOUBLE=ON
-DTrilinos_ENABLE_COMPLEX_FLOAT=ON
-DTrilinos_ENABLE_EpetraExt=ON
-DTrilinos_ENABLE_Epetra=ON
-DTrilinos_ENABLE_Ifpack=ON
-DTrilinos_ENABLE_ML=ON
-DTrilinos_ENABLE_MueLu=ON
-DTrilinos_ENABLE_OpenMP="$(usex openmp)"
-DTrilinos_ENABLE_ROL=ON
-DTrilinos_ENABLE_Sacado=ON
-DTrilinos_ENABLE_Teuchos=ON
-DTrilinos_ENABLE_Tpetra=ON
-DTrilinos_ENABLE_Zoltan=ON
-DTrilinos_ENABLE_TESTS="$(usex test)"
-DTrilinos_ENABLE_NOX=ON
-DTrilinos_ENABLE_Triutils=ON
-DTrilinos_ENABLE_Belos=ON
-DTrilinos_ENABLE_TrilinosCouplings=ON
-DEpetraExt_BUILD_BTF=ON
-DEpetraExt_BUILD_EXPERIMENTAL=ON
-DEpetraExt_BUILD_GRAPH_REORDERINGS=ON
-DTrilinos_ENABLE_Amesos2=ON
-DAmesos2_ENABLE_KLU2=ON
# Enable Basker solver without Amesos2
-DKokkos_ENABLE_OPENMP="$(usex openmp)"
-DTrilinos_ENABLE_Kokkos=ON
-DTrilinos_ENABLE_ShyLU=ON
-DTrilinos_ENABLE_ShyLU_NodeBasker=ON
# Enable ShyLU solver
#-DTrilinos_ENABLE_ShyLU_DD=ON
#-DTrilinos_ENABLE_ShyLU_DDCore=ON
-DAmesos2_ENABLE_Basker=ON
-DCMAKE_CXX_FLAGS:STRING="-DSHYLU_NODEBASKER"
#-DAmesos2_ENABLE_SuperLU="$(usex superlu)"
#-DAmesos2_ENABLE_SuperLUDist="$(usex superlu_dist)"
#-DAmesos2_ENABLE_Eperta=ON
#-DTrilinos_ENABLE_ShyLU_DD=ON
#-DTrilinos_ENABLE_ShyLU_DDBDDC=ON
#-DTrilinos_ENABLE_ShyLU_NodeFastILU=ON
#-DTrilinos_ENABLE_ShyLU_DDCore=ON
#-DTrilinos_ENABLE_ShyLU_NodeFastILU=ON
#-DTpetra_INST_COMPLEX_FLOAT=OFF
#-DTpetra_INST_COMPLEX_DOUBLE=OFF
#-DAnasazi_ENABLE_COMPLEX=OFF
#-DAnasazi_ENABLE_Tpetra=OFF
-DTPL_ENABLE_BinUtils=ON
-DTPL_ENABLE_BLAS=ON
-DTPL_ENABLE_LAPACK=ON
-DTPL_ENABLE_MPI=ON
-DTPL_ENABLE_ADOLC="$(usex adolc)"
-DTPL_ENABLE_AMD="$(usex sparse)"
-DTPL_ENABLE_ARPREC="$(usex arprec)"
-DTPL_ENABLE_BLACS="$(usex scalapack)"
-DTPL_ENABLE_BoostLib=ON
-DTPL_ENABLE_Boost=ON
-DTPL_ENABLE_Clp="$(usex clp)"
-DTPL_ENABLE_CSparse="$(usex sparse)"
-DTPL_ENABLE_CUDA="$(usex cuda)"
-DTPL_ENABLE_CUSPARSE="$(usex cuda)"
-DTPL_ENABLE_Eigen="$(usex eigen)"
-DTPL_ENABLE_GLPK="$(usex glpk)"
-DTPL_ENABLE_gtest="$(usex gtest)"
-DTPL_ENABLE_HDF5="$(usex hdf5)"
-DTPL_ENABLE_HWLOC="$(usex hwloc)"
-DTPL_ENABLE_HYPRE="$(usex hypre)"
-DTPL_ENABLE_Matio="$(usex matio)"
-DTPL_ENABLE_METIS="$(usex metis)"
-DTPL_ENABLE_MKL="$(usex mkl)"
-DTPL_ENABLE_MUMPS="$(usex mumps)"
-DTPL_ENABLE_Netcdf="$(usex netcdf)"
-DTPL_ENABLE_PARDISO_MKL="$(usex mkl)"
-DTPL_ENABLE_PETSC="$(usex petsc)"
-DTPL_ENABLE_Pthread="$(usex threads)"
-DTPL_ENABLE_QD="$(usex qd)"
-DTPL_ENABLE_SCALAPACK="$(usex scalapack)"
-DTPL_ENABLE_Scotch="$(usex scotch)"
-DTPL_ENABLE_SuperLU="$(usex superlu)"
-DTPL_ENABLE_SuperLUDist="$(usex superlu_dist)"
-DTPL_ENABLE_ParMETIS="$(usex superlu_dist)"
-DTPL_ENABLE_TAUCS="$(usex taucs)"
-DTPL_ENABLE_TBB="$(usex tbb)"
-DTPL_ENABLE_Thrust="$(usex cuda)"
-DTPL_ENABLE_TVMET="$(usex tvmet)"
-DTPL_ENABLE_UMFPACK="$(usex sparse)"
-DTPL_ENABLE_X11="$(usex X)"
-DTPL_ENABLE_yaml-cpp="$(usex yaml)"
-DTPL_ENABLE_Zlib="$(usex zlib)"
)
#
# Make sure some critical configuration options are always set
# correctly independently of what Trilinos dependency resolver thinks
# it should be doing.
#
local mycmakeargs+=(
-DAmesos2_ENABLE_LAPACK=ON
-DAmesos2_ENABLE_MUMPS=OFF
-DTpetra_INST_SERIAL=ON
)
use eigen && \
mycmakeargs+=(
-DEigen_INCLUDE_DIRS="${EPREFIX}/usr/include/eigen3"
)
use hypre && \
mycmakeargs+=(
-DHYPRE_INCLUDE_DIRS="${EPREFIX}/usr/include/hypre"
)
use scotch && \
mycmakeargs+=(
-DScotch_INCLUDE_DIRS="${EPREFIX}/usr/include/scotch"
)
# cxsparse is a rewrite of csparse + extras
use sparse && \
mycmakeargs+=(
-DCSparse_LIBRARY_NAMES="cxsparse"
)
# mandatory blas and lapack
trilinos_conf blas BLAS
trilinos_conf lapack LAPACK
use superlu && trilinos_conf superlu SuperLU
use metis && trilinos_conf metis METIS
# blacs library is included in scalapack these days
if use scalapack; then
trilinos_conf scalapack SCALAPACK
mycmakeargs+=(
-DBLACS_LIBRARY_NAMES="scalapack"
-DBLACS_INCLUDE_DIRS="${EPREFIX}/usr/include/blacs"
)
fi
#
# Make sure we use the compiler wrappers in order to build trilinos.
#
[ ! -z "${CC}"] && export OMPI_CC="${CC}" MPICH_CC="${CC}" && tc-export OMPI_CC MPICH_CC
[ ! -z "${CXX}"] && export OMPI_CXX="${CXX}" MPICH_CXX="${CXX}" && tc-export OMPI_CXX MPICH_CXX
export CC=mpicc CXX=mpicxx && tc-export CC CXX
mycmakeargs+=(
-DCMAKE_CXX_COMPILER=mpicxx
-DCMAKE_C_COMPILER=mpicc
-DCMAKE_Fortran_COMPILER=mpif77
)
if use cuda ; then
export CC=nvcc_wrapper CXX=nvcc_wrapper && tc-export CC CXX
#export OMPI_CXX=/usr/lib64/trilinos/bin/nvcc_wrapper && tc-export OMPI_CXX
mycmakeargs+=(
-DCMAKE_CXX_COMPILER=/usr/lib64/trilinos/bin/nvcc_wrapper
-DCMAKE_C_COMPILER=/usr/lib64/trilinos/bin/nvcc_wrapper
#-DCMAKE_CXX_FLAGS="-g -lineinfo -Xcudafe --diag_suppress=conversion_function_not_usable -Xcudafe --diag_suppress=cc_clobber_ignored -Xcudafe --diag_suppress=code_is_unreachable"
-DTPL_ENABLE_MPI=ON
-DTPL_ENABLE_CUDA=ON
)
fi
# Trilinos needs a custom build type:
local CMAKE_BUILD_TYPE=Release
cmake_src_configure
}
src_install() {
cmake_src_install
mv "${ED}"/bin "${ED}/usr/$(get_libdir)"/trilinos || die "mv failed"
mkdir -p "${ED}/usr/$(get_libdir)"/cmake
mv "${ED}/usr/$(get_libdir)"/trilinos/cmake/* "${ED}/usr/$(get_libdir)"/cmake || die "mv failed"
# Fix up include paths:
sed -i -e 's#external_packages#trilinos/external_packages#g' \
"${ED}/usr/$(get_libdir)"/cmake/**/*.cmake || die "sed failed"
rmdir "${ED}/usr/$(get_libdir)/trilinos/cmake" || die "rmdir failed"
#
# register $(get_libdir)/trilinos in LDPATH so that the dynamic linker
# has a chance to pick up the libraries...
#
cat >> "${T}"/99trilinos <<- EOF
LDPATH="${EPREFIX}/usr/$(get_libdir)/trilinos"
PATH="${EPREFIX}/usr/$(get_libdir)/trilinos/bin"
EOF
doenvd "${T}"/99trilinos
}

View File

@ -1,285 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
CMAKE_MAKEFILE_GENERATOR=emake
inherit cmake toolchain-funcs
DESCRIPTION="Scientific library collection for large scale problems"
HOMEPAGE="http://trilinos.sandia.gov/"
MY_PV="${PV//\./-}"
PATCHSET="r0"
SRC_URI="https://github.com/${PN}/Trilinos/archive/${PN}-release-${MY_PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
LICENSE="BSD LGPL-2.1"
SLOT="0"
IUSE="
adolc all-packages arprec clp cuda eigen glpk gtest hdf5 hwloc hypre
matio metis mkl mumps netcdf openmp petsc qd scalapack scotch sparse
superlu taucs tbb test threads tvmet yaml zlib X
"
# TODO: fix export cmake function for tests
RESTRICT="test"
RDEPEND="
!dev-cpp/kokkos
dev-libs/boost:=
sys-libs/binutils-libs:=
virtual/blas
virtual/lapack
virtual/mpi
adolc? ( sci-libs/adolc )
arprec? ( sci-libs/arprec )
clp? ( sci-libs/coinor-clp )
cuda? ( >=dev-util/nvidia-cuda-toolkit-3.2 )
eigen? ( dev-cpp/eigen:3 )
glpk? ( sci-mathematics/glpk )
gtest? ( dev-cpp/gtest )
hdf5? ( sci-libs/hdf5:=[mpi] )
hypre? ( sci-libs/hypre:= )
hwloc? ( sys-apps/hwloc:= )
matio? ( sci-libs/matio )
mkl? ( sci-libs/mkl )
metis? ( sci-libs/metis )
mumps? ( sci-libs/mumps )
netcdf? ( sci-libs/netcdf:= )
petsc? ( sci-mathematics/petsc )
qd? ( sci-libs/qd )
scalapack? ( sci-libs/scalapack )
scotch? ( sci-libs/scotch:= )
sparse? ( sci-libs/cxsparse sci-libs/umfpack )
superlu? ( <sci-libs/superlu-5.0 )
taucs? ( sci-libs/taucs )
tbb? ( dev-cpp/tbb:= )
tvmet? ( dev-libs/tvmet )
yaml? ( dev-cpp/yaml-cpp:= )
zlib? ( sys-libs/zlib )
X? ( x11-libs/libX11 )"
DEPEND="${RDEPEND}
virtual/pkgconfig"
S="${WORKDIR}/Trilinos-${PN}-release-${MY_PV}"
PATCHES=(
"${FILESDIR}"/v14-gcc13.patch
"${FILESDIR}"/v14.patch
"${FILESDIR}"/xyce.patch
)
pkg_pretend() {
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
}
pkg_setup() {
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
}
trilinos_conf() {
local dirs libs d
for d in $($(tc-getPKG_CONFIG) --libs-only-L $1); do
dirs="${dirs};${d:2}"
done
[[ -n ${dirs} ]] && mycmakeargs+=( "-D${2}_LIBRARY_DIRS=${dirs:1}" )
for d in $($(tc-getPKG_CONFIG) --libs-only-l $1); do
libs="${libs};${d:2}"
done
[[ -n ${libs} ]] && mycmakeargs+=( "-D${2}_LIBRARY_NAMES=${libs:1}" )
dirs=""
for d in $($(tc-getPKG_CONFIG) --cflags-only-I $1); do
dirs="${dirs};${d:2}"
done
[[ -n ${dirs} ]] && mycmakeargs+=( "-D${2}_INCLUDE_DIRS=${dirs:1}" )
}
#
# The following packages are currently disabled:
# - Adelus/Zadelus due to underlinkage.
# - Moertel due to underlinkage
# - SEACAS is incompatible with netcdf, see
# https://github.com/trilinos/Trilinos/tree/master/packages/seacas#netcdf
#
src_configure() {
local mycmakeargs=(
-DBUILD_SHARED_LIBS=ON
-DCMAKE_INSTALL_PREFIX="${EPREFIX}"
-DCMAKE_SKIP_INSTALL_RPATH=ON
-DCMAKE_INSTALL_RPATH_USE_LINK_PATH=OFF
-DTrilinos_INSTALL_CONFIG_DIR="${EPREFIX}/usr/$(get_libdir)/cmake"
-DTrilinos_INSTALL_INCLUDE_DIR="${EPREFIX}/usr/include/trilinos"
-DTrilinos_INSTALL_LIB_DIR="${EPREFIX}/usr/$(get_libdir)/trilinos"
-DTrilinos_ENABLE_ALL_PACKAGES="$(usex all-packages)"
-DTrilinos_ENABLE_Adelus=OFF
-DTrilinos_ENABLE_Moertel=OFF
-DTrilinos_ENABLE_PyTrilinos=OFF
-DTrilinos_ENABLE_SEACAS=OFF
-DTrilinos_ENABLE_Amesos=ON
-DTrilinos_ENABLE_AztecOO=ON
-DTrilinos_ENABLE_EpetraExt=ON
-DTrilinos_ENABLE_Epetra=ON
-DTrilinos_ENABLE_Ifpack=ON
-DTrilinos_ENABLE_ML=ON
-DTrilinos_ENABLE_MueLu=ON
-DTrilinos_ENABLE_OpenMP="$(usex openmp)"
-DTrilinos_ENABLE_ROL=ON
-DTrilinos_ENABLE_Sacado=ON
-DTrilinos_ENABLE_Teuchos=ON
-DTrilinos_ENABLE_Tpetra=ON
-DTrilinos_ENABLE_Zoltan=ON
-DTrilinos_ENABLE_TESTS="$(usex test)"
-DTPL_ENABLE_BinUtils=ON
-DTPL_ENABLE_BLAS=ON
-DTPL_ENABLE_LAPACK=ON
-DTPL_ENABLE_MPI=ON
-DTPL_ENABLE_ADOLC="$(usex adolc)"
-DTPL_ENABLE_AMD="$(usex sparse)"
-DTPL_ENABLE_ARPREC="$(usex arprec)"
-DTPL_ENABLE_BLACS="$(usex scalapack)"
-DTPL_ENABLE_BoostLib=ON
-DTPL_ENABLE_Boost=ON
-DTPL_ENABLE_Clp="$(usex clp)"
-DTPL_ENABLE_CSparse="$(usex sparse)"
-DTPL_ENABLE_CUDA="$(usex cuda)"
-DTPL_ENABLE_CUSPARSE="$(usex cuda)"
-DTPL_ENABLE_Eigen="$(usex eigen)"
-DTPL_ENABLE_GLPK="$(usex glpk)"
-DTPL_ENABLE_gtest="$(usex gtest)"
-DTPL_ENABLE_HDF5="$(usex hdf5)"
-DTPL_ENABLE_HWLOC="$(usex hwloc)"
-DTPL_ENABLE_HYPRE="$(usex hypre)"
-DTPL_ENABLE_Matio="$(usex matio)"
-DTPL_ENABLE_METIS="$(usex metis)"
-DTPL_ENABLE_MKL="$(usex mkl)"
-DTPL_ENABLE_MUMPS="$(usex mumps)"
-DTPL_ENABLE_Netcdf="$(usex netcdf)"
-DTPL_ENABLE_PARDISO_MKL="$(usex mkl)"
-DTPL_ENABLE_PETSC="$(usex petsc)"
-DTPL_ENABLE_Pthread="$(usex threads)"
-DTPL_ENABLE_QD="$(usex qd)"
-DTPL_ENABLE_SCALAPACK="$(usex scalapack)"
-DTPL_ENABLE_Scotch="$(usex scotch)"
-DTPL_ENABLE_SuperLU="$(usex superlu)"
-DTPL_ENABLE_TAUCS="$(usex taucs)"
-DTPL_ENABLE_TBB="$(usex tbb)"
#-DTPL_ENABLE_Thrust="$(usex cuda)"
-DTPL_ENABLE_TVMET="$(usex tvmet)"
-DTPL_ENABLE_UMFPACK="$(usex sparse)"
-DTPL_ENABLE_X11="$(usex X)"
-DTPL_ENABLE_yaml-cpp="$(usex yaml)"
-DTPL_ENABLE_Zlib="$(usex zlib)"
)
local mycmakeargs+=(
# Xyce base depend
-DTrilinos_ENABLE_TrilinosCouplings=ON
-DEpetraExt_BUILD_BTF=ON
-DEpetraExt_BUILD_EXPERIMENTAL=ON
-DEpetraExt_BUILD_GRAPH_REORDERINGS=ON
#-DTeuchos_ENABLE_COMPLEX=ON
# error fixes
-DTrilinos_ENABLE_COMPLEX=ON
-DAmesos_ENABLE_CSparse="$(usex sparse)"
#-DTrilinos_ENABLE_COMPLEX_DOUBLE=ON
#-DTrilinos_ENABLE_COMPLEX_FLOAT=ON
#-DTeuchos_ENABLE_FLOAT=ON
#-DTpetra_INST_FLOAT=ON
# more solvers
#-DKokkos_ENABLE_THREADS="$(usex threads)"
#-DTpetra_INST_PTHREAD="$(usex threads)"
-DTrilinos_ENABLE_ShyLU_NodeTacho=OFF
#
-DAmesos_ENABLE_ParMETIS=ON
# Basker solver
-DAmesos2_ENABLE_Basker=ON
-DCMAKE_CXX_FLAGS:STRING="-DSHYLU_NODEBASKER"
)
#
# Make sure some critical configuration options are always set
# correctly independently of what Trilinos dependency resolver thinks
# it should be doing.
#
local mycmakeargs+=(
-DAmesos2_ENABLE_LAPACK=ON
-DAmesos2_ENABLE_MUMPS=OFF
-DTpetra_INST_SERIAL=ON
)
use eigen && \
mycmakeargs+=(
-DEigen_INCLUDE_DIRS="${EPREFIX}/usr/include/eigen3"
)
use hypre && \
mycmakeargs+=(
-DHYPRE_INCLUDE_DIRS="${EPREFIX}/usr/include/hypre"
)
use scotch && \
mycmakeargs+=(
-DScotch_INCLUDE_DIRS="${EPREFIX}/usr/include/scotch"
)
# cxsparse is a rewrite of csparse + extras
use sparse && \
mycmakeargs+=(
-DCSparse_LIBRARY_NAMES="cxsparse"
)
# mandatory blas and lapack
trilinos_conf blas BLAS
trilinos_conf lapack LAPACK
use superlu && trilinos_conf superlu SuperLU
use metis && trilinos_conf metis METIS
# blacs library is included in scalapack these days
if use scalapack; then
trilinos_conf scalapack SCALAPACK
mycmakeargs+=(
-DBLACS_LIBRARY_NAMES="scalapack"
-DBLACS_INCLUDE_DIRS="${EPREFIX}/usr/include/blacs"
)
fi
#
# Make sure we use the compiler wrappers in order to build trilinos.
#
[ ! -z "${CC}"] && export OMPI_CC="${CC}" MPICH_CC="${CC}" && tc-export OMPI_CC MPICH_CC
[ ! -z "${CXX}"] && export OMPI_CXX="${CXX}" MPICH_CXX="${CXX}" && tc-export OMPI_CXX MPICH_CXX
export CC=mpicc CXX=mpicxx && tc-export CC CXX
# Trilinos needs a custom build type:
local CMAKE_BUILD_TYPE=Release
cmake_src_configure
}
src_install() {
cmake_src_install
# Clean up the mess:
# Let us move the bin directory out of the way to avoid potential
# clashes due to very generically named binaries such as
# »nvcc_wrapper«, etc.
mv "${ED}"/bin "${ED}/usr/$(get_libdir)"/trilinos || die "mv failed"
# Move the cmake directory to the right location:
mkdir -p "${ED}/usr/$(get_libdir)"/cmake
mv "${ED}/usr/$(get_libdir)"/trilinos/cmake/* "${ED}/usr/$(get_libdir)"/cmake || die "mv failed"
# Fix up include paths:
sed -i -e 's#external_packages#trilinos/external_packages#g' \
"${ED}/usr/$(get_libdir)"/cmake/**/*.cmake || die "sed failed"
rmdir "${ED}/usr/$(get_libdir)/trilinos/cmake" || die "rmdir failed"
# Register $(get_libdir)/trilinos in LDPATH so that the dynamic linker
# has a chance to pick up the libraries, also add Trilinos' binaries ot
# the PATH environment variable.
cat >> "${T}"/99trilinos <<- EOF
LDPATH="${EPREFIX}/usr/$(get_libdir)/trilinos"
PATH="${EPREFIX}/usr/$(get_libdir)/trilinos/bin"
EOF
doenvd "${T}"/99trilinos
}

View File

@ -4,7 +4,7 @@
EAPI=8 EAPI=8
CMAKE_MAKEFILE_GENERATOR=emake CMAKE_MAKEFILE_GENERATOR=emake
inherit cmake toolchain-funcs inherit cmake flag-o-matic toolchain-funcs
DESCRIPTION="Scientific library collection for large scale problems" DESCRIPTION="Scientific library collection for large scale problems"
HOMEPAGE="http://trilinos.sandia.gov/" HOMEPAGE="http://trilinos.sandia.gov/"
@ -19,7 +19,7 @@ SLOT="0"
IUSE=" IUSE="
adolc all-packages arprec clp cuda eigen glpk gtest hdf5 hwloc hypre adolc all-packages arprec clp cuda eigen glpk gtest hdf5 hwloc hypre
matio metis mkl mumps netcdf openmp petsc qd scalapack scotch sparse matio metis mkl mumps netcdf openmp petsc qd scalapack scotch sparse
superlu taucs tbb test threads tvmet yaml zlib X superlu taucs tbb test threads tvmet yaml zlib X shylu
" "
# TODO: fix export cmake function for tests # TODO: fix export cmake function for tests
@ -45,6 +45,7 @@ RDEPEND="
matio? ( sci-libs/matio ) matio? ( sci-libs/matio )
mkl? ( sci-libs/mkl ) mkl? ( sci-libs/mkl )
metis? ( sci-libs/metis ) metis? ( sci-libs/metis )
metis? ( openmp? ( sci-libs/parmetis ) )
mumps? ( sci-libs/mumps ) mumps? ( sci-libs/mumps )
netcdf? ( sci-libs/netcdf:= ) netcdf? ( sci-libs/netcdf:= )
petsc? ( sci-mathematics/petsc ) petsc? ( sci-mathematics/petsc )
@ -58,15 +59,14 @@ RDEPEND="
tvmet? ( dev-libs/tvmet ) tvmet? ( dev-libs/tvmet )
yaml? ( dev-cpp/yaml-cpp:= ) yaml? ( dev-cpp/yaml-cpp:= )
zlib? ( sys-libs/zlib ) zlib? ( sys-libs/zlib )
X? ( x11-libs/libX11 ) X? ( x11-libs/libX11 )"
sci-libs/parmetis"
DEPEND="${RDEPEND} DEPEND="${RDEPEND}
virtual/pkgconfig" virtual/pkgconfig"
S="${WORKDIR}/Trilinos-${PN}-release-${MY_PV}" S="${WORKDIR}/Trilinos-${PN}-release-${MY_PV}"
PATCHES=( PATCHES=(
"${FILESDIR}"/xyce.patch "${FILESDIR}/xyce.patch"
) )
pkg_pretend() { pkg_pretend() {
@ -94,28 +94,21 @@ trilinos_conf() {
[[ -n ${dirs} ]] && mycmakeargs+=( "-D${2}_INCLUDE_DIRS=${dirs:1}" ) [[ -n ${dirs} ]] && mycmakeargs+=( "-D${2}_INCLUDE_DIRS=${dirs:1}" )
} }
#
# The following packages are currently disabled:
# - Adelus/Zadelus due to underlinkage.
# - Moertel due to underlinkage
# - SEACAS is incompatible with netcdf, see
# https://github.com/trilinos/Trilinos/tree/master/packages/seacas#netcdf
#
src_configure() { src_configure() {
# Trilinos is a massive C++ project. Fixing all of the lto warnings and
# making safe for lto compilation/linking will be a massive
# undertaking. Thus, simply filter lto flags. bug #862987
filter-lto
local mycmakeargs=( local mycmakeargs=(
-DBUILD_SHARED_LIBS=ON -DBUILD_SHARED_LIBS=ON
-DCMAKE_INSTALL_PREFIX="${EPREFIX}" -DCMAKE_INSTALL_PREFIX="${EPREFIX}"
-DCMAKE_SKIP_RPATH=ON
-DCMAKE_SKIP_INSTALL_RPATH=ON -DCMAKE_SKIP_INSTALL_RPATH=ON
-DCMAKE_INSTALL_RPATH_USE_LINK_PATH=OFF
-DTrilinos_INSTALL_CONFIG_DIR="${EPREFIX}/usr/$(get_libdir)/cmake"
-DTrilinos_INSTALL_INCLUDE_DIR="${EPREFIX}/usr/include/trilinos" -DTrilinos_INSTALL_INCLUDE_DIR="${EPREFIX}/usr/include/trilinos"
-DTrilinos_INSTALL_LIB_DIR="${EPREFIX}/usr/$(get_libdir)/trilinos" -DTrilinos_INSTALL_LIB_DIR="${EPREFIX}/usr/$(get_libdir)/trilinos"
-DTrilinos_ENABLE_ALL_PACKAGES="$(usex all-packages)" -DTrilinos_ENABLE_ALL_PACKAGES="$(usex all-packages)"
-DTrilinos_ENABLE_Adelus=OFF
-DTrilinos_ENABLE_Moertel=OFF
-DTrilinos_ENABLE_PyTrilinos=OFF -DTrilinos_ENABLE_PyTrilinos=OFF
-DTrilinos_ENABLE_SEACAS=OFF
-DTrilinos_ENABLE_Amesos=ON -DTrilinos_ENABLE_Amesos=ON
-DTrilinos_ENABLE_AztecOO=ON -DTrilinos_ENABLE_AztecOO=ON
-DTrilinos_ENABLE_EpetraExt=ON -DTrilinos_ENABLE_EpetraExt=ON
@ -179,6 +172,8 @@ src_configure() {
-DEpetraExt_BUILD_EXPERIMENTAL=ON -DEpetraExt_BUILD_EXPERIMENTAL=ON
-DEpetraExt_BUILD_GRAPH_REORDERINGS=ON -DEpetraExt_BUILD_GRAPH_REORDERINGS=ON
-DTeuchos_ENABLE_COMPLEX=ON -DTeuchos_ENABLE_COMPLEX=ON
-DTrilinos_ENABLE_ShyLU="$(usex shylu)"
-DTrilinos_ENABLE_ShyLU_NodeTacho="$(usex shylu)"
# error fixes # error fixes
-DTrilinos_ENABLE_COMPLEX=ON -DTrilinos_ENABLE_COMPLEX=ON
-DAmesos_ENABLE_CSparse="$(usex sparse)" -DAmesos_ENABLE_CSparse="$(usex sparse)"
@ -189,9 +184,8 @@ src_configure() {
# more solvers # more solvers
#-DKokkos_ENABLE_THREADS="$(usex threads)" #-DKokkos_ENABLE_THREADS="$(usex threads)"
#-DTpetra_INST_PTHREAD="$(usex threads)" #-DTpetra_INST_PTHREAD="$(usex threads)"
-DTrilinos_ENABLE_ShyLU_NodeTacho=OFF
# #
-DAmesos_ENABLE_ParMETIS=ON -DAmesos_ENABLE_ParMETIS="$(usex metis)"
# Basker solver # Basker solver
-DAmesos2_ENABLE_Basker=ON -DAmesos2_ENABLE_Basker=ON
-DCMAKE_CXX_FLAGS:STRING="-DSHYLU_NODEBASKER" -DCMAKE_CXX_FLAGS:STRING="-DSHYLU_NODEBASKER"