diff options
| author | Sam James <sam@gentoo.org> | 2021-10-05 03:59:34 +0100 |
|---|---|---|
| committer | Sam James <sam@gentoo.org> | 2021-10-05 04:00:43 +0100 |
| commit | 838d22ed38c7f076e94c74a6e8ebb5b3c445035c (patch) | |
| tree | c7831b06c1c035507561c96f5e6f21c29691c862 /dev-cpp/eigen/eigen-3.4.0.ebuild | |
| parent | 7cfa714018785d09ec5445b5427bc613b6fe6ce4 (diff) | |
| download | gentoo-838d22ed38c7f076e94c74a6e8ebb5b3c445035c.tar.gz gentoo-838d22ed38c7f076e94c74a6e8ebb5b3c445035c.tar.bz2 gentoo-838d22ed38c7f076e94c74a6e8ebb5b3c445035c.zip | |
dev-cpp/eigen: add 3.4.0
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-cpp/eigen/eigen-3.4.0.ebuild')
| -rw-r--r-- | dev-cpp/eigen/eigen-3.4.0.ebuild | 108 |
1 files changed, 108 insertions, 0 deletions
diff --git a/dev-cpp/eigen/eigen-3.4.0.ebuild b/dev-cpp/eigen/eigen-3.4.0.ebuild new file mode 100644 index 000000000000..3cb8a5802144 --- /dev/null +++ b/dev-cpp/eigen/eigen-3.4.0.ebuild @@ -0,0 +1,108 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +FORTRAN_NEEDED="test" +inherit cmake cuda fortran-2 + +DESCRIPTION="C++ template library for linear algebra" +HOMEPAGE="https://eigen.tuxfamily.org/index.php?title=Main_Page" +SRC_URI="https://gitlab.com/lib${PN}/${PN}/-/archive/${PV}/${P}.tar.gz" + +LICENSE="MPL-2.0" +SLOT="3" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_ppc_vsx cuda debug doc openmp test" #zvector + +# Tests failing again because of compiler issues +RESTRICT="!test? ( test ) test" + +BDEPEND=" + doc? ( + app-doc/doxygen[dot] + dev-texlive/texlive-bibtexextra + dev-texlive/texlive-fontsextra + dev-texlive/texlive-fontutils + dev-texlive/texlive-latex + dev-texlive/texlive-latexextra + ) + test? ( virtual/pkgconfig ) +" +DEPEND=" + cuda? ( dev-util/nvidia-cuda-toolkit ) + 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/scotch + sci-libs/spqr + sci-libs/superlu + sci-libs/umfpack + virtual/opengl + ) +" +# Missing: +# METIS-5 +# GOOGLEHASH + +PATCHES=( + #"${FILESDIR}"/${PN}-3.3.7-gentoo-cmake.patch + "${FILESDIR}"/${PN}-3.3.9-max-macro.patch +) + +src_prepare() { + cmake_src_prepare + + cmake_comment_add_subdirectory demos + + if ! use test; then + sed -e "/add_subdirectory(test/s/^/#DONOTCOMPILE /g" \ + -e "/add_subdirectory(blas/s/^/#DONOTCOMPILE /g" \ + -e "/add_subdirectory(lapack/s/^/#DONOTCOMPILE /g" \ + -i CMakeLists.txt || die + fi + + use cuda && cuda_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DCMAKEPACKAGE_INSTALL_DIR=$(get_libdir)/cmake/${PN}${SLOT} + ) + use test && mycmakeargs+=( + # the OpenGL testsuite is extremely brittle, bug #712808 + -DEIGEN_TEST_NO_OPENGL=ON + # the cholmod tests are broken and always fail + -DCMAKE_DISABLE_FIND_PACKAGE_Cholmod=ON + -DEIGEN_TEST_CXX11=ON + -DEIGEN_TEST_NOQT=ON + -DEIGEN_TEST_ALTIVEC=$(usex cpu_flags_ppc_altivec) + -DEIGEN_TEST_CUDA=$(usex cuda) + -DEIGEN_TEST_OPENMP=$(usex openmp) + -DEIGEN_TEST_NEON64=$(usex cpu_flags_arm_neon) + -DEIGEN_TEST_VSX=$(usex cpu_flags_ppc_vsx) + ) + cmake_src_configure +} + +src_compile() { + cmake_src_compile + if use doc; then + cmake_src_compile doc + HTML_DOCS=( "${BUILD_DIR}"/doc/html/. ) + fi + if use test; then + cmake_src_compile blas + cmake_src_compile buildtests + + # tests generate random data, which + # obviously fails for some seeds + export EIGEN_SEED=712808 + fi +} |
