diff options
author | Christoph Junghans <ottxor@gentoo.org> | 2014-10-23 21:33:58 -0600 |
---|---|---|
committer | Christoph Junghans <ottxor@gentoo.org> | 2014-10-23 21:33:58 -0600 |
commit | 31646d46acfdfe24e2cf8425168fec93cabd31d7 (patch) | |
tree | 182b854e049c172cf4c81337bc7de2c83516162c | |
parent | fixed bash-comp (bug #526320) (diff) | |
parent | Merge branch 'bump_trilinos' (diff) | |
download | sci-31646d46acfdfe24e2cf8425168fec93cabd31d7.tar.gz sci-31646d46acfdfe24e2cf8425168fec93cabd31d7.tar.bz2 sci-31646d46acfdfe24e2cf8425168fec93cabd31d7.zip |
Merge branch 'master' of ssh://github.com/gentoo-science/sci
-rw-r--r-- | sci-libs/trilinos/ChangeLog | 6 | ||||
-rw-r--r-- | sci-libs/trilinos/Manifest | 1 | ||||
-rw-r--r-- | sci-libs/trilinos/trilinos-11.10.2.ebuild | 202 | ||||
-rw-r--r-- | sci-libs/trilinos/trilinos-11.4.2.ebuild | 2 |
4 files changed, 210 insertions, 1 deletions
diff --git a/sci-libs/trilinos/ChangeLog b/sci-libs/trilinos/ChangeLog index 394f9fbb4..d6c571df8 100644 --- a/sci-libs/trilinos/ChangeLog +++ b/sci-libs/trilinos/ChangeLog @@ -2,6 +2,12 @@ # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 # $Header: $ +*trilinos-11.10.2 (21 Oct 2014) + + 21 Oct 2014; Matthias Maier <tamiko@gentoo.org> +trilinos-11.10.2.ebuild, + trilinos-11.4.2.ebuild: + version bump + 06 Jan 2014; Justin Lecher <jlec@gentoo.org> trilinos-11.0.3.ebuild: Don't use plain pkg-config diff --git a/sci-libs/trilinos/Manifest b/sci-libs/trilinos/Manifest index 357d5de0d..be2c62aeb 100644 --- a/sci-libs/trilinos/Manifest +++ b/sci-libs/trilinos/Manifest @@ -1,3 +1,4 @@ DIST trilinos-11.0.3-Source.tar.gz 107076534 SHA256 4e9d68d23eac1076200a3224fab14cd3a63a77574f1456d1bff931b2887b5c63 SHA512 9c449c6f9b2bc6346867bc68c29f83edc81790889d483129a98d149e1ff79d32b13310e8fcb3b4412b2f722b5d7efedd2a65f2e882b38629d4a1d50ecfc9783f WHIRLPOOL 7af72bd92cb4aa72ec8d98065570c9af2cc04187b7b2cce5d701e25d2c25efdc8826a4359b035008b8cf086026b88126bcfa6e807cac4f18d5fb745a48568f10 +DIST trilinos-11.10.2-Source.tar.bz2 110633685 SHA256 d3a39b7ad5c61d1e1413f9e550f0a81832a36e4a3072b8b99cebed6900d2d0ea SHA512 0147ed8d4483765ef03114eaed8098b0b41f81dde09147e584ce4e3f8fd2465ad11a6edd288f9ed857bfc163ed45d1a728989a185c22c819434cbb1ffdadd7cb WHIRLPOOL 7229a984a2c894f8edab01ec675fc5582553ca4ef652bda3006318b91d1d56f581ecc5eaed4a023e20cb25e9969a57e61735e415f6c734d41796b905fa9978ae DIST trilinos-11.2.3-Source.tar.bz2 101522486 SHA256 e8c7a899b9cbb1a8b168b3da5621eb34c9e48c2d48dfbf651366a50a465772c2 SHA512 9a64fd092012a67e0c317fb242a5e6378e543f8aa11d0f9e0bb45569c5f7e146f97e85a462305fe3c92436cc2540b95597c2ffc9bbcfc4b7ee08d9a09dbcdb80 WHIRLPOOL ac27521c7c5ca2e4337ff1aa9f18e68bcde8c5130821dfc8cda5af10c91e2e79e20017c2b76773ca412234b43885df30d781a0cb67ae2c15c47c091f548bdb8e DIST trilinos-11.4.2-Source.tar.bz2 104205684 SHA256 9bbf33936c5c1e83e0c5a5e336fbdac8e59d0bebf766a4369ad32bfdf15f4199 SHA512 06e8d6873409b8aae3660890a1d3f05467f137a9ec28780ec600531907627e3f123a97e2d3681510d18762beea8dca4fa859308797d75c1862c51c06890ae1da WHIRLPOOL 1b774b77d4efbc582012240290aa7d03df0ae12e87530da1b87be3ce591db60b793941c9f6b70df596fb1e29c33208d1a0c4353c278bc394711477e9a9e47d23 diff --git a/sci-libs/trilinos/trilinos-11.10.2.ebuild b/sci-libs/trilinos/trilinos-11.10.2.ebuild new file mode 100644 index 000000000..39f3a44ac --- /dev/null +++ b/sci-libs/trilinos/trilinos-11.10.2.ebuild @@ -0,0 +1,202 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 + +inherit cmake-utils toolchain-funcs multilib toolchain-funcs + +DESCRIPTION="Scientific library collection for large scale problems" +HOMEPAGE="http://trilinos.sandia.gov/" +SRC_URI="${P}-Source.tar.bz2" + +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" + +LICENSE="BSD LGPL-2.1" +SLOT="0" + +IUSE=" + adolc arprec boost clp cppunit cuda eigen glpk gtest + hdf5 hwloc hypre metis mkl mumps netcdf petsc qd qt4 + scalapack scotch sparse superlu taucs tbb test threads + tvmet yaml zlib +" + +# TODO: fix export cmake function for tests +RESTRICT="test fetch" + +RDEPEND=" + virtual/blas + virtual/lapack + virtual/mpi + adolc? ( sci-libs/adolc ) + arprec? ( sci-libs/arprec ) + boost? ( dev-libs/boost ) + clp? ( sci-libs/coinor-clp ) + cuda? ( >=dev-util/nvidia-cuda-toolkit-3.2 ) + eigen? ( dev-cpp/eigen:3 ) + gtest? ( dev-cpp/gtest ) + hdf5? ( sci-libs/hdf5[mpi] ) + hypre? ( sci-libs/hypre ) + hwloc? ( sys-apps/hwloc ) + mkl? ( sci-libs/mkl ) + metis? ( || ( sci-libs/parmetis sci-libs/metis ) ) + mumps? ( sci-libs/mumps ) + netcdf? ( sci-libs/netcdf ) + petsc? ( sci-mathematics/petsc ) + qd? ( sci-libs/qd ) + qt4? ( dev-qt/qtgui:4 ) + scalapack? ( virtual/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 )" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +S="${WORKDIR}/${P}-Source" + +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}" ) +} + +trilinos_enable() { + cmake-utils_use $1 TPL_ENABLE_${2:-${1^^}} +} + +src_prepare() { + epatch "${FILESDIR}"/${PN}-11.4.2-fix-install-paths.patch +} + +src_configure() { + + local mycmakeargs=( + -DBUILD_SHARED_LIBS=ON + -DCMAKE_INSTALL_PREFIX="${EPREFIX}" + -DTrilinos_ENABLE_ALL_PACKAGES=ON + -DTrilinos_INSTALL_INCLUDE_DIR="${EPREFIX}/usr/include/trilinos" + -DTrilinos_INSTALL_LIB_DIR="${EPREFIX}/usr/$(get_libdir)/trilinos" + -DTrilinos_INSTALL_CONFIG_DIR="${EPREFIX}/usr/$(get_libdir)/cmake" + -DTPL_ENABLE_BinUtils=ON + -DTPL_ENABLE_MPI=ON + -DTPL_ENABLE_BLAS=ON + -DTPL_ENABLE_LAPACK=ON + $(cmake-utils_use test Trilinos_ENABLE_TESTS) + $(trilinos_enable adolc) + $(trilinos_enable arprec) + $(trilinos_enable boost Boost) + $(trilinos_enable boost BoostLib) + $(trilinos_enable cppunit Cppunit) + $(trilinos_enable clp Clp) + $(trilinos_enable cuda) + $(trilinos_enable cuda CUSPARSE) + $(trilinos_enable cuda Thrust) + $(trilinos_enable eigen Eigen) + $(trilinos_enable gtest gtest) + $(trilinos_enable glpk) + $(trilinos_enable hdf5) + $(trilinos_enable hwloc) + $(trilinos_enable hypre) + $(trilinos_enable metis) + $(trilinos_enable mkl) + $(trilinos_enable mkl PARDISO_MKL) + $(trilinos_enable mumps) + $(trilinos_enable netcdf Netcdf) + $(trilinos_enable petsc) + $(trilinos_enable qd) + $(trilinos_enable qt4 QT) + $(trilinos_enable scalapack) + $(trilinos_enable scalapack BLACS) + $(trilinos_enable scotch Scotch) + $(trilinos_enable sparse AMD) + $(trilinos_enable sparse CSparse) + $(trilinos_enable sparse UMFPACK) + $(trilinos_enable superlu SuperLU) + $(trilinos_enable taucs) + $(trilinos_enable tbb) + $(trilinos_enable threads Pthread) + $(trilinos_enable tvmet) + $(trilinos_enable yaml yaml-cpp) + $(trilinos_enable zlib Zlib) + ) + + 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 + + # TODO: do we need that line? + export CC=mpicc CXX=mpicxx && tc-export CC CXX + + # cmake-utils eclass patches the base directory CMakeLists.txt + # which does not work for complex Trilinos CMake modules + CMAKE_BUILD_TYPE=RELEASE cmake-utils_src_configure + + # TODO: + # python bindings with python-r1 + # fix hypre bindings + # fix hdf5 + # cuda/thrust is untested + # do we always need mpi? and for all packages: blah[mpi] ? + # install docs, examples + # see what packages are related, do we need REQUIRED_USE + # proper use flags description + # add more use flags/packages ? +} + +src_install() { + cmake-utils_src_install + + # 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" + EOF + doenvd "${T}"/99trilinos +} diff --git a/sci-libs/trilinos/trilinos-11.4.2.ebuild b/sci-libs/trilinos/trilinos-11.4.2.ebuild index dcd7983a1..51734a4e3 100644 --- a/sci-libs/trilinos/trilinos-11.4.2.ebuild +++ b/sci-libs/trilinos/trilinos-11.4.2.ebuild @@ -23,7 +23,7 @@ IUSE=" " # TODO: fix export cmake function for tests -RESTRICT="test" +RESTRICT="test fetch" RDEPEND=" virtual/blas |