Gentoo Archives: gentoo-commits

From: Sam James <sam@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-cpp/eigen/
Date: Tue, 05 Oct 2021 03:01:42
Message-Id: 1633402843.838d22ed38c7f076e94c74a6e8ebb5b3c445035c.sam@gentoo
1 commit: 838d22ed38c7f076e94c74a6e8ebb5b3c445035c
2 Author: Sam James <sam <AT> gentoo <DOT> org>
3 AuthorDate: Tue Oct 5 02:59:34 2021 +0000
4 Commit: Sam James <sam <AT> gentoo <DOT> org>
5 CommitDate: Tue Oct 5 03:00:43 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=838d22ed
7
8 dev-cpp/eigen: add 3.4.0
9
10 Signed-off-by: Sam James <sam <AT> gentoo.org>
11
12 dev-cpp/eigen/Manifest | 1 +
13 dev-cpp/eigen/eigen-3.4.0.ebuild | 108 +++++++++++++++++++++++++++++++++++++++
14 2 files changed, 109 insertions(+)
15
16 diff --git a/dev-cpp/eigen/Manifest b/dev-cpp/eigen/Manifest
17 index 57ca7481603..d6069d9926d 100644
18 --- a/dev-cpp/eigen/Manifest
19 +++ b/dev-cpp/eigen/Manifest
20 @@ -1,2 +1,3 @@
21 DIST eigen-3.3.7-gitlab.tar.bz2 1663474 BLAKE2B 70c2f6305ca205d62755cf5e90961088938b8daf56b7cc27abf52f0731064858ada523009d6bf5f014e24b34ceeafe59f918c385d12ccfe249ddb675e13d37a8 SHA512 ea3f1570de3be9ec230d2fbd0f2ae246bf5fd13da79835bf546eb31524796f26f9f633ee779f77942b370a8d540c5cbbd8dd033ccec53a44b692c7e407d6266f
22 DIST eigen-3.3.9.tar.gz 2142379 BLAKE2B 437dc190fdf7a416d0a5cf81703ef4cc73c195f0f3e7c853e0ab38cf904608ddd4485cc4e15eb0cd5e3c401276f270f3c86f538f205cc91b8c83e131d1bc916d SHA512 16244cc89f2e1879543232b965cbf653b3ccf10e967c8c437a41e27d8320392bdf584d8c24b8a97406ab7d1481d5154da74e0702ec1334ae6a46de83f4573a46
23 +DIST eigen-3.4.0.tar.gz 2705005 BLAKE2B ae5f774a6ed36f52cf9fc3206e50796abacbba69fd0f67cd5759b4e04d847aa656861d5e06e6cd0d798a17f2b06abdb70b16f795a626bdd29edcc872c33821f8 SHA512 ba75ecb760e32acf4ceaf27115468e65d4f77c44f8d519b5a13e7940af2c03a304ad433368cb6d55431f307c5c39e2666ab41d34442db3cf441638e51f5c3b6a
24
25 diff --git a/dev-cpp/eigen/eigen-3.4.0.ebuild b/dev-cpp/eigen/eigen-3.4.0.ebuild
26 new file mode 100644
27 index 00000000000..3cb8a580214
28 --- /dev/null
29 +++ b/dev-cpp/eigen/eigen-3.4.0.ebuild
30 @@ -0,0 +1,108 @@
31 +# Copyright 1999-2021 Gentoo Authors
32 +# Distributed under the terms of the GNU General Public License v2
33 +
34 +EAPI=7
35 +
36 +FORTRAN_NEEDED="test"
37 +inherit cmake cuda fortran-2
38 +
39 +DESCRIPTION="C++ template library for linear algebra"
40 +HOMEPAGE="https://eigen.tuxfamily.org/index.php?title=Main_Page"
41 +SRC_URI="https://gitlab.com/lib${PN}/${PN}/-/archive/${PV}/${P}.tar.gz"
42 +
43 +LICENSE="MPL-2.0"
44 +SLOT="3"
45 +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
46 +IUSE="cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_ppc_vsx cuda debug doc openmp test" #zvector
47 +
48 +# Tests failing again because of compiler issues
49 +RESTRICT="!test? ( test ) test"
50 +
51 +BDEPEND="
52 + doc? (
53 + app-doc/doxygen[dot]
54 + dev-texlive/texlive-bibtexextra
55 + dev-texlive/texlive-fontsextra
56 + dev-texlive/texlive-fontutils
57 + dev-texlive/texlive-latex
58 + dev-texlive/texlive-latexextra
59 + )
60 + test? ( virtual/pkgconfig )
61 +"
62 +DEPEND="
63 + cuda? ( dev-util/nvidia-cuda-toolkit )
64 + test? (
65 + dev-libs/gmp:0
66 + dev-libs/mpfr:0
67 + media-libs/freeglut
68 + media-libs/glew
69 + sci-libs/adolc[sparse]
70 + sci-libs/cholmod
71 + sci-libs/fftw:3.0
72 + sci-libs/pastix
73 + sci-libs/scotch
74 + sci-libs/spqr
75 + sci-libs/superlu
76 + sci-libs/umfpack
77 + virtual/opengl
78 + )
79 +"
80 +# Missing:
81 +# METIS-5
82 +# GOOGLEHASH
83 +
84 +PATCHES=(
85 + #"${FILESDIR}"/${PN}-3.3.7-gentoo-cmake.patch
86 + "${FILESDIR}"/${PN}-3.3.9-max-macro.patch
87 +)
88 +
89 +src_prepare() {
90 + cmake_src_prepare
91 +
92 + cmake_comment_add_subdirectory demos
93 +
94 + if ! use test; then
95 + sed -e "/add_subdirectory(test/s/^/#DONOTCOMPILE /g" \
96 + -e "/add_subdirectory(blas/s/^/#DONOTCOMPILE /g" \
97 + -e "/add_subdirectory(lapack/s/^/#DONOTCOMPILE /g" \
98 + -i CMakeLists.txt || die
99 + fi
100 +
101 + use cuda && cuda_src_prepare
102 +}
103 +
104 +src_configure() {
105 + local mycmakeargs=(
106 + -DCMAKEPACKAGE_INSTALL_DIR=$(get_libdir)/cmake/${PN}${SLOT}
107 + )
108 + use test && mycmakeargs+=(
109 + # the OpenGL testsuite is extremely brittle, bug #712808
110 + -DEIGEN_TEST_NO_OPENGL=ON
111 + # the cholmod tests are broken and always fail
112 + -DCMAKE_DISABLE_FIND_PACKAGE_Cholmod=ON
113 + -DEIGEN_TEST_CXX11=ON
114 + -DEIGEN_TEST_NOQT=ON
115 + -DEIGEN_TEST_ALTIVEC=$(usex cpu_flags_ppc_altivec)
116 + -DEIGEN_TEST_CUDA=$(usex cuda)
117 + -DEIGEN_TEST_OPENMP=$(usex openmp)
118 + -DEIGEN_TEST_NEON64=$(usex cpu_flags_arm_neon)
119 + -DEIGEN_TEST_VSX=$(usex cpu_flags_ppc_vsx)
120 + )
121 + cmake_src_configure
122 +}
123 +
124 +src_compile() {
125 + cmake_src_compile
126 + if use doc; then
127 + cmake_src_compile doc
128 + HTML_DOCS=( "${BUILD_DIR}"/doc/html/. )
129 + fi
130 + if use test; then
131 + cmake_src_compile blas
132 + cmake_src_compile buildtests
133 +
134 + # tests generate random data, which
135 + # obviously fails for some seeds
136 + export EIGEN_SEED=712808
137 + fi
138 +}