summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Maier <tamiko@gentoo.org>2023-12-06 11:22:27 -0600
committerMatthias Maier <tamiko@gentoo.org>2023-12-06 22:28:32 -0600
commit00d64bc0fe4cc51c7c3bf3541dd47f485d4ac0f3 (patch)
tree45cbbd6e545683115a347feb29917aaed4b53180 /sci-libs
parentdev-python/selenium: Bump to 4.16.0 (diff)
downloadgentoo-00d64bc0fe4cc51c7c3bf3541dd47f485d4ac0f3.tar.gz
gentoo-00d64bc0fe4cc51c7c3bf3541dd47f485d4ac0f3.tar.bz2
gentoo-00d64bc0fe4cc51c7c3bf3541dd47f485d4ac0f3.zip
sci-libs/trilinos: drop 13.4.0-r3, 13.4.1, 14.0.0, 14.2.0
Signed-off-by: Matthias Maier <tamiko@gentoo.org>
Diffstat (limited to 'sci-libs')
-rw-r--r--sci-libs/trilinos/Manifest5
-rw-r--r--sci-libs/trilinos/files/trilinos-14.0.0-missing_includes_gcc_13.patch24
-rw-r--r--sci-libs/trilinos/trilinos-13.4.0-r3.ebuild252
-rw-r--r--sci-libs/trilinos/trilinos-13.4.1.ebuild252
-rw-r--r--sci-libs/trilinos/trilinos-14.0.0.ebuild258
-rw-r--r--sci-libs/trilinos/trilinos-14.2.0.ebuild257
6 files changed, 0 insertions, 1048 deletions
diff --git a/sci-libs/trilinos/Manifest b/sci-libs/trilinos/Manifest
index 2db7f00749f6..d7a8fd54cb62 100644
--- a/sci-libs/trilinos/Manifest
+++ b/sci-libs/trilinos/Manifest
@@ -1,6 +1 @@
-DIST trilinos-13.4.0-patches-r0.tar.xz 8740 BLAKE2B 333ab9ff1acb2f4b08007c7b99b96f023f6c742e4f991fc0ab9dd6595be7e3e319a77d5e329790cedca72d7a9060df837549d28e8a6cb4b8a838570d455ae356 SHA512 f30c16801cadec2a612ab2f7d3ca05c5ddfdfc513343a182562253cdfb58d38fa8b771ab07f7bc6bcb2505d146469da2ddda478f74447de746d5eca850da123e
-DIST trilinos-13.4.0.tar.gz 168733479 BLAKE2B 3c4a1c89b792ec771c6347eebb6bb54a82fa5f172d1c5934bbd42c8bc9708a71451bd030ec0f5264191a62169b3c1305ac7a1290b3ab4845fb6e8ffef15ee03c SHA512 27a5636bac8106a0705948ca4705b739878f0d8afa74264d1cd31036811084457e27e03e86dfad59a80d5e9ee798237fa930b50574ec3e43979e53c6ab5da535
-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
diff --git a/sci-libs/trilinos/files/trilinos-14.0.0-missing_includes_gcc_13.patch b/sci-libs/trilinos/files/trilinos-14.0.0-missing_includes_gcc_13.patch
deleted file mode 100644
index ee9836d84249..000000000000
--- a/sci-libs/trilinos/files/trilinos-14.0.0-missing_includes_gcc_13.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff --git a/packages/teuchos/core/src/Teuchos_BigUIntDecl.hpp b/packages/teuchos/core/src/Teuchos_BigUIntDecl.hpp
-index e82e8be9..b41b0d03 100644
---- a/packages/teuchos/core/src/Teuchos_BigUIntDecl.hpp
-+++ b/packages/teuchos/core/src/Teuchos_BigUIntDecl.hpp
-@@ -43,6 +43,7 @@
- #define TEUCHOS_BIG_UINT_DECL_HPP
-
- #include <iosfwd>
-+#include <cstdint>
-
- /*! \file Teuchos_BigUIntDecl.hpp
- \brief Arbitrary-precision unsigned integer declaration.
-diff --git a/packages/teuchos/core/src/Teuchos_PrintDouble.hpp b/packages/teuchos/core/src/Teuchos_PrintDouble.hpp
-index cf2fe0f3..7c95b1b5 100644
---- a/packages/teuchos/core/src/Teuchos_PrintDouble.hpp
-+++ b/packages/teuchos/core/src/Teuchos_PrintDouble.hpp
-@@ -43,6 +43,7 @@
- #define TEUCHOS_PRINT_DOUBLE_HPP
-
- #include <iosfwd>
-+#include <cstdint>
-
- /*! \file Teuchos_PrintDouble.hpp
- \brief Declares Teuchos::print_double
diff --git a/sci-libs/trilinos/trilinos-13.4.0-r3.ebuild b/sci-libs/trilinos/trilinos-13.4.0-r3.ebuild
deleted file mode 100644
index 9996b79bd35d..000000000000
--- a/sci-libs/trilinos/trilinos-13.4.0-r3.ebuild
+++ /dev/null
@@ -1,252 +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/${P}-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
-"
-
-# 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:= )
- 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
-)
-
-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)"
- -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)"
- )
-
- #
- # 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:
- mv "${ED}"/bin "${ED}/usr/$(get_libdir)"/trilinos || die "mv failed"
- mv "${ED}/usr/$(get_libdir)"/trilinos/cmake/* "${ED}/usr/$(get_libdir)"/cmake || die "mv 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
-}
diff --git a/sci-libs/trilinos/trilinos-13.4.1.ebuild b/sci-libs/trilinos/trilinos-13.4.1.ebuild
deleted file mode 100644
index 34f7303abddb..000000000000
--- a/sci-libs/trilinos/trilinos-13.4.1.ebuild
+++ /dev/null
@@ -1,252 +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
-"
-
-# 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:= )
- 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
-)
-
-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)"
- -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)"
- )
-
- #
- # 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:
- mv "${ED}"/bin "${ED}/usr/$(get_libdir)"/trilinos || die "mv failed"
- mv "${ED}/usr/$(get_libdir)"/trilinos/cmake/* "${ED}/usr/$(get_libdir)"/cmake || die "mv 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
-}
diff --git a/sci-libs/trilinos/trilinos-14.0.0.ebuild b/sci-libs/trilinos/trilinos-14.0.0.ebuild
deleted file mode 100644
index 9c6599250eda..000000000000
--- a/sci-libs/trilinos/trilinos-14.0.0.ebuild
+++ /dev/null
@@ -1,258 +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:= )
- 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}"/${P}-missing_includes_gcc_13.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)"
- )
-
- #
- # 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
-}
diff --git a/sci-libs/trilinos/trilinos-14.2.0.ebuild b/sci-libs/trilinos/trilinos-14.2.0.ebuild
deleted file mode 100644
index 4ba10c76e0d2..000000000000
--- a/sci-libs/trilinos/trilinos-14.2.0.ebuild
+++ /dev/null
@@ -1,257 +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:= )
- 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=(
-)
-
-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)"
- )
-
- #
- # 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
-}