diff options
Diffstat (limited to 'dev-cpp/eigen')
-rw-r--r-- | dev-cpp/eigen/Manifest | 4 | ||||
-rw-r--r-- | dev-cpp/eigen/eigen-3.3.7-r1.ebuild | 100 | ||||
-rw-r--r-- | dev-cpp/eigen/eigen-3.3.7.ebuild | 2 | ||||
-rw-r--r-- | dev-cpp/eigen/files/eigen-3.3.7-gentoo-cmake.patch | 24 |
4 files changed, 128 insertions, 2 deletions
diff --git a/dev-cpp/eigen/Manifest b/dev-cpp/eigen/Manifest index 92c27cad4550..a7887c3a0007 100644 --- a/dev-cpp/eigen/Manifest +++ b/dev-cpp/eigen/Manifest @@ -1,3 +1,5 @@ +AUX eigen-3.3.7-gentoo-cmake.patch 910 BLAKE2B 9cad2b9c54fb1299dfe45f9a94a427d1c7980fa0e5372db69465ccf964e7294213ae459e200a39f2721849df94a8433febcfb225813af3b43bc204b0edd3d64c SHA512 b8c4701f22c483078fb7d25df60c8f002f47573ec434a309b1a3739aecc1c51f79852b06f46c1ed9ae4cbec0e7d70aaabd06bc59e561c19d81b05388d3cedc61 DIST eigen-3.3.7.tar.bz2 1665168 BLAKE2B 544d35d1c7a4125affa094c6aa372c2aeca4e99bc60c496ff393d538c1c467b454491a772121450e3a1a43a582d073b4b7584918354d0b9175121fde88947c4b SHA512 c12bfd034d0a1112bf2df3f773ad98f36b2b53fbbfceac5f143ee1793322746fb8a6546d7db7da2a1000da6a535bd8cea0c4125b549afc90a6570743b02dcf3d -EBUILD eigen-3.3.7.ebuild 2445 BLAKE2B 2839ad4f33933b837191a8ee19481ea8600ebdc9adb38b1e01f291a13faa09d97b582c8e99d2ff4a48a9e3c5de4e592c3376f016cc8c448afa84708236774e44 SHA512 84bc4a4bf75c1333974f4e3ad59b42c6af8be42d594ad8934a3465978d80277495a909a63735b65a12dd938967863c036fc0d4cf158fe94cea19edacb60e7f26 +EBUILD eigen-3.3.7-r1.ebuild 2277 BLAKE2B 0dfe545dc1e223b91b48a57466af09105441a81f996abdbb9ea046ce4408423fae8ca58195f50d2816325084271fa7f23511a0982ea13aa6ae00d8dc7830076b SHA512 850afeb64f71531e5fb5595b4665d750f4b4933aadd1f08e08e6eeac3efa3f52373585f446d12a69f1dba203bb3732febfa89eeac03e440c6716fbd3c1f0c849 +EBUILD eigen-3.3.7.ebuild 2432 BLAKE2B 2312d5d606907923882c74f4842128d95f9fa25eff68ab7217a58131c2fab11f42d8e1658129f29a7dbc68d3ab42510f6289ff1fe9ec7987596f691aebb67fd6 SHA512 e411a3a4c08776dc667d2145e52b23225d88b6bc9e6b36e664392fc26bd34195fcfcf2b54d0b20dec4ad8597f6e262d4dd7671513ab3581b10d0a16ed2713701 MISC metadata.xml 945 BLAKE2B 1e9f416b0c69bc66b08934efc902a21f557bcf5b910439dee978b46a11b0b6767681d6bb298402b050b3e994b56ad9163b91c2d526f8fd04eeb5b9ac3c74f451 SHA512 c5401b0251bf5668117951522b019e6fcce6b5ed41ec933a6edec7869ed5505040d8f75fea7c4c17eeb691f331412bc3d2a7103b7f706cd582496feb6e7a3e57 diff --git a/dev-cpp/eigen/eigen-3.3.7-r1.ebuild b/dev-cpp/eigen/eigen-3.3.7-r1.ebuild new file mode 100644 index 000000000000..ed987bda82b2 --- /dev/null +++ b/dev-cpp/eigen/eigen-3.3.7-r1.ebuild @@ -0,0 +1,100 @@ +# Copyright 1999-2020 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="http://eigen.tuxfamily.org/index.php?title=Main_Page" +SRC_URI="https://bitbucket.org/eigen/eigen/get/${PV}.tar.bz2 -> ${P}.tar.bz2" + +LICENSE="MPL-2.0" +SLOT="3" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" +IUSE="cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_ppc_vsx cuda debug doc openmp test" #zvector + +RESTRICT="!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 + +S="${WORKDIR}/${PN}-${PN}-323c052e1731" + +PATCHES=( "${FILESDIR}"/${P}-gentoo-cmake.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="${EPREFIX}"/usr/$(get_libdir)/cmake/${PN}${SLOT} + ) + use test && mycmakeargs+=( + -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 + use doc && cmake_src_compile doc + if use test; then + cmake_src_compile blas + cmake_src_compile buildtests + fi +} + +src_install() { + use doc && local HTML_DOCS=( "${BUILD_DIR}"/doc/html/. ) + cmake_src_install +} diff --git a/dev-cpp/eigen/eigen-3.3.7.ebuild b/dev-cpp/eigen/eigen-3.3.7.ebuild index 8d2a3fc5fac9..1f3bb7907f70 100644 --- a/dev-cpp/eigen/eigen-3.3.7.ebuild +++ b/dev-cpp/eigen/eigen-3.3.7.ebuild @@ -12,7 +12,7 @@ SRC_URI="https://bitbucket.org/eigen/eigen/get/${PV}.tar.bz2 -> ${P}.tar.bz2" LICENSE="MPL-2.0" SLOT="3" -KEYWORDS="amd64 ~arm arm64 ~ia64 ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux" +KEYWORDS="amd64 ~arm arm64 ppc ~ppc64 x86 ~amd64-linux ~x86-linux" IUSE="c++11 cpu_flags_arm_neon cpu_flags_ppc_altivec cpu_flags_ppc_vsx cuda debug doc openmp test" #zvector RESTRICT="!test? ( test )" diff --git a/dev-cpp/eigen/files/eigen-3.3.7-gentoo-cmake.patch b/dev-cpp/eigen/files/eigen-3.3.7-gentoo-cmake.patch new file mode 100644 index 000000000000..0389cd3b9333 --- /dev/null +++ b/dev-cpp/eigen/files/eigen-3.3.7-gentoo-cmake.patch @@ -0,0 +1,24 @@ +Let us properly override with CMAKE_BUILD_TYPE=Gentoo + +--- a/CMakeLists.txt 2018-12-11 18:57:55.000000000 +0100 ++++ b/CMakeLists.txt 2020-07-21 16:43:33.467680534 +0200 +@@ -14,18 +14,7 @@ + set(Eigen_BINARY_DIR ${Eigen3_BINARY_DIR}) + + # guard against bad build-type strings +- +-if (NOT CMAKE_BUILD_TYPE) +- set(CMAKE_BUILD_TYPE "Release") +-endif() +- +-string(TOLOWER "${CMAKE_BUILD_TYPE}" cmake_build_type_tolower) +-if( NOT cmake_build_type_tolower STREQUAL "debug" +- AND NOT cmake_build_type_tolower STREQUAL "release" +- AND NOT cmake_build_type_tolower STREQUAL "relwithdebinfo") +- message(FATAL_ERROR "Unknown build type \"${CMAKE_BUILD_TYPE}\". Allowed values are Debug, Release, RelWithDebInfo (case-insensitive).") +-endif() +- ++# yeah no. + + ############################################################################# + # retrieve version infomation # |