diff options
-rw-r--r-- | dev-cpp/eigen/Manifest | 1 | ||||
-rw-r--r-- | dev-cpp/eigen/eigen-3.3.5.ebuild | 99 |
2 files changed, 100 insertions, 0 deletions
diff --git a/dev-cpp/eigen/Manifest b/dev-cpp/eigen/Manifest index 42266b4c55d7..1f4447d03b07 100644 --- a/dev-cpp/eigen/Manifest +++ b/dev-cpp/eigen/Manifest @@ -1,3 +1,4 @@ DIST eigen-3.2.8.tar.bz2 1161201 BLAKE2B 35bace5138f601e73d56412e87bf591ef2f96778050b0a2a4fc8f1e75f02498fb4eb80bf79988dd4bd6b985945a122d44581ccedd925f398f7d282790da06385 SHA512 53c27ba530c985dfef52188e03273eeef33abbc67e3f150cacd3371c8b9ddbd399228730595821c4c56c061d109cf509266c1dab2b8a7c730902cbd6fb18c100 DIST eigen-3.3.3.tar.bz2 1642001 BLAKE2B 51d870a6bf04865c39642205ac8e12fd638e1d383fb33b064835ce4b5a4d4b056507c1a4fc65d9e665bf659ffd742179415caccac27c203c9388ca267e29e802 SHA512 bb5a8b761371e516f0a344a7c9f6e369e21c2907c8548227933ca6010fc607a66c8d6ff7c41b1aec3dea7d482ce8c2a09e38ae5c7a2c5b16bdd8007e7a81ecc3 DIST eigen-3.3.4.tar.bz2 1657543 BLAKE2B 62ae6e42972fcfe71bfcda359d35674207440813edc856f209f37321c7f8d39498c6c6fb33d80cc14129113c1dff849212f034ab925b6656e99ed192f4af2fbb SHA512 d67a3fd8f7ce811af65fc1d43ec347dadf9c643a49135f7e455fc303773bad09e80a125282c7dfca7a1993b79e1f66576ac92418119fbb0fa50c1a581b957c0d +DIST eigen-3.3.5.tar.bz2 1663467 BLAKE2B 7f4b6339f8cea815004057361734e53129b5bde45c9c310eab87f0aa20da90e46dd67359e669f8b36477339df7bd7c8bd8eb18baaf0f1a779372ec3623c50aca SHA512 740ed41862c1e422a751b205513754e9c7bd04cc8ad4e3b08e2ccd1c1d30dea43a90896bc8eecd0cb4253b4adf803a814ddd48d6166fb5a53f507cf3e6940a38 diff --git a/dev-cpp/eigen/eigen-3.3.5.ebuild b/dev-cpp/eigen/eigen-3.3.5.ebuild new file mode 100644 index 000000000000..1e0339541f96 --- /dev/null +++ b/dev-cpp/eigen/eigen-3.3.5.ebuild @@ -0,0 +1,99 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +FORTRAN_NEEDED="test" +inherit cmake-utils cuda fortran-2 + +DESCRIPTION="C++ template library for linear algebra" +HOMEPAGE="http://eigen.tuxfamily.org/" +SRC_URI="https://bitbucket.org/eigen/eigen/get/${PV}.tar.bz2 -> ${P}.tar.bz2" + +LICENSE="MPL-2.0" +SLOT="3" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="altivec c++11 cuda debug doc neon openmp test" #zvector vsx +RESTRICT="!test? ( test )" + +RDEPEND="!dev-cpp/eigen:0" +DEPEND=" + doc? ( app-doc/doxygen[dot,latex] ) + test? ( + dev-libs/gmp:0 + dev-libs/mpfr:0 + media-libs/freeglut + media-libs/glew + sci-libs/adolc[sparse] + sci-libs/cholmod + sci-libs/fftw:3.0 + sci-libs/pastix + sci-libs/umfpack + sci-libs/scotch + sci-libs/spqr + sci-libs/superlu + virtual/opengl + virtual/pkgconfig + cuda? ( dev-util/nvidia-cuda-toolkit ) + ) +" +# Missing: +# METIS-5 +# GOOGLEHASH + +src_unpack() { + default + mv ${PN}* ${P} || die +} + +src_prepare() { + cmake-utils_src_prepare + + sed -e 's:-g2::g' \ + -i cmake/EigenConfigureTesting.cmake || die + + sed -e "/add_subdirectory(demos/d" \ + -i CMakeLists.txt || die + + if ! use test; then + sed -e "/add_subdirectory(test/d" \ + -i CMakeLists.txt || die + + sed -e "/add_subdirectory(blas/d" \ + -e "/add_subdirectory(lapack/d" \ + -i CMakeLists.txt || die + fi + sed -e "/Unknown build type/d" \ + -i CMakeLists.txt || die + + use cuda && cuda_src_prepare +} + +src_compile() { + cmake-utils_src_compile + use doc && cmake-utils_src_compile doc +} + +src_test() { + local mycmakeargs=( + -DEIGEN_TEST_NOQT=ON + -DEIGEN_TEST_ALTIVEC="$(usex altivec)" + -DEIGEN_TEST_CXX11="$(usex c++11)" + -DEIGEN_TEST_CUDA="$(usex cuda)" + -DEIGEN_TEST_OPENMP="$(usex openmp)" + -DEIGEN_TEST_NEON64="$(usex neon)" + ) + cmake-utils_src_configure + cmake-utils_src_compile blas + cmake-utils_src_compile buildtests + cmake-utils_src_test +} + +src_install() { + use doc && local HTML_DOCS=( "${BUILD_DIR}"/doc/html/. ) + cmake-utils_src_install + + # Debian installs it and some projects started using it. + insinto /usr/share/cmake/Modules/ + doins "${S}/cmake/FindEigen3.cmake" +} |