diff options
author | Justin Lecher <jlec@gentoo.org> | 2015-11-30 11:58:04 +0100 |
---|---|---|
committer | Justin Lecher <jlec@gentoo.org> | 2015-11-30 11:58:04 +0100 |
commit | 6e651a74419dbb000081b0094934a57441aa27b2 (patch) | |
tree | 8679debdcf61ad5293f72d067a9734611dabcdb7 /dev-cpp | |
parent | sci-libs/Cgraph: Chop DESCRIPTION to 80 chars (diff) | |
download | sci-6e651a74419dbb000081b0094934a57441aa27b2.tar.gz sci-6e651a74419dbb000081b0094934a57441aa27b2.tar.bz2 sci-6e651a74419dbb000081b0094934a57441aa27b2.zip |
dev-cpp/eigen: Version Bump
Package-Manager: portage-2.2.25
Signed-off-by: Justin Lecher <jlec@gentoo.org>
Diffstat (limited to 'dev-cpp')
-rw-r--r-- | dev-cpp/eigen/Manifest | 2 | ||||
-rw-r--r-- | dev-cpp/eigen/eigen-3.2.6.ebuild | 116 | ||||
-rw-r--r-- | dev-cpp/eigen/metadata.xml | 2 |
3 files changed, 119 insertions, 1 deletions
diff --git a/dev-cpp/eigen/Manifest b/dev-cpp/eigen/Manifest index c3cd8343e..4d7c3f010 100644 --- a/dev-cpp/eigen/Manifest +++ b/dev-cpp/eigen/Manifest @@ -2,3 +2,5 @@ DIST eigen-3.2.2-cmake.patch 3294 SHA256 2be458affc18b833f31b767b823b1e490e6d011 DIST eigen-3.2.2.tar.bz2 1142184 SHA256 929326dcf23a5b9125f898858f2b2b8e4685173c9a5963f86e593791abb621b1 SHA512 95e40a1abc88ec7790755f0156d9ab414fd61c2b476f38e71b91fe5135328109fa348473748a5440a163f0b5da101b380f34784533ad9326f1ccea3de0c11a99 WHIRLPOOL 013bf7b8489be191fd471216048eed0aa1ac3e108ff84f3ddeb91b91e0ecb9d53bb2dedf31ec8cfb92c3daf654b6980776f1d3c3b29eb8ae39321bc2e1b3f2bd DIST eigen-3.2.4-cmake.patch 3294 SHA256 2be458affc18b833f31b767b823b1e490e6d0115d040a802eb334c5884c8ad88 SHA512 229c0c1f3d95ae505b5accd1aeba19f59a064218cf9b0d844dbc4c660a4cddb666f818268ba1899370877034a70a87317ca8bf14822e3b85d0bbe7f3bb5c7cf6 WHIRLPOOL ae78de8cc7f3b58749dcfefc6ac4fd96cca84e048b0337b1590d5097b4838c751c237844b4aa996ce75d10e830d406fa52ef68f509d0ae8e21a75fc589a1a6d3 DIST eigen-3.2.4.tar.bz2 1147976 SHA256 d64332c92e31803d2c59f6646ed893965c666acfc7c284e4f5e9ffbb4d148922 SHA512 decf50a54011a8275d6d00194e98933b1184e665802892fe87515590ab92843d538d5170afc549730193dc93ae350674eb59d7d324e1f7d608867c7208c5509a WHIRLPOOL 8625bc0d4c171f7a80be070f72651ac8b58b7f4112980cb8c406d1e01f14a10efdf957c6c6fd170da8a595bc86c0016863f3815cb75db272ed789d18b97d8098 +DIST eigen-3.2.6-cmake.patch 3294 SHA256 2be458affc18b833f31b767b823b1e490e6d0115d040a802eb334c5884c8ad88 SHA512 229c0c1f3d95ae505b5accd1aeba19f59a064218cf9b0d844dbc4c660a4cddb666f818268ba1899370877034a70a87317ca8bf14822e3b85d0bbe7f3bb5c7cf6 WHIRLPOOL ae78de8cc7f3b58749dcfefc6ac4fd96cca84e048b0337b1590d5097b4838c751c237844b4aa996ce75d10e830d406fa52ef68f509d0ae8e21a75fc589a1a6d3 +DIST eigen-3.2.6.tar.bz2 1152805 SHA256 8a3352f9a5361fe90e451a7305fb1896fc7f771dc16cc0edd8e6b157f52c343e SHA512 a1abcef36d774ab29418961143174e460e11c05f40d493844e4d4e8024e0b60c453cb007e96ed05d786eec3214d72f15ead0ac49ed84762d3037db90f11c935a WHIRLPOOL e15f917ad6b8aeda2e11c6af186073921d78c3b96c922f1068989b64a2ec7c3d58df280ce809be877b6e93a691c0d511afa601cb806bf4d9f29e9133c62e280c diff --git a/dev-cpp/eigen/eigen-3.2.6.ebuild b/dev-cpp/eigen/eigen-3.2.6.ebuild new file mode 100644 index 000000000..7733d64a2 --- /dev/null +++ b/dev-cpp/eigen/eigen-3.2.6.ebuild @@ -0,0 +1,116 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +FORTRAN_NEEDED=fortran + +if [[ ${PV} == "9999" ]] ; then + inherit mercurial + EHG_REPO_URI="https://bitbucket.org/eigen/eigen" + SRC_URI="" + KEYWORDS="" +else + inherit vcs-snapshot + SRC_URI=" + https://bitbucket.org/eigen/eigen/get/${PV}.tar.bz2 -> ${P}.tar.bz2 + https://bitbucket.org/eigen/eigen/commits/1d71b1341c03a7c485289be2c8bd906a259c0487/raw/ -> ${P}-cmake.patch + " + PATCHES=( "${DISTDIR}"/${P}-cmake.patch ) + KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +fi + +inherit alternatives-2 cmake-utils fortran-2 multilib numeric + +DESCRIPTION="C++ template library for linear algebra" +HOMEPAGE="http://eigen.tuxfamily.org/" + +SLOT="3" +LICENSE="MPL-2.0" +IUSE="adolc doc fortran fftw gmp metis mkl pastix sparse static-libs test" + +CDEPEND=" + adolc? ( sci-libs/adolc[sparse?] ) + fftw? ( sci-libs/fftw:3.0 ) + gmp? ( dev-libs/gmp:0 dev-libs/mpfr:0 ) + metis? ( sci-libs/metis ) + mkl? ( sci-libs/mkl ) + pastix? ( sci-libs/pastix ) + sparse? ( + dev-cpp/sparsehash + sci-libs/cholmod[metis?] + sci-libs/spqr + sci-libs/superlu + sci-libs/umfpack )" +DEPEND=" + doc? ( app-doc/doxygen[dot,latex] ) + test? ( ${CDEPEND} )" + +RDEPEND=" + !dev-cpp/eigen:0 + ${CDEPEND}" + +src_prepare() { + sed -i \ + -e "s:/usr:${EPREFIX}/usr:g" \ + -e "s:/bin/bash:${EPREFIX}/bin/bash:g" \ + cmake/*.cmake || die + sed -i \ + -e "/DESTINATION/s:lib:$(get_libdir):g" \ + {blas,lapack}/CMakeLists.txt || die + + # TOFIX: static-libs for blas are always built with PIC + use static-libs || sed -i \ + -e "/add_dependencies/s/eigen_[a-z]*_static//g" \ + -e "/TARGETS/s/eigen_[a-z]*_static//g" \ + -e "/add_library(eigen_[a-z]*_static/d" \ + -e "/target_link_libraries(eigen_[a-z]*_static/d" \ + {blas,lapack}/CMakeLists.txt || die + + sed -i -e "/Unknown build type/d" CMakeLists.txt || die + + cmake-utils_src_prepare +} + +src_configure() { + # TOFIX: is it worth fixing all the automagic given no library is built? + # cmake has buggy disable_testing feature, so leave it for now + local mycmakeargs=( + -DDART_TESTING_TIMEOUT=300 + -DEIGEN_BUILD_BTL=OFF + ) + export VARTEXFONTS="${T}/fonts" + cmake-utils_src_configure + # use fortran && FORTRAN_LIBS="blas lapack" not ready + use fortran && FORTRAN_LIBS="blas" +} + +src_compile() { + local targets="${FORTRAN_LIBS}" + use doc && targets+=" doc" + use test && targets+=" check" + cmake-utils_src_compile ${targets} +} + +src_install() { + cmake-utils_src_install + use doc && dohtml -r "${BUILD_DIR}"/doc/html/* + local x + for x in ${FORTRAN_LIBS}; do + local libname="eigen_${x}" + emake DESTDIR="${D}" -C "${BUILD_DIR}/${x}" install ${libname} + create_pkgconfig \ + --description "${DESCRIPTION} ${x^^} implementation" \ + --libs "-L\${libdir} -l${libname}" \ + --libs-private "-lm" \ + $([[ ${x} == lapack ]] && echo "--requires 'blas'") \ + ${libname} + alternatives_for ${x} eigen 0 \ + /usr/$(get_libdir)/pkgconfig/${x}.pc ${libname}.pc + done + + # Debian installs it and some projects started using it. + insinto /usr/share/cmake/Modules/ + doins "${S}/cmake/FindEigen3.cmake" +} diff --git a/dev-cpp/eigen/metadata.xml b/dev-cpp/eigen/metadata.xml index 187b1deba..0adc36217 100644 --- a/dev-cpp/eigen/metadata.xml +++ b/dev-cpp/eigen/metadata.xml @@ -1,4 +1,4 @@ -<?xml version='1.0' encoding='UTF-8'?> +<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> <herd>sci</herd> |