diff options
| author | root <root@alpha.trunkmasters.com> | 2026-06-12 11:50:53 -0500 |
|---|---|---|
| committer | root <root@alpha.trunkmasters.com> | 2026-06-12 11:50:53 -0500 |
| commit | 290aebdea65a02557706eaeda477fef0437b6a48 (patch) | |
| tree | f87a939169a508a2e943570501b64cc16b411cda /dev-cpp/eigen | |
| parent | 6783ddcd4b73d9ce586a71770caed352bec93b16 (diff) | |
| download | baldeagleos-repo-290aebdea65a02557706eaeda477fef0437b6a48.tar.gz baldeagleos-repo-290aebdea65a02557706eaeda477fef0437b6a48.tar.xz baldeagleos-repo-290aebdea65a02557706eaeda477fef0437b6a48.zip | |
Adding metadata
Diffstat (limited to 'dev-cpp/eigen')
26 files changed, 0 insertions, 4924 deletions
diff --git a/dev-cpp/eigen/Manifest b/dev-cpp/eigen/Manifest deleted file mode 100644 index e78035ce5e3c..000000000000 --- a/dev-cpp/eigen/Manifest +++ /dev/null @@ -1,6 +0,0 @@ -DIST eigen-3.4.0.tar.bz2 2143091 BLAKE2B a32aac13cbab68cfaaa252d8a406e6a36ecfd1239361412b1f9baa08284a94467479c08ffae10cb847e9916472b46b1c1af4efbf81f957c8200a4379acd42c42 SHA512 cc488eb111e0e248744d2bc4475b345b5fb82361dff226a5b73a33bd0388de8c219cff8cffcf8f476b672fc0e223f339e8c6a1cfb6293840a4a6abf232438a89 -DIST eigen-3.4.1.tar.bz2 2157363 BLAKE2B 382fcebd716d81019c4606974f8db22234ff34c415d465eb5cf9dbab34d4fa9bca7a3ae6ef64a7eca627cdbacb35fdac862005b0a14ec2d851831246f879f374 SHA512 806be7536f811eb77898a9431eac4fe446fbdd41c2a33ebe30e56750920c105e24bc41d8cbb4a5c01ee770ded9c58f06ff37058d17c6e2301bc9021a864bb549 -DIST eigen-3.4.1_p1.patch 1007 BLAKE2B 0a2af4c2cd8fc423535e046919fe7f931e9b718df1ff799ccc451139c084a344988fc8d1277fd1970827051ce1fcae5512222310fea00a9f1a654f3b1cffbec8 SHA512 ec3f6c78c19544f9a4f2c52e069b573eb633d67998acdd7d74e9769102ec9dfdbf68fca1492002ed0ec6b3e9a25637afa9978cfb80dd3e3f9aa0e1a34ac64534 -DIST eigen-3.4.1_p2.patch 1054 BLAKE2B b46683962764a9dd560932e2230177f91e56d9e4b48ce7de79cad5743b59050aafde4f2da1db961adfb5228ac17f477e598cdf23c4150fa254d2640e4fff3a6d SHA512 bdcd4599ccb88f0599aa74fd5a73135dcc5bb9ad0bc2791517473a48f938bb784e62376e829b8b5b3d6f5149bc8874bf77655c1bfe63f86afbc151c2c86d6732 -DIST eigen-5.0.1.tar.bz2 2335713 BLAKE2B a7ccf9fc63b25b0e5ad8940ccf541cf4977a80ded671757ae1965cd0ca480fd11361de8eaf18cae94a74cde68979a76f5a18b47b696cdd6939b6cf30922e5fd4 SHA512 5cb11c7f1945ae7f36c5deb067b8d5a962d2d3cff7d4dbec8a4ee255ee6aae1b7dbe6d5a6dcc6fe77554ef191e4101366bf79cfb34f5cf06a0e4de311afbeaf6 -DIST eigen-lapack_addons-3.4.1.tgz 6215074 BLAKE2B 564c3398de1f4ea249b58957a482cda0b5eb99e5021e1f18abf3b4d2893fed48912bfa8386681fcae03dd933eea91644f7429d47a53684d64462209a6ae76f30 SHA512 5a827d0befb521cb430f0d63f5000e7955359bc637cdb7292d942712e98c0702570a5b650a72fc609bf5b43633661c0e51de7761ae892df6ff0aab667f436edf diff --git a/dev-cpp/eigen/eigen-3.4.0-r3.ebuild b/dev-cpp/eigen/eigen-3.4.0-r3.ebuild deleted file mode 100644 index 21f9174b1ab0..000000000000 --- a/dev-cpp/eigen/eigen-3.4.0-r3.ebuild +++ /dev/null @@ -1,458 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -FORTRAN_NEEDED="test" -inherit cmake cuda fortran-2 llvm toolchain-funcs - -DESCRIPTION="C++ template library for linear algebra" -HOMEPAGE="https://eigen.tuxfamily.org/index.php?title=Main_Page" - -if [[ ${PV} = *9999* ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://gitlab.com/lib${PN}/${PN}.git" - if [[ ${PV} = 3.4.9999* ]] ; then - EGIT_BRANCH="3.4" - fi -else - SRC_URI=" - https://gitlab.com/lib${PN}/${PN}/-/archive/${PV}/${P}.tar.bz2 - test? ( lapack? ( https://downloads.tuxfamily.org/${PN}/lapack_addons_3.4.1.tgz -> ${PN}-lapack_addons-3.4.1.tgz ) ) - " - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~arm64-macos ~x64-macos" -fi - -LICENSE="MPL-2.0" -SLOT="3" - -# The following lines are shamelessly stolen from ffmpeg-9999.ebuild with modifications -ARM_CPU_FEATURES=( - neon:NEON -) -PPC_CPU_FEATURES=( - altivec:ALTIVEC - vsx:VSX -) -X86_CPU_FEATURES=( - avx:AVX - avx2:AVX2 - avx512f:AVX512 - avx512dq:AVX512DQ - f16c:FP16C - fma3:FMA - popcnt:POPCNT - sse:SSE - sse2:SSE2 - sse3:SSE3 - ssse3:SSSE3 - sse4_1:SSE4_1 - sse4_2:SSE4_2 -) -# MIPS_CPU_FEATURES=( -# msa:MSA -# ) -# S390_CPU_FEATURES=( -# z13:Z13 -# z14:Z14 -# ) - -CPU_FEATURES_MAP=( - "${ARM_CPU_FEATURES[@]/#/cpu_flags_arm_}" - "${PPC_CPU_FEATURES[@]/#/cpu_flags_ppc_}" - "${X86_CPU_FEATURES[@]/#/cpu_flags_x86_}" - # "${MIPS_CPU_FEATURES[@]/#/cpu_flags_mips_}" - # "${S390_CPU_FEATURES[@]/#/cpu_flags_s390_}" -) - -IUSE_TEST_BACKENDS=( - "adolc" - "boost" - "cholmod" - "fftw" - "klu" - "opengl" - "openmp" - "pastix" - "sparsehash" - "spqr" - "superlu" - "umfpack" -) - -IUSE="${CPU_FEATURES_MAP[*]%:*} clang cuda hip debug doc lapack mathjax test ${IUSE_TEST_BACKENDS[*]}" #zvector - -REQUIRED_USE=" - test? ( !lapack ) - || ( ${IUSE_TEST_BACKENDS[*]} ) -" - -# Tests failing again because of compiler issues; bugs #932646, #943401 -RESTRICT="test !test? ( test )" - -BDEPEND=" - doc? ( - app-text/doxygen[dot] - dev-texlive/texlive-bibtexextra - dev-texlive/texlive-fontsextra - dev-texlive/texlive-fontutils - dev-texlive/texlive-latex - dev-texlive/texlive-latexextra - mathjax? ( dev-libs/mathjax ) - ) - test? ( virtual/pkgconfig ) -" - -# METIS -# MPREAL -# dev-libs/mpfr:0 -# dev-libs/gmp:0 - -TEST_BACKENDS=" - boost? ( dev-libs/boost ) - adolc? ( sci-libs/adolc[sparse] ) - cholmod? ( sci-libs/cholmod:= ) - fftw? ( sci-libs/fftw ) - spqr? ( sci-libs/spqr ) - klu? ( sci-libs/klu ) - opengl? ( - media-libs/freeglut - media-libs/glew - media-libs/libglvnd - ) - pastix? ( sci-libs/pastix[-mpi] ) - sparsehash? ( - amd64? ( dev-cpp/sparsehash ) - arm64? ( dev-cpp/sparsehash ) - ppc64? ( dev-cpp/sparsehash ) - x86? ( dev-cpp/sparsehash ) - ) - superlu? ( sci-libs/superlu ) - umfpack? ( sci-libs/umfpack ) -" -DEPEND=" - test? ( - cuda? ( - !clang? ( - dev-util/nvidia-cuda-toolkit - ) - clang? ( - llvm-core/clang[llvm_targets_NVPTX] - openmp? ( llvm-runtimes/openmp[llvm_targets_NVPTX,offload] ) - ) - ) - hip? ( dev-util/hip ) - lapack? ( virtual/lapacke ) - ${TEST_BACKENDS} - ) -" - -PATCHES=( - "${FILESDIR}/${PN}-3.3.9-max-macro.patch" - "${FILESDIR}/${PN}-3.4.0-doc-nocompress.patch" # bug 830064 - "${FILESDIR}/${PN}-3.4.0-buildstring.patch" - "${FILESDIR}/${PN}-3.4.0-noansi.patch" - "${FILESDIR}/${PN}-3.4.0-cxxstandard.patch" - "${FILESDIR}/${PN}-3.4.0-ppc-no-vsx.patch" # bug 936107 -) - -# TODO should be in cuda.eclass -cuda_set_CUDAHOSTCXX() { - local compiler - tc-is-gcc && compiler="gcc" - tc-is-clang && compiler="clang" - [[ -z "$compiler" ]] && die "no compiler specified" - - local package="sys-devel/${compiler}" - local version="${package}" - local CUDAHOSTCXX_test - while - CUDAHOSTCXX="${CUDAHOSTCXX_test}" - version=$(best_version "${version}") - if [[ -z "${version}" ]]; then - if [[ -z "${CUDAHOSTCXX}" ]]; then - die "could not find supported version of ${package}" - fi - break - fi - CUDAHOSTCXX_test="$( - dirname "$( - realpath "$( - which "${compiler}-$(echo "${version}" | grep -oP "(?<=${package}-)[0-9]*")" - )" - )" - )" - version="<${version}" - do ! echo "int main(){}" | nvcc "-ccbin ${CUDAHOSTCXX_test}" - -x cu &>/dev/null; done - - export CUDAHOSTCXX -} - -pkg_setup() { - use test && use cuda && use clang && llvm_pkg_setup -} - -src_unpack() { - if [[ ${PV} = *9999* ]] ; then - git-r3_src_unpack - else - unpack "${P}.tar.bz2" - - if use test && use lapack; then - cd "${S}/lapack" || die - unpack "${PN}-lapack_addons-3.4.1.tgz" - fi - fi -} - -src_prepare() { - cmake_src_prepare - - sed \ - -e "/add_subdirectory(bench\/spbench/s/^/#DONOTCOMPILE /g" \ - -e "/add_subdirectory(demos/s/^/#DONOTCOMPILE /g" \ - -i CMakeLists.txt || die - - if ! use test; then - sed \ - -e "/add_subdirectory(test/s/^/#DONOTCOMPILE /g" \ - -e "/add_subdirectory(scripts/s/^/#DONOTCOMPILE /g" \ - -e "/add_subdirectory(failtest/s/^/#DONOTCOMPILE /g" \ - -e "/add_subdirectory(blas/s/^/#DONOTCOMPILE /g" \ - -e "/add_subdirectory(lapack/s/^/#DONOTCOMPILE /g" \ - -i CMakeLists.txt || die - fi -} - -src_configure() { - local mycmakeargs=( - -DBUILD_SHARED_LIBS="yes" - -DBUILD_TESTING="$(usex test)" - - -DEIGEN_BUILD_DOC="$(usex doc)" # Enable creation of Eigen documentation - -DEIGEN_BUILD_PKGCONFIG="yes" # Build pkg-config .pc file for Eigen - ) - if use doc || use test; then - mycmakeargs+=( - # needs Qt4 - -DEIGEN_TEST_NOQT="yes" # Disable Qt support in unit tests - ) - fi - - if use doc; then - mycmakeargs+=( - -DEIGEN_DOC_USE_MATHJAX="$(usex mathjax)" # Use MathJax for rendering math in HTML docs - -DEIGEN_INTERNAL_DOCUMENTATION=no # Build internal documentation - ) - fi - - if use test; then - mycmakeargs+=( - # the OpenGL testsuite is extremely brittle, bug #712808 - -DOpenGL_GL_PREFERENCE="GLVND" - -DEIGEN_TEST_OPENGL="$(usex opengl)" # Enable OpenGL support in unit tests - -DEIGEN_TEST_OPENMP="$(usex openmp)" # Enable/Disable OpenMP in tests/examples - - -DCMAKE_DISABLE_FIND_PACKAGE_MPREAL=ON - - -DEIGEN_TEST_CXX11=yes - - # -DEIGEN_TEST_CUSTOM_CXX_FLAGS= # Additional compiler flags when compiling unit tests. - # -DEIGEN_TEST_CUSTOM_LINKER_FLAGS= # Additional linker flags when linking unit tests. - # -DEIGEN_TEST_BUILD_FLAGS= # Options passed to the build command of unit tests - - # -DEIGEN_BUILD_BTL=yes # Build benchmark suite - - -DEIGEN_TEST_BUILD_DOCUMENTATION="$(usex doc)" # Test building the doxygen documentation - - # -DEIGEN_COVERAGE_TESTING=no # Enable/disable gcov - # -DEIGEN_CTEST_ERROR_EXCEPTION= # Regular expression for build error messages to be filtered out - # -DEIGEN_DEBUG_ASSERTS=no # Enable advanced debugging of assertions - # -DEIGEN_NO_ASSERTION_CHECKING=no # Disable checking of assertions using exceptions - # -DEIGEN_TEST_NO_EXCEPTIONS=no # Disables C++ exceptions - # -DEIGEN_TEST_NO_EXPLICIT_ALIGNMENT=no # Disable explicit alignment (hence vectorization) in tests/examples - # -DEIGEN_TEST_NO_EXPLICIT_VECTORIZATION=no # Disable explicit vectorization in tests/examples - - # -DEIGEN_DASHBOARD_BUILD_TARGET=buildtests # Target to be built in dashboard mode, default is buildtests - - # -DEIGEN_DEFAULT_TO_ROW_MAJOR=no # Use row-major as default matrix storage order - - # -DEIGEN_TEST_MATRIX_DIR=yes # Enable testing of realword sparse matrices contained in the specified path - # -DEIGEN_TEST_MAX_SIZE=320 # Maximal matrix/vector size, default is 320 - # -DEIGEN_SPLIT_LARGE_TESTS=no # Split large tests into smaller executables - ) - - use !adolc && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Adolc="TRUE" ) - use !boost && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Boost="TRUE" ) - use !cholmod && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_CHOLMOD="TRUE" ) - use !fftw && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_FFTW="TRUE" ) - use !sparsehash && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_GoogleHash="TRUE" ) - use !klu && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_KLU="TRUE" ) - use !opengl && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_OpenGL="TRUE" ) - use !openmp && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_OpenMP="TRUE" ) - use !pastix && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_PASTIX="TRUE" ) - use !spqr && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_SPQR="TRUE" ) - use !superlu && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_SuperLU="TRUE" ) - use !umfpack && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_UMFPACK="TRUE" ) - - if use lapack; then - mycmakeargs+=( - -DEIGEN_ENABLE_LAPACK_TESTS=yes - -DEIGEN_TEST_EXTERNAL_BLAS=yes # Use external BLAS library for testsuite - -DCMAKE_DISABLE_FIND_PACKAGE_SuperLU=ON - ) - fi - - if use arm; then - mycmakeargs+=( - -DEIGEN_TEST_NEON="$(usex cpu_flags_arm_neon)" - ) - fi - - if use arm64; then - mycmakeargs+=( - -DEIGEN_TEST_NEON64="$(usex cpu_flags_arm_neon)" - ) - fi - - if use ppc || use ppc64; then - mycmakeargs+=( - -DEIGEN_TEST_ALTIVEC="$(usex cpu_flags_ppc_altivec)" - -DEIGEN_TEST_VSX="$(usex cpu_flags_ppc_vsx)" - ) - fi - - if use amd64 || use x86; then - mycmakeargs+=( - # -DEIGEN_TEST_32BIT=no # Force generating 32bit code. - # -DEIGEN_TEST_X87=no # Force using X87 instructions. Implies no vectorization. - -DEIGEN_TEST_SSE2="$(usex cpu_flags_x86_sse2)" - -DEIGEN_TEST_SSE3="$(usex cpu_flags_x86_sse3)" - -DEIGEN_TEST_SSSE3="$(usex cpu_flags_x86_ssse3)" - -DEIGEN_TEST_FMA="$(usex cpu_flags_x86_fma3)" - -DEIGEN_TEST_SSE4_1="$(usex cpu_flags_x86_sse4_1)" - -DEIGEN_TEST_SSE4_2="$(usex cpu_flags_x86_sse4_2)" - -DEIGEN_TEST_AVX="$(usex cpu_flags_x86_avx)" - -DEIGEN_TEST_F16C="$(usex cpu_flags_x86_f16c)" - -DEIGEN_TEST_AVX2="$(usex cpu_flags_x86_avx2)" - -DEIGEN_TEST_AVX512="$(usex cpu_flags_x86_avx512f)" - -DEIGEN_TEST_AVX512DQ="$(usex cpu_flags_x86_avx512dq)" - ) - fi - - if use mips; then - mycmakeargs+=( - # -DEIGEN_TEST_MSA=no # Enable/Disable MSA in tests/examples - ) - fi - - if use s390; then - mycmakeargs+=( - # -DEIGEN_TEST_Z13=no # Enable/Disable S390X(zEC13) ZVECTOR in tests/examples - # -DEIGEN_TEST_Z14=no # Enable/Disable S390X(zEC14) ZVECTOR in tests/examples - ) - fi - - mycmakeargs+=( - -DEIGEN_TEST_CUDA="$(usex cuda)" # Enable CUDA support in unit tests - -DEIGEN_TEST_CUDA_CLANG="$(usex cuda "$(usex clang)")" # Use clang instead of nvcc to compile the CUDA tests - - -DEIGEN_TEST_HIP="$(usex hip)" # Add HIP support. - - # -DEIGEN_TEST_SYCL=no # Add Sycl support. - # -DEIGEN_SYCL_TRISYCL=no # Use the triSYCL Sycl implementation (ComputeCPP by default). - ) - - if use cuda; then - cuda_add_sandbox -w - if use clang; then - local llvm_prefix - llvm_prefix="$(get_llvm_prefix -b)" - export CC="${llvm_prefix}/bin/clang" - export CXX="${llvm_prefix}/bin/clang++" - export LIBRARY_PATH="${ESYSROOT}/usr/$(get_libdir)" - else - cuda_set_CUDAHOSTCXX - mycmakeargs+=( - -DCUDA_HOST_COMPILER="${CUDAHOSTCXX}" - ) - fi - if [[ "${CUDA_VERBOSE}" == true ]]; then - mycmakeargs+=( - -DCUDA_VERBOSE_BUILD=yes - ) - NVCCFLAGS+=" -v" - fi - - export CUDAFLAGS="${NVCCFLAGS}" - - [[ -z "${CUDAARCHS}" ]] && einfo "trying to determine host CUDAARCHS" - : "${CUDAARCHS:=$(__nvcc_device_query)}" - export CUDAARCHS - - mycmakeargs+=( - -DEIGEN_CUDA_COMPUTE_ARCH="${CUDAARCHS}" - ) - fi - fi - - cmake_src_configure -} - -src_compile() { - local targets=() - if use doc; then - targets+=( doc ) - HTML_DOCS=( "${BUILD_DIR}"/doc/html/. ) - fi - if use test; then - targets+=( buildtests ) - if ! use lapack; then - targets+=( blas ) - fi - # tests generate random data, which - # obviously fails for some seeds - export EIGEN_SEED=712808 - fi - - if use doc || use test; then - cmake_src_compile "${targets[@]}" - fi -} - -src_test() { - CMAKE_SKIP_TESTS=( - product_small_32 # 143 (Subprocess aborted) - product_small_33 # 144 (Subprocess aborted) - - eigensolver_selfadjoint_13 # 452 (Subprocess aborted) - - cholmod_support_21 # 726 (Subprocess aborted) - cholmod_support_22 # 727 (Subprocess aborted) - - NonLinearOptimization # 930 (Subprocess aborted) - openglsupport # 990 (Failed) - levenberg_marquardt # 1020 (Subprocess aborted) - ) - - if use cuda ; then - cuda_add_sandbox -w - - CMAKE_SKIP_TESTS+=( - cxx11_tensor_cast_float16_gpu - cxx11_tensor_gpu_5 - ) - fi - - if use lapack ; then - CMAKE_SKIP_TESTS+=( - "^LAPACK-.*$" - ) - fi - - local myctestargs=( - -j1 # otherwise breaks due to cmake reruns - ) - - cmake_src_test -} diff --git a/dev-cpp/eigen/eigen-3.4.1.ebuild b/dev-cpp/eigen/eigen-3.4.1.ebuild deleted file mode 100644 index 65f1b42f809f..000000000000 --- a/dev-cpp/eigen/eigen-3.4.1.ebuild +++ /dev/null @@ -1,651 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {21..23} ) -LLVM_OPTIONAL="cuda-clang" - -PYTHON_COMPAT=( python3_{13..14} ) - -FORTRAN_NEEDED="no" - -LAPACK_ADDONS_PV="3.4.1" - -inherit cmake cuda flag-o-matic fortran-2 llvm-r2 python-any-r1 toolchain-funcs virtualx - -DESCRIPTION="C++ template library for linear algebra" -HOMEPAGE="https://eigen.tuxfamily.org/index.php?title=Main_Page" - -if [[ ${PV} = *9999* ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://gitlab.com/lib${PN}/${PN}.git" - if [[ ${PV} = *.9999* ]] ; then - EGIT_BRANCH="$(ver_cut 1-2)" - fi -else - # we backport two patches from the 3.4 branch - SRC_URI=" - https://gitlab.com/lib${PN}/${PN}/-/archive/${PV}/${P}.tar.bz2 - https://gitlab.com/libeigen/eigen/-/commit/0295f81a835ef69e2bacd9e75ab5782eca398720.patch -> ${P}_p1.patch - https://gitlab.com/libeigen/eigen/-/commit/28ded8800c26864e537852658428ab44c8399e87.patch -> ${P}_p2.patch - " - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" -fi - -SRC_URI+=" - test? ( - lapack? ( - https://downloads.tuxfamily.org/${PN}/lapack_addons_${LAPACK_ADDONS_PV}.tgz - -> ${PN}-lapack_addons-${LAPACK_ADDONS_PV}.tgz - ) - ) -" - -LICENSE="MPL-2.0" -SLOT="3/$(ver_cut 1-2)" - -# The following lines are shamelessly stolen from ffmpeg-9999.ebuild with modifications -ARM_CPU_FEATURES=( - neon:NEON -) -PPC_CPU_FEATURES=( - altivec:ALTIVEC - vsx:VSX -) -X86_CPU_FEATURES=( - avx:AVX - avx2:AVX2 - avx512f:AVX512 - avx512dq:AVX512DQ - f16c:FP16C - fma3:FMA - popcnt:POPCNT - sse:SSE - sse2:SSE2 - sse3:SSE3 - ssse3:SSSE3 - sse4_1:SSE4_1 - sse4_2:SSE4_2 -) -# MIPS_CPU_FEATURES=( -# msa:MSA -# ) -# S390_CPU_FEATURES=( -# z13:Z13 -# z14:Z14 -# ) - -CPU_FEATURES_MAP=( - "${ARM_CPU_FEATURES[@]/#/cpu_flags_arm_}" - "${PPC_CPU_FEATURES[@]/#/cpu_flags_ppc_}" - "${X86_CPU_FEATURES[@]/#/cpu_flags_x86_}" - # "${MIPS_CPU_FEATURES[@]/#/cpu_flags_mips_}" - # "${S390_CPU_FEATURES[@]/#/cpu_flags_s390_}" -) - -IUSE_TEST_BACKENDS=( - "adolc" - "boost" - "cholmod" - "fftw" - "klu" - "metis" - "opengl" - "pastix" - "pocketfft" - "sparsehash" - "spqr" - "superlu" - "umfpack" -) - -IUSE=" - debug - blas lapack - ${CPU_FEATURES_MAP[*]%:*} - cuda cuda-clang hip - doc mathjax - openmp - test ${IUSE_TEST_BACKENDS[*]} -" -# zvector - -REQUIRED_USE=" - lapack? ( - blas - ) - test? ( - || ( ${IUSE_TEST_BACKENDS[*]} ) - cuda-clang? ( - !openmp - ${LLVM_REQUIRED_USE} - ) - ) -" - -# Tests failing again because of compiler issues; bugs #932646, #943401 -RESTRICT="!test? ( test )" -FORTRAN_DEPEND="virtual/fortran" - -BDEPEND=" - doc? ( - app-text/doxygen[dot] - dev-texlive/texlive-bibtexextra - dev-texlive/texlive-fontsextra - dev-texlive/texlive-fontutils - dev-texlive/texlive-latex - dev-texlive/texlive-latexextra - mathjax? ( dev-libs/mathjax ) - ) - test? ( - virtual/pkgconfig - lapack? ( - ${PYTHON_DEPS} - ) - spqr? ( - cholmod? ( - blas? ( - lapack? ( - ${FORTRAN_DEPEND} - ) - ) - ) - ) - pastix? ( ${FORTRAN_DEPEND} ) - ) - blas? ( ${FORTRAN_DEPEND} ) - lapack? ( ${FORTRAN_DEPEND} ) -" - -TEST_BACKENDS=" - adolc? ( sci-libs/adolc[sparse] ) - boost? ( dev-libs/boost ) - cholmod? ( sci-libs/cholmod:=[cuda?] ) - fftw? ( sci-libs/fftw[openmp?] ) - klu? ( sci-libs/klu:= ) - metis? ( - sci-libs/metis[openmp?] - sci-libs/pastix[metis] - ) - opengl? ( - media-libs/freeglut - media-libs/glew - media-libs/libglvnd - ) - pastix? ( - sci-libs/pastix[-mpi] - || ( - sci-libs/pastix[scotch] - sci-libs/pastix[metis] - ) - ) - pocketfft? ( dev-libs/pocketfft ) - sparsehash? ( - amd64? ( dev-cpp/sparsehash ) - arm64? ( dev-cpp/sparsehash ) - ppc64? ( dev-cpp/sparsehash ) - x86? ( dev-cpp/sparsehash ) - ) - spqr? ( sci-libs/spqr:= ) - superlu? ( sci-libs/superlu:= ) - umfpack? ( sci-libs/umfpack:= ) -" - -DEPEND=" - test? ( - cuda? ( - !cuda-clang? ( - dev-util/nvidia-cuda-toolkit - ) - cuda-clang? ( - $(llvm_gen_dep ' - llvm-core/clang:${LLVM_SLOT} - llvm-runtimes/clang-runtime:${LLVM_SLOT}[llvm_targets_NVPTX,offload,openmp] - ') - ) - ) - hip? ( dev-util/hip ) - !blas? ( - virtual/blas - !lapack? ( - virtual/lapacke - ) - ) - ${TEST_BACKENDS} - ) -" - -PATCHES=( - "${FILESDIR}/${PN}-3.3.9-max-macro.patch" - "${FILESDIR}/${PN}-3.4.0-doc-nocompress.patch" # bug 830064 - "${FILESDIR}/${PN}-3.4.0-buildstring.patch" - "${FILESDIR}/${PN}-3.4.1-cxxstandard-17.patch" - - "${FILESDIR}/${PN}-3.4.0-c++-20.patch" - - "${FILESDIR}/${PN}-3.4.1-bug1213-link-with-Eigen3-Eigen.patch" - - "${FILESDIR}/${PN}-5.0.1-cmake-GNUInstallDirs.patch" - "${FILESDIR}/${PN}-5.0.1-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch" - - "${DISTDIR}/${P}_p1.patch" - "${DISTDIR}/${P}_p2.patch" -) - -# TODO should be in cuda.eclass -cuda_get_host_compiler() { - if [[ -n "${NVCC_CCBIN}" ]]; then - echo "${NVCC_CCBIN}" - return - fi - - if [[ -n "${CUDAHOSTCXX}" ]]; then - echo "${CUDAHOSTCXX}" - return - fi - - einfo "Trying to find working CUDA host compiler" - - if ! tc-is-gcc && ! tc-is-clang; then - die "$(tc-get-compiler-type) compiler is not supported" - fi - - local compiler compiler_type compiler_version - local package package_version - local -x NVCC_CCBIN - local NVCC_CCBIN_default - - compiler_type="$(tc-get-compiler-type)" - compiler_version="$("${compiler_type}-major-version")" - - # try the default compiler first - NVCC_CCBIN="$(tc-getCXX)" - NVCC_CCBIN_default="${NVCC_CCBIN}-${compiler_version}" - - compiler="${NVCC_CCBIN/%-${compiler_version}}" - - # store the package so we can re-use it later - package="sys-devel/${compiler_type}" - package_version="${package}" - - ebegin "testing ${NVCC_CCBIN_default} (default)" - - while ! nvcc -v -ccbin "${NVCC_CCBIN}" - -x cu <<<"int main(){}" &>> "${T}/cuda_get_host_compiler.log" ; do - eend 1 - - while true; do - # prepare next version - if ! package_version="<$(best_version "${package_version}")"; then - die "could not find a supported version of ${compiler}" - fi - - NVCC_CCBIN="${compiler}-$(ver_cut 1 "${package_version/#<${package}-/}")" - - [[ "${NVCC_CCBIN}" != "${NVCC_CCBIN_default}" ]] && break - done - ebegin "testing ${NVCC_CCBIN}" - done - eend $? - - echo "${NVCC_CCBIN}" - export NVCC_CCBIN -} - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]] && use openmp; then - tc-check-openmp - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] && use openmp; then - tc-check-openmp - fi - - if use lapack; then - python-any-r1_pkg_setup - fi - - if { use test && { use spqr && use cholmod && use blas && use lapack; } || use pastix; } \ - || use blas \ - || use lapack \ - ; then - fortran-2_pkg_setup - fi - - if use test && use cuda && use cuda-clang; then - llvm-r2_pkg_setup - fi -} - -src_unpack() { - if [[ ${PV} = *9999* ]] ; then - git-r3_src_unpack - else - unpack "${P}.tar.bz2" - fi - - if use test && use lapack; then - pushd "${S}/lapack" > /dev/null || die - unpack "${PN}-lapack_addons-${LAPACK_ADDONS_PV}.tgz" - popd > /dev/null || die - fi -} - -src_prepare() { - # run patches here as we patch in test/ - cmake_src_prepare - - if use test && use lapack; then - pushd "${S}" > /dev/null || die - eapply "${FILESDIR}/${PN}-5.0.1-fix-lapack_testing.py.patch" - popd > /dev/null || die - fi -} - -src_configure() { - if use lapack; then - # bug 878987 - # multiple definition of `cgesdd_' - filter-lto - fi - - local mycmakeargs=( - -DCMAKE_CXX_STANDARD="20" - -DCMAKE_POSITION_INDEPENDENT_CODE="yes" - - -DEIGEN_BUILD_TESTING="$(usex test)" # Enable creation of Eigen tests. - - -DEIGEN_BUILD_BLAS="$(usex blas)" # Toggles the building of the Eigen Blas library - -DEIGEN_BUILD_LAPACK="$(usex blas "$(usex lapack)")" # Toggles the building of the included Eigen LAPACK library - - -DEIGEN_BUILD_DOC="$(usex doc)" # Enable creation of Eigen documentation - -DEIGEN_BUILD_PKGCONFIG="yes" # Build pkg-config .pc file for Eigen - ) - - append-cxxflags "-DEIGEN_USE_OPENBLAS_BFLOAT16=0" - - if use blas; then - mycmakeargs+=( - -DBUILD_SHARED_LIBS="yes" - -DEIGEN_BUILD_SHARED_LIBS="yes" - ) - - if use lapack; then - mycmakeargs+=( - -DCMAKE_POLICY_DEFAULT_CMP0148="OLD" # FindPythonInterp - -DEIGEN_ENABLE_LAPACK_TESTS="$(usex test)" - ) - fi - fi - - if use doc || use test; then - mycmakeargs+=( - # needs Qt4 - -DEIGEN_TEST_NOQT="yes" # Disable Qt support in unit tests - ) - fi - - if use doc; then - mycmakeargs+=( - -DEIGEN_DOC_USE_MATHJAX="$(usex mathjax)" # Use MathJax for rendering math in HTML docs - -DEIGEN_INTERNAL_DOCUMENTATION=no # Build internal documentation - ) - fi - - if use test; then - mycmakeargs+=( - -DEIGEN_LEAVE_TEST_IN_ALL_TARGET=yes # Leaves tests in the all target, needed by ctest for automatic building - - # the OpenGL testsuite is extremely brittle, bug #712808 - -DEIGEN_TEST_OPENGL="$(usex opengl)" # Enable OpenGL support in unit tests - -DEIGEN_TEST_OPENMP="$(usex openmp)" # Enable/Disable OpenMP in tests/examples - - -DEIGEN_TEST_EXTERNAL_BLAS="$(usex !blas)" # Use external BLAS library for testsuite - - -DEIGEN_TEST_BUILD_DOCUMENTATION="no" # $(usex doc)" # Test building the doxygen documentation - - -DEIGEN_DEBUG_ASSERTS="$(usex debug)" # Enable advanced debugging of assertions - -DEIGEN_SPLIT_LARGE_TESTS="yes" # Split large tests into smaller executables - - -DEIGEN_TEST_CUDA="$(usex cuda)" # Enable CUDA support in unit tests - -DEIGEN_TEST_CUDA_CLANG="$(usex cuda "$(usex cuda-clang)")" # Use clang instead of nvcc to compile the CUDA tests - - -DEIGEN_TEST_HIP="$(usex hip)" # Add HIP support. - - # -DEIGEN_TEST_SYCL="$(usex sycl)" # Add Sycl support. - # -DEIGEN_SYCL_TRISYCL="no" # Use the triSYCL Sycl implementation (ComputeCPP by default). - - $(cmake_use_find_package adolc Adolc) - $(cmake_use_find_package boost Boost) - $(cmake_use_find_package cholmod CHOLMOD) - $(cmake_use_find_package fftw FFTW ) - $(cmake_use_find_package klu KLU) - -DCMAKE_DISABLE_FIND_PACKAGE_MPREAL=yes - # $(cmake_use_find_package opengl OpenGL) # EIGEN_TEST_OPENGL - # $(cmake_use_find_package openmp OpenMP) # EIGEN_TEST_OPENMP - $(cmake_use_find_package pastix PASTIX) - # prevent pastix_nompi.h lookup it no longer exists, we enforce this via deps - -DPASTIX_pastix_nompi.h_INCLUDE_DIRS="FOUND" - - -DPOCKETFFT="$(usex pocketfft)" - $(cmake_use_find_package sparsehash GoogleHash) - $(cmake_use_find_package spqr SPQR) - $(cmake_use_find_package superlu SuperLU) - $(cmake_use_find_package umfpack UMFPACK) - ) - - if use arm; then - mycmakeargs+=( - -DEIGEN_TEST_NEON="$(usex cpu_flags_arm_neon)" - ) - fi - - if use arm64; then - mycmakeargs+=( - -DEIGEN_TEST_NEON64="$(usex cpu_flags_arm_neon)" - ) - fi - - if use amd64 || use x86; then - mycmakeargs+=( - # -DEIGEN_TEST_32BIT=no # Force generating 32bit code. - # -DEIGEN_TEST_X87=no # Force using X87 instructions. Implies no vectorization. - -DEIGEN_TEST_SSE2="$(usex cpu_flags_x86_sse2)" - -DEIGEN_TEST_SSE3="$(usex cpu_flags_x86_sse3)" - -DEIGEN_TEST_SSSE3="$(usex cpu_flags_x86_ssse3)" - -DEIGEN_TEST_FMA="$(usex cpu_flags_x86_fma3)" - -DEIGEN_TEST_SSE4_1="$(usex cpu_flags_x86_sse4_1)" - -DEIGEN_TEST_SSE4_2="$(usex cpu_flags_x86_sse4_2)" - -DEIGEN_TEST_AVX="$(usex cpu_flags_x86_avx)" - -DEIGEN_TEST_F16C="$(usex cpu_flags_x86_f16c)" - -DEIGEN_TEST_AVX2="$(usex cpu_flags_x86_avx2)" - -DEIGEN_TEST_AVX512="$(usex cpu_flags_x86_avx512f)" - -DEIGEN_TEST_AVX512DQ="$(usex cpu_flags_x86_avx512dq)" - ) - fi - - if use mips; then - mycmakeargs+=( - # -DEIGEN_TEST_MSA=no # Enable/Disable MSA in tests/examples - ) - fi - - if use ppc || use ppc64; then - mycmakeargs+=( - -DEIGEN_TEST_ALTIVEC="$(usex cpu_flags_ppc_altivec)" - -DEIGEN_TEST_VSX="$(usex cpu_flags_ppc_vsx)" - ) - fi - - if use s390; then - mycmakeargs+=( - # -DEIGEN_TEST_Z13=no # Enable/Disable S390X(zEC13) ZVECTOR in tests/examples - # -DEIGEN_TEST_Z14=no # Enable/Disable S390X(zEC14) ZVECTOR in tests/examples - ) - fi - - if use cuda; then - cuda_add_sandbox -w - - if use cuda-clang; then - local llvm_prefix - llvm_prefix="$(get_llvm_prefix -b)" - - # NVCCFLAGS gets injected into CMAKE_CXX_FLAGS, which means we need to use clang as gcc will fail with - # error: unrecognized command-line option - if ! tc-is-clang; then - export CC="${CHOST}-clang-${LLVM_SLOT}" - export CXX="${CHOST}-clang++-${LLVM_SLOT}" - fi - - NVCCFLAGS="${NVCCFLAGS:+${NVCCFLAGS} }--libomptarget-nvptx-bc-path=${llvm_prefix}/$(get_libdir)/nvptx64-nvidia-cuda/libomptarget-nvptx.bc" - - mycmakeargs+=( - -DCUDA_HOST_COMPILER="${CHOST}-clang++-${LLVM_SLOT}" - ) - else - cuda_get_host_compiler - - mycmakeargs+=( - -DCUDA_HOST_COMPILER="${CUDAHOSTCXX}" - ) - if [[ -v CUDACXX ]]; then - mycmakeargs+=( - -DCUDA_NVCC_EXECUTABLE="${CUDACXX}" - -DCMAKE_POLICY_DEFAULT_CMP0146="OLD" # FindCUDA - ) - fi - fi - - if [[ "${CUDA_VERBOSE}" == true ]]; then - mycmakeargs+=( - -DCUDA_VERBOSE_BUILD="yes" - ) - NVCCFLAGS+=" -v" - fi - - if [[ -v CUDAARCHS ]]; then - mycmakeargs+=( - # TODO this needs to be lowest first for eigen - -DEIGEN_CUDA_COMPUTE_ARCH="${CUDAARCHS}" - ) - fi - - # CUDAFLAGS is used by cmake - # NVCCFLAGS is used by cuda.eclass - mycmakeargs+=( - -DEIGEN_CUDA_CXX_FLAGS="${NVCCFLAGS}" - - -DCUDA_USE_STATIC_CUDA_RUNTIME="no" - ) - fi - - if use opengl; then - mycmakeargs+=( - -DOpenGL_GL_PREFERENCE="GLVND" - ) - fi - - if use pocketfft; then - mycmakeargs+=( - -DEIGEN_TEST_CXX11=yes - ) - fi - fi - - cmake_src_configure -} - -src_compile() { - local targets=() - - if use blas; then - targets+=( blas ) - if use lapack; then - targets+=( lapack ) - fi - fi - - if use test; then - targets+=( buildtests ) - - if use cuda || use hip; then - targets+=( buildtests_gpu ) - fi - - # tests generate random data, which fails for some seeds - # we solve this via test reruns now - # export EIGEN_SEED=712808 - fi - - # we add doc last to capture results for buildtests - if use doc; then - targets+=( doc ) - fi - - if [[ -n "${targets[*]}" ]]; then - cmake_src_compile "${targets[@]}" - fi -} - -src_test() { - local CMAKE_SKIP_TESTS=( - "^ref_8$" - ) - - if use cholmod && use blas && use lapack; then - CMAKE_SKIP_TESTS+=( - "^cholmod_support_21$" - "^cholmod_support_22$" - ) - fi - - if use cuda; then - cuda_add_sandbox -w - fi - - if use klu && use blas; then - CMAKE_SKIP_TESTS+=( - "^klu_support_1$" - "^klu_support_2$" - ) - fi - - if use lapack; then - CMAKE_SKIP_TESTS+=( - "^LAPACK-xlintsts_stest_in$" - "^LAPACK-xeigtsts_sep_in$" - "^LAPACK-xeigtsts_svd_in$" - "^LAPACK-xlintstd_dtest_in$" - "^LAPACK-xeigtstd_sep_in$" - "^LAPACK-xeigtstd_svd_in$" - "^LAPACK-xlintstc_ctest_in$" - "^LAPACK-xeigtstc_svd_in$" - ) - fi - - local myctestargs=( - -j1 # otherwise breaks due to cmake reruns - --repeat until-pass:50 - ) - - if use opengl; then - virtx \ - cmake_src_test - else - cmake_src_test - fi -} - -src_install() { - local DOCS=() - cmake_src_install - - if use doc; then - pushd "${BUILD_DIR}/doc" > /dev/null || die - dodoc -r html - popd > /dev/null || die - fi -} diff --git a/dev-cpp/eigen/eigen-3.4.9999.ebuild b/dev-cpp/eigen/eigen-3.4.9999.ebuild deleted file mode 100644 index 0d0b2ca43801..000000000000 --- a/dev-cpp/eigen/eigen-3.4.9999.ebuild +++ /dev/null @@ -1,645 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {21..23} ) -LLVM_OPTIONAL="cuda-clang" - -PYTHON_COMPAT=( python3_{13..14} ) - -FORTRAN_NEEDED="no" - -LAPACK_ADDONS_PV="3.4.1" - -inherit cmake cuda flag-o-matic fortran-2 llvm-r2 python-any-r1 toolchain-funcs virtualx - -DESCRIPTION="C++ template library for linear algebra" -HOMEPAGE="https://eigen.tuxfamily.org/index.php?title=Main_Page" - -if [[ ${PV} = *9999* ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://gitlab.com/lib${PN}/${PN}.git" - if [[ ${PV} = *.9999* ]] ; then - EGIT_BRANCH="$(ver_cut 1-2)" - fi -else - SRC_URI=" - https://gitlab.com/lib${PN}/${PN}/-/archive/${PV}/${P}.tar.bz2 - " - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" -fi - -SRC_URI+=" - test? ( - lapack? ( - https://downloads.tuxfamily.org/${PN}/lapack_addons_${LAPACK_ADDONS_PV}.tgz - -> ${PN}-lapack_addons-${LAPACK_ADDONS_PV}.tgz - ) - ) -" - -LICENSE="MPL-2.0" -SLOT="3/$(ver_cut 1-2)" - -# The following lines are shamelessly stolen from ffmpeg-9999.ebuild with modifications -ARM_CPU_FEATURES=( - neon:NEON -) -PPC_CPU_FEATURES=( - altivec:ALTIVEC - vsx:VSX -) -X86_CPU_FEATURES=( - avx:AVX - avx2:AVX2 - avx512f:AVX512 - avx512dq:AVX512DQ - f16c:FP16C - fma3:FMA - popcnt:POPCNT - sse:SSE - sse2:SSE2 - sse3:SSE3 - ssse3:SSSE3 - sse4_1:SSE4_1 - sse4_2:SSE4_2 -) -# MIPS_CPU_FEATURES=( -# msa:MSA -# ) -# S390_CPU_FEATURES=( -# z13:Z13 -# z14:Z14 -# ) - -CPU_FEATURES_MAP=( - "${ARM_CPU_FEATURES[@]/#/cpu_flags_arm_}" - "${PPC_CPU_FEATURES[@]/#/cpu_flags_ppc_}" - "${X86_CPU_FEATURES[@]/#/cpu_flags_x86_}" - # "${MIPS_CPU_FEATURES[@]/#/cpu_flags_mips_}" - # "${S390_CPU_FEATURES[@]/#/cpu_flags_s390_}" -) - -IUSE_TEST_BACKENDS=( - "adolc" - "boost" - "cholmod" - "fftw" - "klu" - "metis" - "opengl" - "pastix" - "pocketfft" - "sparsehash" - "spqr" - "superlu" - "umfpack" -) - -IUSE=" - debug - blas lapack - ${CPU_FEATURES_MAP[*]%:*} - cuda cuda-clang hip - doc mathjax - openmp - test ${IUSE_TEST_BACKENDS[*]} -" -# zvector - -REQUIRED_USE=" - lapack? ( - blas - ) - test? ( - || ( ${IUSE_TEST_BACKENDS[*]} ) - cuda-clang? ( - !openmp - ${LLVM_REQUIRED_USE} - ) - ) -" - -# Tests failing again because of compiler issues; bugs #932646, #943401 -RESTRICT="!test? ( test )" -FORTRAN_DEPEND="virtual/fortran" - -BDEPEND=" - doc? ( - app-text/doxygen[dot] - dev-texlive/texlive-bibtexextra - dev-texlive/texlive-fontsextra - dev-texlive/texlive-fontutils - dev-texlive/texlive-latex - dev-texlive/texlive-latexextra - mathjax? ( dev-libs/mathjax ) - ) - test? ( - virtual/pkgconfig - lapack? ( - ${PYTHON_DEPS} - ) - spqr? ( - cholmod? ( - blas? ( - lapack? ( - ${FORTRAN_DEPEND} - ) - ) - ) - ) - pastix? ( ${FORTRAN_DEPEND} ) - ) - blas? ( ${FORTRAN_DEPEND} ) - lapack? ( ${FORTRAN_DEPEND} ) -" - -TEST_BACKENDS=" - adolc? ( sci-libs/adolc[sparse] ) - boost? ( dev-libs/boost ) - cholmod? ( sci-libs/cholmod:=[cuda?] ) - fftw? ( sci-libs/fftw[openmp?] ) - klu? ( sci-libs/klu:= ) - metis? ( - sci-libs/metis[openmp?] - sci-libs/pastix[metis] - ) - opengl? ( - media-libs/freeglut - media-libs/glew - media-libs/libglvnd - ) - pastix? ( - sci-libs/pastix[-mpi] - || ( - sci-libs/pastix[scotch] - sci-libs/pastix[metis] - ) - ) - pocketfft? ( dev-libs/pocketfft ) - sparsehash? ( - amd64? ( dev-cpp/sparsehash ) - arm64? ( dev-cpp/sparsehash ) - ppc64? ( dev-cpp/sparsehash ) - x86? ( dev-cpp/sparsehash ) - ) - spqr? ( sci-libs/spqr:= ) - superlu? ( sci-libs/superlu:= ) - umfpack? ( sci-libs/umfpack:= ) -" - -DEPEND=" - test? ( - cuda? ( - !cuda-clang? ( - dev-util/nvidia-cuda-toolkit - ) - cuda-clang? ( - $(llvm_gen_dep ' - llvm-core/clang:${LLVM_SLOT} - llvm-runtimes/clang-runtime:${LLVM_SLOT}[llvm_targets_NVPTX,offload,openmp] - ') - ) - ) - hip? ( dev-util/hip ) - !blas? ( - virtual/blas - !lapack? ( - virtual/lapacke - ) - ) - ${TEST_BACKENDS} - ) -" - -PATCHES=( - "${FILESDIR}/${PN}-3.3.9-max-macro.patch" - "${FILESDIR}/${PN}-3.4.0-doc-nocompress.patch" # bug 830064 - "${FILESDIR}/${PN}-3.4.0-buildstring.patch" - "${FILESDIR}/${PN}-3.4.1-cxxstandard-17.patch" - - "${FILESDIR}/${PN}-3.4.0-c++-20.patch" - - "${FILESDIR}/${PN}-3.4.1-bug1213-link-with-Eigen3-Eigen.patch" - - "${FILESDIR}/${PN}-5.0.1-cmake-GNUInstallDirs.patch" - "${FILESDIR}/${PN}-5.0.1-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch" -) - -# TODO should be in cuda.eclass -cuda_get_host_compiler() { - if [[ -n "${NVCC_CCBIN}" ]]; then - echo "${NVCC_CCBIN}" - return - fi - - if [[ -n "${CUDAHOSTCXX}" ]]; then - echo "${CUDAHOSTCXX}" - return - fi - - einfo "Trying to find working CUDA host compiler" - - if ! tc-is-gcc && ! tc-is-clang; then - die "$(tc-get-compiler-type) compiler is not supported" - fi - - local compiler compiler_type compiler_version - local package package_version - local -x NVCC_CCBIN - local NVCC_CCBIN_default - - compiler_type="$(tc-get-compiler-type)" - compiler_version="$("${compiler_type}-major-version")" - - # try the default compiler first - NVCC_CCBIN="$(tc-getCXX)" - NVCC_CCBIN_default="${NVCC_CCBIN}-${compiler_version}" - - compiler="${NVCC_CCBIN/%-${compiler_version}}" - - # store the package so we can re-use it later - package="sys-devel/${compiler_type}" - package_version="${package}" - - ebegin "testing ${NVCC_CCBIN_default} (default)" - - while ! nvcc -v -ccbin "${NVCC_CCBIN}" - -x cu <<<"int main(){}" &>> "${T}/cuda_get_host_compiler.log" ; do - eend 1 - - while true; do - # prepare next version - if ! package_version="<$(best_version "${package_version}")"; then - die "could not find a supported version of ${compiler}" - fi - - NVCC_CCBIN="${compiler}-$(ver_cut 1 "${package_version/#<${package}-/}")" - - [[ "${NVCC_CCBIN}" != "${NVCC_CCBIN_default}" ]] && break - done - ebegin "testing ${NVCC_CCBIN}" - done - eend $? - - echo "${NVCC_CCBIN}" - export NVCC_CCBIN -} - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]] && use openmp; then - tc-check-openmp - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] && use openmp; then - tc-check-openmp - fi - - if use lapack; then - python-any-r1_pkg_setup - fi - - if { use test && { use spqr && use cholmod && use blas && use lapack; } || use pastix; } \ - || use blas \ - || use lapack \ - ; then - fortran-2_pkg_setup - fi - - if use test && use cuda && use cuda-clang; then - llvm-r2_pkg_setup - fi -} - -src_unpack() { - if [[ ${PV} = *9999* ]] ; then - git-r3_src_unpack - else - unpack "${P}.tar.bz2" - fi - - if use test && use lapack; then - pushd "${S}/lapack" > /dev/null || die - unpack "${PN}-lapack_addons-${LAPACK_ADDONS_PV}.tgz" - popd > /dev/null || die - fi -} - -src_prepare() { - # run patches here as we patch in test/ - cmake_src_prepare - - if use test && use lapack; then - pushd "${S}" > /dev/null || die - eapply "${FILESDIR}/${PN}-5.0.1-fix-lapack_testing.py.patch" - popd > /dev/null || die - fi -} - -src_configure() { - if use lapack; then - # bug 878987 - # multiple definition of `cgesdd_' - filter-lto - fi - - local mycmakeargs=( - -DCMAKE_CXX_STANDARD="20" - -DCMAKE_POSITION_INDEPENDENT_CODE="yes" - - -DEIGEN_BUILD_TESTING="$(usex test)" # Enable creation of Eigen tests. - - -DEIGEN_BUILD_BLAS="$(usex blas)" # Toggles the building of the Eigen Blas library - -DEIGEN_BUILD_LAPACK="$(usex blas "$(usex lapack)")" # Toggles the building of the included Eigen LAPACK library - - -DEIGEN_BUILD_DOC="$(usex doc)" # Enable creation of Eigen documentation - -DEIGEN_BUILD_PKGCONFIG="yes" # Build pkg-config .pc file for Eigen - ) - - append-cxxflags "-DEIGEN_USE_OPENBLAS_BFLOAT16=0" - - if use blas; then - mycmakeargs+=( - -DBUILD_SHARED_LIBS="yes" - -DEIGEN_BUILD_SHARED_LIBS="yes" - ) - - if use lapack; then - mycmakeargs+=( - -DCMAKE_POLICY_DEFAULT_CMP0148="OLD" # FindPythonInterp - -DEIGEN_ENABLE_LAPACK_TESTS="$(usex test)" - ) - fi - fi - - if use doc || use test; then - mycmakeargs+=( - # needs Qt4 - -DEIGEN_TEST_NOQT="yes" # Disable Qt support in unit tests - ) - fi - - if use doc; then - mycmakeargs+=( - -DEIGEN_DOC_USE_MATHJAX="$(usex mathjax)" # Use MathJax for rendering math in HTML docs - -DEIGEN_INTERNAL_DOCUMENTATION=no # Build internal documentation - ) - fi - - if use test; then - mycmakeargs+=( - -DEIGEN_LEAVE_TEST_IN_ALL_TARGET=yes # Leaves tests in the all target, needed by ctest for automatic building - - # the OpenGL testsuite is extremely brittle, bug #712808 - -DEIGEN_TEST_OPENGL="$(usex opengl)" # Enable OpenGL support in unit tests - -DEIGEN_TEST_OPENMP="$(usex openmp)" # Enable/Disable OpenMP in tests/examples - - -DEIGEN_TEST_EXTERNAL_BLAS="$(usex !blas)" # Use external BLAS library for testsuite - - -DEIGEN_TEST_BUILD_DOCUMENTATION="no" # $(usex doc)" # Test building the doxygen documentation - - -DEIGEN_DEBUG_ASSERTS="$(usex debug)" # Enable advanced debugging of assertions - -DEIGEN_SPLIT_LARGE_TESTS="yes" # Split large tests into smaller executables - - -DEIGEN_TEST_CUDA="$(usex cuda)" # Enable CUDA support in unit tests - -DEIGEN_TEST_CUDA_CLANG="$(usex cuda "$(usex cuda-clang)")" # Use clang instead of nvcc to compile the CUDA tests - - -DEIGEN_TEST_HIP="$(usex hip)" # Add HIP support. - - # -DEIGEN_TEST_SYCL="$(usex sycl)" # Add Sycl support. - # -DEIGEN_SYCL_TRISYCL="no" # Use the triSYCL Sycl implementation (ComputeCPP by default). - - $(cmake_use_find_package adolc Adolc) - $(cmake_use_find_package boost Boost) - $(cmake_use_find_package cholmod CHOLMOD) - $(cmake_use_find_package fftw FFTW ) - $(cmake_use_find_package klu KLU) - -DCMAKE_DISABLE_FIND_PACKAGE_MPREAL=yes - # $(cmake_use_find_package opengl OpenGL) # EIGEN_TEST_OPENGL - # $(cmake_use_find_package openmp OpenMP) # EIGEN_TEST_OPENMP - $(cmake_use_find_package pastix PASTIX) - # prevent pastix_nompi.h lookup it no longer exists, we enforce this via deps - -DPASTIX_pastix_nompi.h_INCLUDE_DIRS="FOUND" - - -DPOCKETFFT="$(usex pocketfft)" - $(cmake_use_find_package sparsehash GoogleHash) - $(cmake_use_find_package spqr SPQR) - $(cmake_use_find_package superlu SuperLU) - $(cmake_use_find_package umfpack UMFPACK) - ) - - if use arm; then - mycmakeargs+=( - -DEIGEN_TEST_NEON="$(usex cpu_flags_arm_neon)" - ) - fi - - if use arm64; then - mycmakeargs+=( - -DEIGEN_TEST_NEON64="$(usex cpu_flags_arm_neon)" - ) - fi - - if use amd64 || use x86; then - mycmakeargs+=( - # -DEIGEN_TEST_32BIT=no # Force generating 32bit code. - # -DEIGEN_TEST_X87=no # Force using X87 instructions. Implies no vectorization. - -DEIGEN_TEST_SSE2="$(usex cpu_flags_x86_sse2)" - -DEIGEN_TEST_SSE3="$(usex cpu_flags_x86_sse3)" - -DEIGEN_TEST_SSSE3="$(usex cpu_flags_x86_ssse3)" - -DEIGEN_TEST_FMA="$(usex cpu_flags_x86_fma3)" - -DEIGEN_TEST_SSE4_1="$(usex cpu_flags_x86_sse4_1)" - -DEIGEN_TEST_SSE4_2="$(usex cpu_flags_x86_sse4_2)" - -DEIGEN_TEST_AVX="$(usex cpu_flags_x86_avx)" - -DEIGEN_TEST_F16C="$(usex cpu_flags_x86_f16c)" - -DEIGEN_TEST_AVX2="$(usex cpu_flags_x86_avx2)" - -DEIGEN_TEST_AVX512="$(usex cpu_flags_x86_avx512f)" - -DEIGEN_TEST_AVX512DQ="$(usex cpu_flags_x86_avx512dq)" - ) - fi - - if use mips; then - mycmakeargs+=( - # -DEIGEN_TEST_MSA=no # Enable/Disable MSA in tests/examples - ) - fi - - if use ppc || use ppc64; then - mycmakeargs+=( - -DEIGEN_TEST_ALTIVEC="$(usex cpu_flags_ppc_altivec)" - -DEIGEN_TEST_VSX="$(usex cpu_flags_ppc_vsx)" - ) - fi - - if use s390; then - mycmakeargs+=( - # -DEIGEN_TEST_Z13=no # Enable/Disable S390X(zEC13) ZVECTOR in tests/examples - # -DEIGEN_TEST_Z14=no # Enable/Disable S390X(zEC14) ZVECTOR in tests/examples - ) - fi - - if use cuda; then - cuda_add_sandbox -w - - if use cuda-clang; then - local llvm_prefix - llvm_prefix="$(get_llvm_prefix -b)" - - # NVCCFLAGS gets injected into CMAKE_CXX_FLAGS, which means we need to use clang as gcc will fail with - # error: unrecognized command-line option - if ! tc-is-clang; then - export CC="${CHOST}-clang-${LLVM_SLOT}" - export CXX="${CHOST}-clang++-${LLVM_SLOT}" - fi - - NVCCFLAGS="${NVCCFLAGS:+${NVCCFLAGS} }--libomptarget-nvptx-bc-path=${llvm_prefix}/$(get_libdir)/nvptx64-nvidia-cuda/libomptarget-nvptx.bc" - - mycmakeargs+=( - -DCUDA_HOST_COMPILER="${CHOST}-clang++-${LLVM_SLOT}" - ) - else - cuda_get_host_compiler - - mycmakeargs+=( - -DCUDA_HOST_COMPILER="${CUDAHOSTCXX}" - ) - if [[ -v CUDACXX ]]; then - mycmakeargs+=( - -DCUDA_NVCC_EXECUTABLE="${CUDACXX}" - -DCMAKE_POLICY_DEFAULT_CMP0146="OLD" # FindCUDA - ) - fi - fi - - if [[ "${CUDA_VERBOSE}" == true ]]; then - mycmakeargs+=( - -DCUDA_VERBOSE_BUILD="yes" - ) - NVCCFLAGS+=" -v" - fi - - if [[ -v CUDAARCHS ]]; then - mycmakeargs+=( - # TODO this needs to be lowest first for eigen - -DEIGEN_CUDA_COMPUTE_ARCH="${CUDAARCHS}" - ) - fi - - # CUDAFLAGS is used by cmake - # NVCCFLAGS is used by cuda.eclass - mycmakeargs+=( - -DEIGEN_CUDA_CXX_FLAGS="${NVCCFLAGS}" - - -DCUDA_USE_STATIC_CUDA_RUNTIME="no" - ) - fi - - if use opengl; then - mycmakeargs+=( - -DOpenGL_GL_PREFERENCE="GLVND" - ) - fi - - if use pocketfft; then - mycmakeargs+=( - -DEIGEN_TEST_CXX11=yes - ) - fi - fi - - cmake_src_configure -} - -src_compile() { - local targets=() - - if use blas; then - targets+=( blas ) - if use lapack; then - targets+=( lapack ) - fi - fi - - if use test; then - targets+=( buildtests ) - - if use cuda || use hip; then - targets+=( buildtests_gpu ) - fi - - # tests generate random data, which fails for some seeds - # we solve this via test reruns now - # export EIGEN_SEED=712808 - fi - - # we add doc last to capture results for buildtests - if use doc; then - targets+=( doc ) - fi - - if [[ -n "${targets[*]}" ]]; then - cmake_src_compile "${targets[@]}" - fi -} - -src_test() { - local CMAKE_SKIP_TESTS=( - "^ref_8$" - ) - - if use cholmod && use blas && use lapack; then - CMAKE_SKIP_TESTS+=( - "^cholmod_support_21$" - "^cholmod_support_22$" - ) - fi - - if use cuda; then - cuda_add_sandbox -w - fi - - if use klu && use blas; then - CMAKE_SKIP_TESTS+=( - "^klu_support_1$" - "^klu_support_2$" - ) - fi - - if use lapack; then - CMAKE_SKIP_TESTS+=( - "^LAPACK-xlintsts_stest_in$" - "^LAPACK-xeigtsts_sep_in$" - "^LAPACK-xeigtsts_svd_in$" - "^LAPACK-xlintstd_dtest_in$" - "^LAPACK-xeigtstd_sep_in$" - "^LAPACK-xeigtstd_svd_in$" - "^LAPACK-xlintstc_ctest_in$" - "^LAPACK-xeigtstc_svd_in$" - ) - fi - - local myctestargs=( - -j1 # otherwise breaks due to cmake reruns - --repeat until-pass:50 - ) - - if use opengl; then - virtx \ - cmake_src_test - else - cmake_src_test - fi -} - -src_install() { - local DOCS=() - cmake_src_install - - if use doc; then - pushd "${BUILD_DIR}/doc" > /dev/null || die - dodoc -r html - popd > /dev/null || die - fi -} diff --git a/dev-cpp/eigen/eigen-5.0.1.ebuild b/dev-cpp/eigen/eigen-5.0.1.ebuild deleted file mode 100644 index 2a62c78642c4..000000000000 --- a/dev-cpp/eigen/eigen-5.0.1.ebuild +++ /dev/null @@ -1,665 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {21..23} ) -LLVM_OPTIONAL="cuda-clang" - -PYTHON_COMPAT=( python3_{13..14} ) - -FORTRAN_NEEDED="no" - -LAPACK_ADDONS_PV="3.4.1" - -inherit cmake cuda flag-o-matic fortran-2 llvm-r2 python-any-r1 toolchain-funcs virtualx - -DESCRIPTION="C++ template library for linear algebra" -HOMEPAGE="https://eigen.tuxfamily.org/index.php?title=Main_Page" - -if [[ ${PV} = *9999* ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://gitlab.com/lib${PN}/${PN}.git" - if [[ ${PV} = *.9999* ]] ; then - EGIT_BRANCH="$(ver_cut 1-2)" - fi -else - SRC_URI=" - https://gitlab.com/lib${PN}/${PN}/-/archive/${PV}/${P}.tar.bz2 - " - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" -fi - -SRC_URI+=" - test? ( - lapack? ( - https://downloads.tuxfamily.org/${PN}/lapack_addons_${LAPACK_ADDONS_PV}.tgz - -> ${PN}-lapack_addons-${LAPACK_ADDONS_PV}.tgz - ) - ) -" - -LICENSE="MPL-2.0" -SLOT="3/$(ver_cut 1-2)" - -# The following lines are shamelessly stolen from ffmpeg-9999.ebuild with modifications -ARM_CPU_FEATURES=( - neon:NEON -) -PPC_CPU_FEATURES=( - altivec:ALTIVEC - vsx:VSX -) -X86_CPU_FEATURES=( - avx:AVX - avx2:AVX2 - avx512f:AVX512 - avx512dq:AVX512DQ - f16c:FP16C - fma3:FMA - popcnt:POPCNT - sse:SSE - sse2:SSE2 - sse3:SSE3 - ssse3:SSSE3 - sse4_1:SSE4_1 - sse4_2:SSE4_2 -) -# MIPS_CPU_FEATURES=( -# msa:MSA -# ) -# S390_CPU_FEATURES=( -# z13:Z13 -# z14:Z14 -# ) - -CPU_FEATURES_MAP=( - "${ARM_CPU_FEATURES[@]/#/cpu_flags_arm_}" - "${PPC_CPU_FEATURES[@]/#/cpu_flags_ppc_}" - "${X86_CPU_FEATURES[@]/#/cpu_flags_x86_}" - # "${MIPS_CPU_FEATURES[@]/#/cpu_flags_mips_}" - # "${S390_CPU_FEATURES[@]/#/cpu_flags_s390_}" -) - -IUSE_TEST_BACKENDS=( - "adolc" - "boost" - "cholmod" - "fftw" - "klu" - "metis" - "opengl" - "pastix" - "pocketfft" - "sparsehash" - "spqr" - "superlu" - "umfpack" -) - -IUSE=" - debug - blas lapack - ${CPU_FEATURES_MAP[*]%:*} - cuda cuda-clang hip - doc mathjax - openmp - test ${IUSE_TEST_BACKENDS[*]} -" -# zvector - -REQUIRED_USE=" - lapack? ( - blas - ) - test? ( - || ( ${IUSE_TEST_BACKENDS[*]} ) - cuda-clang? ( - !openmp - ${LLVM_REQUIRED_USE} - ) - ) -" - -# Tests failing again because of compiler issues; bugs #932646, #943401 -RESTRICT="!test? ( test )" -FORTRAN_DEPEND="virtual/fortran" - -BDEPEND=" - doc? ( - app-text/doxygen[dot] - dev-texlive/texlive-bibtexextra - dev-texlive/texlive-fontsextra - dev-texlive/texlive-fontutils - dev-texlive/texlive-latex - dev-texlive/texlive-latexextra - mathjax? ( dev-libs/mathjax ) - ) - test? ( - virtual/pkgconfig - lapack? ( - ${PYTHON_DEPS} - ) - spqr? ( - cholmod? ( - blas? ( - lapack? ( - ${FORTRAN_DEPEND} - ) - ) - ) - ) - pastix? ( ${FORTRAN_DEPEND} ) - ) - blas? ( ${FORTRAN_DEPEND} ) - lapack? ( ${FORTRAN_DEPEND} ) -" - -TEST_BACKENDS=" - adolc? ( sci-libs/adolc[sparse] ) - boost? ( dev-libs/boost ) - cholmod? ( sci-libs/cholmod:=[cuda?] ) - fftw? ( sci-libs/fftw[openmp?] ) - klu? ( sci-libs/klu:= ) - metis? ( - sci-libs/metis[openmp?] - sci-libs/pastix[metis] - ) - opengl? ( - media-libs/freeglut - media-libs/glew - media-libs/libglvnd - ) - pastix? ( - sci-libs/pastix[-mpi] - || ( - sci-libs/pastix[scotch] - sci-libs/pastix[metis] - ) - ) - pocketfft? ( dev-libs/pocketfft ) - sparsehash? ( - amd64? ( dev-cpp/sparsehash ) - arm64? ( dev-cpp/sparsehash ) - ppc64? ( dev-cpp/sparsehash ) - x86? ( dev-cpp/sparsehash ) - ) - spqr? ( sci-libs/spqr:= ) - superlu? ( sci-libs/superlu:= ) - umfpack? ( sci-libs/umfpack:= ) -" - -DEPEND=" - test? ( - cuda? ( - !cuda-clang? ( - dev-util/nvidia-cuda-toolkit - ) - cuda-clang? ( - $(llvm_gen_dep ' - llvm-core/clang:${LLVM_SLOT} - llvm-runtimes/clang-runtime:${LLVM_SLOT}[llvm_targets_NVPTX,offload,openmp] - ') - ) - ) - hip? ( dev-util/hip ) - !blas? ( - virtual/blas - !lapack? ( - virtual/lapacke - ) - ) - ${TEST_BACKENDS} - ) -" - -PATCHES=( - "${FILESDIR}/${PN}-3.4.0-doc-nocompress.patch" # bug 830064 - "${FILESDIR}/${PN}-3.4.0-buildstring.patch" - "${FILESDIR}/${PN}-5.0.0-please_protect_your_min_with_parentheses.patch" - - # PRs - "${FILESDIR}/${PN}-5.0.0-doxygen-1.14.patch" - - "${FILESDIR}/${PN}-5.0.1-c++-20.patch" - "${FILESDIR}/${PN}-5.0.1-cmake-GNUInstallDirs.patch" - "${FILESDIR}/${PN}-5.0.1-make-static-libs-optional.patch" - - "${FILESDIR}/${PN}-5.0.1-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch" -) - -# TODO should be in cuda.eclass -cuda_get_host_compiler() { - if [[ -n "${NVCC_CCBIN}" ]]; then - echo "${NVCC_CCBIN}" - return - fi - - if [[ -n "${CUDAHOSTCXX}" ]]; then - echo "${CUDAHOSTCXX}" - return - fi - - einfo "Trying to find working CUDA host compiler" - - if ! tc-is-gcc && ! tc-is-clang; then - die "$(tc-get-compiler-type) compiler is not supported" - fi - - local compiler compiler_type compiler_version - local package package_version - local -x NVCC_CCBIN - local NVCC_CCBIN_default - - compiler_type="$(tc-get-compiler-type)" - compiler_version="$("${compiler_type}-major-version")" - - # try the default compiler first - NVCC_CCBIN="$(tc-getCXX)" - NVCC_CCBIN_default="${NVCC_CCBIN}-${compiler_version}" - - compiler="${NVCC_CCBIN/%-${compiler_version}}" - - # store the package so we can re-use it later - package="sys-devel/${compiler_type}" - package_version="${package}" - - ebegin "testing ${NVCC_CCBIN_default} (default)" - - while ! nvcc -v -ccbin "${NVCC_CCBIN}" - -x cu <<<"int main(){}" &>> "${T}/cuda_get_host_compiler.log" ; do - eend 1 - - while true; do - # prepare next version - if ! package_version="<$(best_version "${package_version}")"; then - die "could not find a supported version of ${compiler}" - fi - - NVCC_CCBIN="${compiler}-$(ver_cut 1 "${package_version/#<${package}-/}")" - - [[ "${NVCC_CCBIN}" != "${NVCC_CCBIN_default}" ]] && break - done - ebegin "testing ${NVCC_CCBIN}" - done - eend $? - - echo "${NVCC_CCBIN}" - export NVCC_CCBIN -} - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]] && use openmp; then - tc-check-openmp - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] && use openmp; then - tc-check-openmp - fi - - if use lapack; then - python-any-r1_pkg_setup - fi - - if { use test && { use spqr && use cholmod && use blas && use lapack; } || use pastix; } \ - || use blas \ - || use lapack \ - ; then - fortran-2_pkg_setup - fi - - if use test && use cuda && use cuda-clang; then - llvm-r2_pkg_setup - fi -} - -src_unpack() { - if [[ ${PV} = *9999* ]] ; then - git-r3_src_unpack - else - unpack "${P}.tar.bz2" - fi - - if use test && use lapack; then - pushd "${S}/lapack" > /dev/null || die - unpack "${PN}-lapack_addons-${LAPACK_ADDONS_PV}.tgz" - popd > /dev/null || die - fi -} - -src_prepare() { - # run patches here as we patch in test/ - cmake_src_prepare - - if use test && use lapack; then - pushd "${S}" > /dev/null || die - eapply "${FILESDIR}/${PN}-5.0.1-fix-lapack_testing.py.patch" - popd > /dev/null || die - fi -} - -src_configure() { - if use lapack; then - # bug 878987 - # multiple definition of `cgesdd_' - filter-lto - fi - - local mycmakeargs=( - -DCMAKE_CXX_STANDARD="20" - -DCMAKE_POSITION_INDEPENDENT_CODE="yes" - - -DEIGEN_BUILD_TESTING="$(usex test)" # Enable creation of Eigen tests. - - -DEIGEN_BUILD_BLAS="$(usex blas)" # Toggles the building of the Eigen Blas library - -DEIGEN_BUILD_LAPACK="$(usex blas "$(usex lapack)")" # Toggles the building of the included Eigen LAPACK library - - -DEIGEN_BUILD_DOC="$(usex doc)" # Enable creation of Eigen documentation - -DEIGEN_BUILD_PKGCONFIG="yes" # Build pkg-config .pc file for Eigen - ) - - append-cxxflags "-DEIGEN_USE_OPENBLAS_BFLOAT16=0" - - if use blas; then - mycmakeargs+=( - -DBUILD_SHARED_LIBS="yes" - -DEIGEN_BUILD_SHARED_LIBS="yes" - -DEIGEN_BUILD_STATIC_LIBS="yes" - -DEIGEN_INSTALL_STATIC_LIBS="yes" - ) - - if use lapack; then - mycmakeargs+=( - -DCMAKE_POLICY_DEFAULT_CMP0148="OLD" # FindPythonInterp - -DEIGEN_ENABLE_LAPACK_TESTS="$(usex test)" - ) - fi - fi - - if use doc || use test; then - mycmakeargs+=( - # needs Qt4 - -DEIGEN_TEST_NOQT="yes" # Disable Qt support in unit tests - ) - fi - - if use doc; then - mycmakeargs+=( - -DEIGEN_DOC_USE_MATHJAX="$(usex mathjax)" # Use MathJax for rendering math in HTML docs - -DEIGEN_INTERNAL_DOCUMENTATION=no # Build internal documentation - ) - fi - - if use test; then - mycmakeargs+=( - -DEIGEN_LEAVE_TEST_IN_ALL_TARGET=yes # Leaves tests in the all target, needed by ctest for automatic building - - # the OpenGL testsuite is extremely brittle, bug #712808 - -DEIGEN_TEST_OPENGL="$(usex opengl)" # Enable OpenGL support in unit tests - -DEIGEN_TEST_OPENMP="$(usex openmp)" # Enable/Disable OpenMP in tests/examples - - -DEIGEN_TEST_EXTERNAL_BLAS="$(usex !blas)" # Use external BLAS library for testsuite - - -DEIGEN_TEST_BUILD_DOCUMENTATION="no" # $(usex doc)" # Test building the doxygen documentation - - -DEIGEN_DEBUG_ASSERTS="$(usex debug)" # Enable advanced debugging of assertions - -DEIGEN_SPLIT_LARGE_TESTS="yes" # Split large tests into smaller executables - - -DEIGEN_TEST_CUDA="$(usex cuda)" # Enable CUDA support in unit tests - -DEIGEN_TEST_CUDA_CLANG="$(usex cuda "$(usex cuda-clang)")" # Use clang instead of nvcc to compile the CUDA tests - - -DEIGEN_TEST_HIP="$(usex hip)" # Add HIP support. - - # -DEIGEN_TEST_SYCL="$(usex sycl)" # Add Sycl support. - # -DEIGEN_SYCL_TRISYCL="no" # Use the triSYCL Sycl implementation (ComputeCPP by default). - - $(cmake_use_find_package adolc Adolc) - $(cmake_use_find_package boost Boost) - $(cmake_use_find_package cholmod CHOLMOD) - # -DDUCCFFT="$(usex ducc)" - -DDUCC_ROOT="DUCCFFT" - -DDUCCFFT="NOTFOUND" - $(cmake_use_find_package fftw FFTW ) - $(cmake_use_find_package klu KLU) - -DCMAKE_DISABLE_FIND_PACKAGE_MPREAL=yes - # $(cmake_use_find_package opengl OpenGL) # EIGEN_TEST_OPENGL - # $(cmake_use_find_package openmp OpenMP) # EIGEN_TEST_OPENMP - $(cmake_use_find_package pastix PASTIX) - # prevent pastix_nompi.h lookup it no longer exists, we enforce this via deps - -DPASTIX_pastix_nompi.h_INCLUDE_DIRS="FOUND" - - -DPOCKETFFT="$(usex pocketfft)" - $(cmake_use_find_package sparsehash GoogleHash) - $(cmake_use_find_package spqr SPQR) - $(cmake_use_find_package superlu SuperLU) - $(cmake_use_find_package umfpack UMFPACK) - ) - - if use arm; then - mycmakeargs+=( - -DEIGEN_TEST_NEON="$(usex cpu_flags_arm_neon)" - ) - fi - - if use arm64; then - mycmakeargs+=( - -DEIGEN_TEST_NEON64="$(usex cpu_flags_arm_neon)" - ) - fi - - if use amd64 || use x86; then - mycmakeargs+=( - # -DEIGEN_TEST_32BIT=no # Force generating 32bit code. - # -DEIGEN_TEST_X87=no # Force using X87 instructions. Implies no vectorization. - -DEIGEN_TEST_SSE2="$(usex cpu_flags_x86_sse2)" - -DEIGEN_TEST_SSE3="$(usex cpu_flags_x86_sse3)" - -DEIGEN_TEST_SSSE3="$(usex cpu_flags_x86_ssse3)" - -DEIGEN_TEST_FMA="$(usex cpu_flags_x86_fma3)" - -DEIGEN_TEST_SSE4_1="$(usex cpu_flags_x86_sse4_1)" - -DEIGEN_TEST_SSE4_2="$(usex cpu_flags_x86_sse4_2)" - -DEIGEN_TEST_AVX="$(usex cpu_flags_x86_avx)" - -DEIGEN_TEST_F16C="$(usex cpu_flags_x86_f16c)" - -DEIGEN_TEST_AVX2="$(usex cpu_flags_x86_avx2)" - -DEIGEN_TEST_AVX512="$(usex cpu_flags_x86_avx512f)" - -DEIGEN_TEST_AVX512DQ="$(usex cpu_flags_x86_avx512dq)" - ) - fi - - if use mips; then - mycmakeargs+=( - # -DEIGEN_TEST_MSA=no # Enable/Disable MSA in tests/examples - ) - fi - - if use ppc || use ppc64; then - mycmakeargs+=( - -DEIGEN_TEST_ALTIVEC="$(usex cpu_flags_ppc_altivec)" - -DEIGEN_TEST_VSX="$(usex cpu_flags_ppc_vsx)" - ) - fi - - if use s390; then - mycmakeargs+=( - # -DEIGEN_TEST_Z13=no # Enable/Disable S390X(zEC13) ZVECTOR in tests/examples - # -DEIGEN_TEST_Z14=no # Enable/Disable S390X(zEC14) ZVECTOR in tests/examples - ) - fi - - if use cuda; then - cuda_add_sandbox -w - - if use cuda-clang; then - local llvm_prefix - llvm_prefix="$(get_llvm_prefix -b)" - - # NVCCFLAGS gets injected into CMAKE_CXX_FLAGS, which means we need to use clang as gcc will fail with - # error: unrecognized command-line option - if ! tc-is-clang; then - export CC="${CHOST}-clang-${LLVM_SLOT}" - export CXX="${CHOST}-clang++-${LLVM_SLOT}" - fi - - NVCCFLAGS="${NVCCFLAGS:+${NVCCFLAGS} }--libomptarget-nvptx-bc-path=${llvm_prefix}/$(get_libdir)/nvptx64-nvidia-cuda/libomptarget-nvptx.bc" - - mycmakeargs+=( - -DCUDA_HOST_COMPILER="${CHOST}-clang++-${LLVM_SLOT}" - ) - else - cuda_get_host_compiler - - mycmakeargs+=( - -DCUDA_HOST_COMPILER="${CUDAHOSTCXX}" - ) - if [[ -v CUDACXX ]]; then - mycmakeargs+=( - -DCUDA_NVCC_EXECUTABLE="${CUDACXX}" - -DCMAKE_POLICY_DEFAULT_CMP0146="OLD" # FindCUDA - ) - fi - fi - - if [[ "${CUDA_VERBOSE}" == true ]]; then - mycmakeargs+=( - -DCUDA_VERBOSE_BUILD="yes" - ) - NVCCFLAGS+=" -v" - fi - - if [[ -v CUDAARCHS ]]; then - mycmakeargs+=( - # TODO this needs to be lowest first for eigen - -DEIGEN_CUDA_COMPUTE_ARCH="${CUDAARCHS}" - ) - fi - - # CUDAFLAGS is used by cmake - # NVCCFLAGS is used by cuda.eclass - mycmakeargs+=( - -DEIGEN_CUDA_CXX_FLAGS="${NVCCFLAGS}" - - -DCUDA_USE_STATIC_CUDA_RUNTIME="no" - ) - fi - - if use opengl; then - mycmakeargs+=( - -DOpenGL_GL_PREFERENCE="GLVND" - ) - fi - - if use pocketfft; then - mycmakeargs+=( - -DEIGEN_TEST_CXX11=yes - ) - fi - fi - - cmake_src_configure -} - -src_compile() { - local targets=() - - if use blas; then - targets+=( blas ) - if use lapack; then - targets+=( lapack ) - fi - fi - - if use test; then - targets+=( buildtests ) - - if use cuda || use hip; then - targets+=( buildtests_gpu ) - fi - - # tests generate random data, which fails for some seeds - # we solve this via test reruns now - # export EIGEN_SEED=712808 - fi - - # we add doc last to capture results for buildtests - if use doc; then - targets+=( doc ) - fi - - if [[ -n "${targets[*]}" ]]; then - cmake_src_compile "${targets[@]}" - fi -} - -src_test() { - local CMAKE_SKIP_TESTS=( - "^ref_8$" - ) - - if ! use blas; then - CMAKE_SKIP_TESTS+=( - "^nomalloc_1$" # smoketest - "^nomalloc_2$" - "^nomalloc_3$" - "^nomalloc_4$" - - "^product_notemporary_1$" - "^product_notemporary_2$" - "^product_notemporary_3$" - "^product_notemporary_4$" - ) - fi - - if use cholmod && use blas && use lapack; then - CMAKE_SKIP_TESTS+=( - "^cholmod_support_21$" - "^cholmod_support_22$" - ) - fi - - if use cuda; then - cuda_add_sandbox -w - fi - - if use klu && use blas; then - CMAKE_SKIP_TESTS+=( - "^klu_support_1$" - "^klu_support_2$" - ) - fi - - if use lapack; then - CMAKE_SKIP_TESTS+=( - "^LAPACK-xlintsts_stest_in$" - "^LAPACK-xeigtsts_sep_in$" - "^LAPACK-xeigtsts_svd_in$" - "^LAPACK-xlintstd_dtest_in$" - "^LAPACK-xeigtstd_sep_in$" - "^LAPACK-xeigtstd_svd_in$" - "^LAPACK-xlintstc_ctest_in$" - "^LAPACK-xeigtstc_svd_in$" - ) - fi - - local myctestargs=( - -j1 # otherwise breaks due to cmake reruns - --repeat until-pass:50 - ) - - if use opengl; then - virtx \ - cmake_src_test - else - cmake_src_test - fi -} - -src_install() { - local DOCS=() - cmake_src_install - - if use doc; then - pushd "${BUILD_DIR}/doc" > /dev/null || die - dodoc -r html - popd > /dev/null || die - fi -} diff --git a/dev-cpp/eigen/eigen-5.0.9999.ebuild b/dev-cpp/eigen/eigen-5.0.9999.ebuild deleted file mode 100644 index 2a62c78642c4..000000000000 --- a/dev-cpp/eigen/eigen-5.0.9999.ebuild +++ /dev/null @@ -1,665 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {21..23} ) -LLVM_OPTIONAL="cuda-clang" - -PYTHON_COMPAT=( python3_{13..14} ) - -FORTRAN_NEEDED="no" - -LAPACK_ADDONS_PV="3.4.1" - -inherit cmake cuda flag-o-matic fortran-2 llvm-r2 python-any-r1 toolchain-funcs virtualx - -DESCRIPTION="C++ template library for linear algebra" -HOMEPAGE="https://eigen.tuxfamily.org/index.php?title=Main_Page" - -if [[ ${PV} = *9999* ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://gitlab.com/lib${PN}/${PN}.git" - if [[ ${PV} = *.9999* ]] ; then - EGIT_BRANCH="$(ver_cut 1-2)" - fi -else - SRC_URI=" - https://gitlab.com/lib${PN}/${PN}/-/archive/${PV}/${P}.tar.bz2 - " - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" -fi - -SRC_URI+=" - test? ( - lapack? ( - https://downloads.tuxfamily.org/${PN}/lapack_addons_${LAPACK_ADDONS_PV}.tgz - -> ${PN}-lapack_addons-${LAPACK_ADDONS_PV}.tgz - ) - ) -" - -LICENSE="MPL-2.0" -SLOT="3/$(ver_cut 1-2)" - -# The following lines are shamelessly stolen from ffmpeg-9999.ebuild with modifications -ARM_CPU_FEATURES=( - neon:NEON -) -PPC_CPU_FEATURES=( - altivec:ALTIVEC - vsx:VSX -) -X86_CPU_FEATURES=( - avx:AVX - avx2:AVX2 - avx512f:AVX512 - avx512dq:AVX512DQ - f16c:FP16C - fma3:FMA - popcnt:POPCNT - sse:SSE - sse2:SSE2 - sse3:SSE3 - ssse3:SSSE3 - sse4_1:SSE4_1 - sse4_2:SSE4_2 -) -# MIPS_CPU_FEATURES=( -# msa:MSA -# ) -# S390_CPU_FEATURES=( -# z13:Z13 -# z14:Z14 -# ) - -CPU_FEATURES_MAP=( - "${ARM_CPU_FEATURES[@]/#/cpu_flags_arm_}" - "${PPC_CPU_FEATURES[@]/#/cpu_flags_ppc_}" - "${X86_CPU_FEATURES[@]/#/cpu_flags_x86_}" - # "${MIPS_CPU_FEATURES[@]/#/cpu_flags_mips_}" - # "${S390_CPU_FEATURES[@]/#/cpu_flags_s390_}" -) - -IUSE_TEST_BACKENDS=( - "adolc" - "boost" - "cholmod" - "fftw" - "klu" - "metis" - "opengl" - "pastix" - "pocketfft" - "sparsehash" - "spqr" - "superlu" - "umfpack" -) - -IUSE=" - debug - blas lapack - ${CPU_FEATURES_MAP[*]%:*} - cuda cuda-clang hip - doc mathjax - openmp - test ${IUSE_TEST_BACKENDS[*]} -" -# zvector - -REQUIRED_USE=" - lapack? ( - blas - ) - test? ( - || ( ${IUSE_TEST_BACKENDS[*]} ) - cuda-clang? ( - !openmp - ${LLVM_REQUIRED_USE} - ) - ) -" - -# Tests failing again because of compiler issues; bugs #932646, #943401 -RESTRICT="!test? ( test )" -FORTRAN_DEPEND="virtual/fortran" - -BDEPEND=" - doc? ( - app-text/doxygen[dot] - dev-texlive/texlive-bibtexextra - dev-texlive/texlive-fontsextra - dev-texlive/texlive-fontutils - dev-texlive/texlive-latex - dev-texlive/texlive-latexextra - mathjax? ( dev-libs/mathjax ) - ) - test? ( - virtual/pkgconfig - lapack? ( - ${PYTHON_DEPS} - ) - spqr? ( - cholmod? ( - blas? ( - lapack? ( - ${FORTRAN_DEPEND} - ) - ) - ) - ) - pastix? ( ${FORTRAN_DEPEND} ) - ) - blas? ( ${FORTRAN_DEPEND} ) - lapack? ( ${FORTRAN_DEPEND} ) -" - -TEST_BACKENDS=" - adolc? ( sci-libs/adolc[sparse] ) - boost? ( dev-libs/boost ) - cholmod? ( sci-libs/cholmod:=[cuda?] ) - fftw? ( sci-libs/fftw[openmp?] ) - klu? ( sci-libs/klu:= ) - metis? ( - sci-libs/metis[openmp?] - sci-libs/pastix[metis] - ) - opengl? ( - media-libs/freeglut - media-libs/glew - media-libs/libglvnd - ) - pastix? ( - sci-libs/pastix[-mpi] - || ( - sci-libs/pastix[scotch] - sci-libs/pastix[metis] - ) - ) - pocketfft? ( dev-libs/pocketfft ) - sparsehash? ( - amd64? ( dev-cpp/sparsehash ) - arm64? ( dev-cpp/sparsehash ) - ppc64? ( dev-cpp/sparsehash ) - x86? ( dev-cpp/sparsehash ) - ) - spqr? ( sci-libs/spqr:= ) - superlu? ( sci-libs/superlu:= ) - umfpack? ( sci-libs/umfpack:= ) -" - -DEPEND=" - test? ( - cuda? ( - !cuda-clang? ( - dev-util/nvidia-cuda-toolkit - ) - cuda-clang? ( - $(llvm_gen_dep ' - llvm-core/clang:${LLVM_SLOT} - llvm-runtimes/clang-runtime:${LLVM_SLOT}[llvm_targets_NVPTX,offload,openmp] - ') - ) - ) - hip? ( dev-util/hip ) - !blas? ( - virtual/blas - !lapack? ( - virtual/lapacke - ) - ) - ${TEST_BACKENDS} - ) -" - -PATCHES=( - "${FILESDIR}/${PN}-3.4.0-doc-nocompress.patch" # bug 830064 - "${FILESDIR}/${PN}-3.4.0-buildstring.patch" - "${FILESDIR}/${PN}-5.0.0-please_protect_your_min_with_parentheses.patch" - - # PRs - "${FILESDIR}/${PN}-5.0.0-doxygen-1.14.patch" - - "${FILESDIR}/${PN}-5.0.1-c++-20.patch" - "${FILESDIR}/${PN}-5.0.1-cmake-GNUInstallDirs.patch" - "${FILESDIR}/${PN}-5.0.1-make-static-libs-optional.patch" - - "${FILESDIR}/${PN}-5.0.1-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch" -) - -# TODO should be in cuda.eclass -cuda_get_host_compiler() { - if [[ -n "${NVCC_CCBIN}" ]]; then - echo "${NVCC_CCBIN}" - return - fi - - if [[ -n "${CUDAHOSTCXX}" ]]; then - echo "${CUDAHOSTCXX}" - return - fi - - einfo "Trying to find working CUDA host compiler" - - if ! tc-is-gcc && ! tc-is-clang; then - die "$(tc-get-compiler-type) compiler is not supported" - fi - - local compiler compiler_type compiler_version - local package package_version - local -x NVCC_CCBIN - local NVCC_CCBIN_default - - compiler_type="$(tc-get-compiler-type)" - compiler_version="$("${compiler_type}-major-version")" - - # try the default compiler first - NVCC_CCBIN="$(tc-getCXX)" - NVCC_CCBIN_default="${NVCC_CCBIN}-${compiler_version}" - - compiler="${NVCC_CCBIN/%-${compiler_version}}" - - # store the package so we can re-use it later - package="sys-devel/${compiler_type}" - package_version="${package}" - - ebegin "testing ${NVCC_CCBIN_default} (default)" - - while ! nvcc -v -ccbin "${NVCC_CCBIN}" - -x cu <<<"int main(){}" &>> "${T}/cuda_get_host_compiler.log" ; do - eend 1 - - while true; do - # prepare next version - if ! package_version="<$(best_version "${package_version}")"; then - die "could not find a supported version of ${compiler}" - fi - - NVCC_CCBIN="${compiler}-$(ver_cut 1 "${package_version/#<${package}-/}")" - - [[ "${NVCC_CCBIN}" != "${NVCC_CCBIN_default}" ]] && break - done - ebegin "testing ${NVCC_CCBIN}" - done - eend $? - - echo "${NVCC_CCBIN}" - export NVCC_CCBIN -} - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]] && use openmp; then - tc-check-openmp - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] && use openmp; then - tc-check-openmp - fi - - if use lapack; then - python-any-r1_pkg_setup - fi - - if { use test && { use spqr && use cholmod && use blas && use lapack; } || use pastix; } \ - || use blas \ - || use lapack \ - ; then - fortran-2_pkg_setup - fi - - if use test && use cuda && use cuda-clang; then - llvm-r2_pkg_setup - fi -} - -src_unpack() { - if [[ ${PV} = *9999* ]] ; then - git-r3_src_unpack - else - unpack "${P}.tar.bz2" - fi - - if use test && use lapack; then - pushd "${S}/lapack" > /dev/null || die - unpack "${PN}-lapack_addons-${LAPACK_ADDONS_PV}.tgz" - popd > /dev/null || die - fi -} - -src_prepare() { - # run patches here as we patch in test/ - cmake_src_prepare - - if use test && use lapack; then - pushd "${S}" > /dev/null || die - eapply "${FILESDIR}/${PN}-5.0.1-fix-lapack_testing.py.patch" - popd > /dev/null || die - fi -} - -src_configure() { - if use lapack; then - # bug 878987 - # multiple definition of `cgesdd_' - filter-lto - fi - - local mycmakeargs=( - -DCMAKE_CXX_STANDARD="20" - -DCMAKE_POSITION_INDEPENDENT_CODE="yes" - - -DEIGEN_BUILD_TESTING="$(usex test)" # Enable creation of Eigen tests. - - -DEIGEN_BUILD_BLAS="$(usex blas)" # Toggles the building of the Eigen Blas library - -DEIGEN_BUILD_LAPACK="$(usex blas "$(usex lapack)")" # Toggles the building of the included Eigen LAPACK library - - -DEIGEN_BUILD_DOC="$(usex doc)" # Enable creation of Eigen documentation - -DEIGEN_BUILD_PKGCONFIG="yes" # Build pkg-config .pc file for Eigen - ) - - append-cxxflags "-DEIGEN_USE_OPENBLAS_BFLOAT16=0" - - if use blas; then - mycmakeargs+=( - -DBUILD_SHARED_LIBS="yes" - -DEIGEN_BUILD_SHARED_LIBS="yes" - -DEIGEN_BUILD_STATIC_LIBS="yes" - -DEIGEN_INSTALL_STATIC_LIBS="yes" - ) - - if use lapack; then - mycmakeargs+=( - -DCMAKE_POLICY_DEFAULT_CMP0148="OLD" # FindPythonInterp - -DEIGEN_ENABLE_LAPACK_TESTS="$(usex test)" - ) - fi - fi - - if use doc || use test; then - mycmakeargs+=( - # needs Qt4 - -DEIGEN_TEST_NOQT="yes" # Disable Qt support in unit tests - ) - fi - - if use doc; then - mycmakeargs+=( - -DEIGEN_DOC_USE_MATHJAX="$(usex mathjax)" # Use MathJax for rendering math in HTML docs - -DEIGEN_INTERNAL_DOCUMENTATION=no # Build internal documentation - ) - fi - - if use test; then - mycmakeargs+=( - -DEIGEN_LEAVE_TEST_IN_ALL_TARGET=yes # Leaves tests in the all target, needed by ctest for automatic building - - # the OpenGL testsuite is extremely brittle, bug #712808 - -DEIGEN_TEST_OPENGL="$(usex opengl)" # Enable OpenGL support in unit tests - -DEIGEN_TEST_OPENMP="$(usex openmp)" # Enable/Disable OpenMP in tests/examples - - -DEIGEN_TEST_EXTERNAL_BLAS="$(usex !blas)" # Use external BLAS library for testsuite - - -DEIGEN_TEST_BUILD_DOCUMENTATION="no" # $(usex doc)" # Test building the doxygen documentation - - -DEIGEN_DEBUG_ASSERTS="$(usex debug)" # Enable advanced debugging of assertions - -DEIGEN_SPLIT_LARGE_TESTS="yes" # Split large tests into smaller executables - - -DEIGEN_TEST_CUDA="$(usex cuda)" # Enable CUDA support in unit tests - -DEIGEN_TEST_CUDA_CLANG="$(usex cuda "$(usex cuda-clang)")" # Use clang instead of nvcc to compile the CUDA tests - - -DEIGEN_TEST_HIP="$(usex hip)" # Add HIP support. - - # -DEIGEN_TEST_SYCL="$(usex sycl)" # Add Sycl support. - # -DEIGEN_SYCL_TRISYCL="no" # Use the triSYCL Sycl implementation (ComputeCPP by default). - - $(cmake_use_find_package adolc Adolc) - $(cmake_use_find_package boost Boost) - $(cmake_use_find_package cholmod CHOLMOD) - # -DDUCCFFT="$(usex ducc)" - -DDUCC_ROOT="DUCCFFT" - -DDUCCFFT="NOTFOUND" - $(cmake_use_find_package fftw FFTW ) - $(cmake_use_find_package klu KLU) - -DCMAKE_DISABLE_FIND_PACKAGE_MPREAL=yes - # $(cmake_use_find_package opengl OpenGL) # EIGEN_TEST_OPENGL - # $(cmake_use_find_package openmp OpenMP) # EIGEN_TEST_OPENMP - $(cmake_use_find_package pastix PASTIX) - # prevent pastix_nompi.h lookup it no longer exists, we enforce this via deps - -DPASTIX_pastix_nompi.h_INCLUDE_DIRS="FOUND" - - -DPOCKETFFT="$(usex pocketfft)" - $(cmake_use_find_package sparsehash GoogleHash) - $(cmake_use_find_package spqr SPQR) - $(cmake_use_find_package superlu SuperLU) - $(cmake_use_find_package umfpack UMFPACK) - ) - - if use arm; then - mycmakeargs+=( - -DEIGEN_TEST_NEON="$(usex cpu_flags_arm_neon)" - ) - fi - - if use arm64; then - mycmakeargs+=( - -DEIGEN_TEST_NEON64="$(usex cpu_flags_arm_neon)" - ) - fi - - if use amd64 || use x86; then - mycmakeargs+=( - # -DEIGEN_TEST_32BIT=no # Force generating 32bit code. - # -DEIGEN_TEST_X87=no # Force using X87 instructions. Implies no vectorization. - -DEIGEN_TEST_SSE2="$(usex cpu_flags_x86_sse2)" - -DEIGEN_TEST_SSE3="$(usex cpu_flags_x86_sse3)" - -DEIGEN_TEST_SSSE3="$(usex cpu_flags_x86_ssse3)" - -DEIGEN_TEST_FMA="$(usex cpu_flags_x86_fma3)" - -DEIGEN_TEST_SSE4_1="$(usex cpu_flags_x86_sse4_1)" - -DEIGEN_TEST_SSE4_2="$(usex cpu_flags_x86_sse4_2)" - -DEIGEN_TEST_AVX="$(usex cpu_flags_x86_avx)" - -DEIGEN_TEST_F16C="$(usex cpu_flags_x86_f16c)" - -DEIGEN_TEST_AVX2="$(usex cpu_flags_x86_avx2)" - -DEIGEN_TEST_AVX512="$(usex cpu_flags_x86_avx512f)" - -DEIGEN_TEST_AVX512DQ="$(usex cpu_flags_x86_avx512dq)" - ) - fi - - if use mips; then - mycmakeargs+=( - # -DEIGEN_TEST_MSA=no # Enable/Disable MSA in tests/examples - ) - fi - - if use ppc || use ppc64; then - mycmakeargs+=( - -DEIGEN_TEST_ALTIVEC="$(usex cpu_flags_ppc_altivec)" - -DEIGEN_TEST_VSX="$(usex cpu_flags_ppc_vsx)" - ) - fi - - if use s390; then - mycmakeargs+=( - # -DEIGEN_TEST_Z13=no # Enable/Disable S390X(zEC13) ZVECTOR in tests/examples - # -DEIGEN_TEST_Z14=no # Enable/Disable S390X(zEC14) ZVECTOR in tests/examples - ) - fi - - if use cuda; then - cuda_add_sandbox -w - - if use cuda-clang; then - local llvm_prefix - llvm_prefix="$(get_llvm_prefix -b)" - - # NVCCFLAGS gets injected into CMAKE_CXX_FLAGS, which means we need to use clang as gcc will fail with - # error: unrecognized command-line option - if ! tc-is-clang; then - export CC="${CHOST}-clang-${LLVM_SLOT}" - export CXX="${CHOST}-clang++-${LLVM_SLOT}" - fi - - NVCCFLAGS="${NVCCFLAGS:+${NVCCFLAGS} }--libomptarget-nvptx-bc-path=${llvm_prefix}/$(get_libdir)/nvptx64-nvidia-cuda/libomptarget-nvptx.bc" - - mycmakeargs+=( - -DCUDA_HOST_COMPILER="${CHOST}-clang++-${LLVM_SLOT}" - ) - else - cuda_get_host_compiler - - mycmakeargs+=( - -DCUDA_HOST_COMPILER="${CUDAHOSTCXX}" - ) - if [[ -v CUDACXX ]]; then - mycmakeargs+=( - -DCUDA_NVCC_EXECUTABLE="${CUDACXX}" - -DCMAKE_POLICY_DEFAULT_CMP0146="OLD" # FindCUDA - ) - fi - fi - - if [[ "${CUDA_VERBOSE}" == true ]]; then - mycmakeargs+=( - -DCUDA_VERBOSE_BUILD="yes" - ) - NVCCFLAGS+=" -v" - fi - - if [[ -v CUDAARCHS ]]; then - mycmakeargs+=( - # TODO this needs to be lowest first for eigen - -DEIGEN_CUDA_COMPUTE_ARCH="${CUDAARCHS}" - ) - fi - - # CUDAFLAGS is used by cmake - # NVCCFLAGS is used by cuda.eclass - mycmakeargs+=( - -DEIGEN_CUDA_CXX_FLAGS="${NVCCFLAGS}" - - -DCUDA_USE_STATIC_CUDA_RUNTIME="no" - ) - fi - - if use opengl; then - mycmakeargs+=( - -DOpenGL_GL_PREFERENCE="GLVND" - ) - fi - - if use pocketfft; then - mycmakeargs+=( - -DEIGEN_TEST_CXX11=yes - ) - fi - fi - - cmake_src_configure -} - -src_compile() { - local targets=() - - if use blas; then - targets+=( blas ) - if use lapack; then - targets+=( lapack ) - fi - fi - - if use test; then - targets+=( buildtests ) - - if use cuda || use hip; then - targets+=( buildtests_gpu ) - fi - - # tests generate random data, which fails for some seeds - # we solve this via test reruns now - # export EIGEN_SEED=712808 - fi - - # we add doc last to capture results for buildtests - if use doc; then - targets+=( doc ) - fi - - if [[ -n "${targets[*]}" ]]; then - cmake_src_compile "${targets[@]}" - fi -} - -src_test() { - local CMAKE_SKIP_TESTS=( - "^ref_8$" - ) - - if ! use blas; then - CMAKE_SKIP_TESTS+=( - "^nomalloc_1$" # smoketest - "^nomalloc_2$" - "^nomalloc_3$" - "^nomalloc_4$" - - "^product_notemporary_1$" - "^product_notemporary_2$" - "^product_notemporary_3$" - "^product_notemporary_4$" - ) - fi - - if use cholmod && use blas && use lapack; then - CMAKE_SKIP_TESTS+=( - "^cholmod_support_21$" - "^cholmod_support_22$" - ) - fi - - if use cuda; then - cuda_add_sandbox -w - fi - - if use klu && use blas; then - CMAKE_SKIP_TESTS+=( - "^klu_support_1$" - "^klu_support_2$" - ) - fi - - if use lapack; then - CMAKE_SKIP_TESTS+=( - "^LAPACK-xlintsts_stest_in$" - "^LAPACK-xeigtsts_sep_in$" - "^LAPACK-xeigtsts_svd_in$" - "^LAPACK-xlintstd_dtest_in$" - "^LAPACK-xeigtstd_sep_in$" - "^LAPACK-xeigtstd_svd_in$" - "^LAPACK-xlintstc_ctest_in$" - "^LAPACK-xeigtstc_svd_in$" - ) - fi - - local myctestargs=( - -j1 # otherwise breaks due to cmake reruns - --repeat until-pass:50 - ) - - if use opengl; then - virtx \ - cmake_src_test - else - cmake_src_test - fi -} - -src_install() { - local DOCS=() - cmake_src_install - - if use doc; then - pushd "${BUILD_DIR}/doc" > /dev/null || die - dodoc -r html - popd > /dev/null || die - fi -} diff --git a/dev-cpp/eigen/eigen-9999.ebuild b/dev-cpp/eigen/eigen-9999.ebuild deleted file mode 100644 index 804b9e4ea506..000000000000 --- a/dev-cpp/eigen/eigen-9999.ebuild +++ /dev/null @@ -1,641 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -LLVM_COMPAT=( {21..23} ) -LLVM_OPTIONAL="cuda-clang" - -PYTHON_COMPAT=( python3_{13..14} ) - -FORTRAN_NEEDED="no" - -LAPACK_ADDONS_PV="3.4.1" - -inherit cmake cuda flag-o-matic fortran-2 llvm-r2 python-any-r1 toolchain-funcs virtualx - -DESCRIPTION="C++ template library for linear algebra" -HOMEPAGE="https://eigen.tuxfamily.org/index.php?title=Main_Page" - -if [[ ${PV} = *9999* ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://gitlab.com/lib${PN}/${PN}.git" - if [[ ${PV} = *.9999* ]] ; then - EGIT_BRANCH="$(ver_cut 1-2)" - fi -else - SRC_URI=" - https://gitlab.com/lib${PN}/${PN}/-/archive/${PV}/${P}.tar.bz2 - " - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" -fi - -SRC_URI+=" - test? ( - lapack? ( - https://downloads.tuxfamily.org/${PN}/lapack_addons_${LAPACK_ADDONS_PV}.tgz - -> ${PN}-lapack_addons-${LAPACK_ADDONS_PV}.tgz - ) - ) -" - -LICENSE="MPL-2.0" -SLOT="3/$(ver_cut 1-2)" - -# The following lines are shamelessly stolen from ffmpeg-9999.ebuild with modifications -ARM_CPU_FEATURES=( - neon:NEON -) -PPC_CPU_FEATURES=( - altivec:ALTIVEC - vsx:VSX -) -X86_CPU_FEATURES=( - avx:AVX - avx2:AVX2 - avx512f:AVX512 - avx512dq:AVX512DQ - f16c:FP16C - fma3:FMA - popcnt:POPCNT - sse:SSE - sse2:SSE2 - sse3:SSE3 - ssse3:SSSE3 - sse4_1:SSE4_1 - sse4_2:SSE4_2 -) -# MIPS_CPU_FEATURES=( -# msa:MSA -# ) -# S390_CPU_FEATURES=( -# z13:Z13 -# z14:Z14 -# ) - -CPU_FEATURES_MAP=( - "${ARM_CPU_FEATURES[@]/#/cpu_flags_arm_}" - "${PPC_CPU_FEATURES[@]/#/cpu_flags_ppc_}" - "${X86_CPU_FEATURES[@]/#/cpu_flags_x86_}" - # "${MIPS_CPU_FEATURES[@]/#/cpu_flags_mips_}" - # "${S390_CPU_FEATURES[@]/#/cpu_flags_s390_}" -) - -IUSE_TEST_BACKENDS=( - "adolc" - "boost" - "cholmod" - "fftw" - "klu" - "metis" - "opengl" - "pastix" - "pocketfft" - "sparsehash" - "spqr" - "superlu" - "umfpack" -) - -IUSE=" - debug - blas lapack - ${CPU_FEATURES_MAP[*]%:*} - cuda cuda-clang hip - doc mathjax - openmp - test ${IUSE_TEST_BACKENDS[*]} -" -# zvector - -REQUIRED_USE=" - lapack? ( - blas - ) - test? ( - || ( ${IUSE_TEST_BACKENDS[*]} ) - cuda-clang? ( - !openmp - ${LLVM_REQUIRED_USE} - ) - ) -" - -# Tests failing again because of compiler issues; bugs #932646, #943401 -RESTRICT="!test? ( test )" -FORTRAN_DEPEND="virtual/fortran" - -BDEPEND=" - doc? ( - app-text/doxygen[dot] - dev-texlive/texlive-bibtexextra - dev-texlive/texlive-fontsextra - dev-texlive/texlive-fontutils - dev-texlive/texlive-latex - dev-texlive/texlive-latexextra - mathjax? ( dev-libs/mathjax ) - ) - test? ( - virtual/pkgconfig - lapack? ( - ${PYTHON_DEPS} - ) - spqr? ( - cholmod? ( - blas? ( - lapack? ( - ${FORTRAN_DEPEND} - ) - ) - ) - ) - pastix? ( ${FORTRAN_DEPEND} ) - ) - blas? ( ${FORTRAN_DEPEND} ) - lapack? ( ${FORTRAN_DEPEND} ) -" - -TEST_BACKENDS=" - adolc? ( sci-libs/adolc[sparse] ) - boost? ( dev-libs/boost ) - cholmod? ( sci-libs/cholmod:=[cuda?] ) - fftw? ( sci-libs/fftw[openmp?] ) - klu? ( sci-libs/klu:= ) - metis? ( - sci-libs/metis[openmp?] - sci-libs/pastix[metis] - ) - opengl? ( - media-libs/freeglut - media-libs/glew - media-libs/libglvnd - ) - pastix? ( - sci-libs/pastix[-mpi] - || ( - sci-libs/pastix[scotch] - sci-libs/pastix[metis] - ) - ) - pocketfft? ( dev-libs/pocketfft ) - sparsehash? ( - amd64? ( dev-cpp/sparsehash ) - arm64? ( dev-cpp/sparsehash ) - ppc64? ( dev-cpp/sparsehash ) - x86? ( dev-cpp/sparsehash ) - ) - spqr? ( sci-libs/spqr:= ) - superlu? ( sci-libs/superlu:= ) - umfpack? ( sci-libs/umfpack:= ) -" - -DEPEND=" - test? ( - cuda? ( - !cuda-clang? ( - dev-util/nvidia-cuda-toolkit - ) - cuda-clang? ( - $(llvm_gen_dep ' - llvm-core/clang:${LLVM_SLOT} - llvm-runtimes/clang-runtime:${LLVM_SLOT}[llvm_targets_NVPTX,offload,openmp] - ') - ) - ) - hip? ( dev-util/hip ) - !blas? ( - virtual/blas - !lapack? ( - virtual/lapacke - ) - ) - ${TEST_BACKENDS} - ) -" - -PATCHES=( - "${FILESDIR}/${PN}-3.4.0-doc-nocompress.patch" # bug 830064 - "${FILESDIR}/${PN}-3.4.0-buildstring.patch" - - "${FILESDIR}/${PN}-5.0.1-cmake-GNUInstallDirs.patch" - "${FILESDIR}/${PN}-5.0.1-make-static-libs-optional.patch" - - "${FILESDIR}/${PN}-9999-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch" - "${FILESDIR}/${PN}-9999-product_threaded_dont_parallelize.patch" -) - -# TODO should be in cuda.eclass -cuda_get_host_compiler() { - if [[ -n "${NVCC_CCBIN}" ]]; then - echo "${NVCC_CCBIN}" - return - fi - - if [[ -n "${CUDAHOSTCXX}" ]]; then - echo "${CUDAHOSTCXX}" - return - fi - - einfo "Trying to find working CUDA host compiler" - - if ! tc-is-gcc && ! tc-is-clang; then - die "$(tc-get-compiler-type) compiler is not supported" - fi - - local compiler compiler_type compiler_version - local package package_version - local -x NVCC_CCBIN - local NVCC_CCBIN_default - - compiler_type="$(tc-get-compiler-type)" - compiler_version="$("${compiler_type}-major-version")" - - # try the default compiler first - NVCC_CCBIN="$(tc-getCXX)" - NVCC_CCBIN_default="${NVCC_CCBIN}-${compiler_version}" - - compiler="${NVCC_CCBIN/%-${compiler_version}}" - - # store the package so we can re-use it later - package="sys-devel/${compiler_type}" - package_version="${package}" - - ebegin "testing ${NVCC_CCBIN_default} (default)" - - while ! nvcc -v -ccbin "${NVCC_CCBIN}" - -x cu <<<"int main(){}" &>> "${T}/cuda_get_host_compiler.log" ; do - eend 1 - - while true; do - # prepare next version - if ! package_version="<$(best_version "${package_version}")"; then - die "could not find a supported version of ${compiler}" - fi - - NVCC_CCBIN="${compiler}-$(ver_cut 1 "${package_version/#<${package}-/}")" - - [[ "${NVCC_CCBIN}" != "${NVCC_CCBIN_default}" ]] && break - done - ebegin "testing ${NVCC_CCBIN}" - done - eend $? - - echo "${NVCC_CCBIN}" - export NVCC_CCBIN -} - -pkg_pretend() { - if [[ ${MERGE_TYPE} != binary ]] && use openmp; then - tc-check-openmp - fi -} - -pkg_setup() { - if [[ ${MERGE_TYPE} != binary ]] && use openmp; then - tc-check-openmp - fi - - if use lapack; then - python-any-r1_pkg_setup - fi - - if { use test && { use spqr && use cholmod && use blas && use lapack; } || use pastix; } \ - || use blas \ - || use lapack \ - ; then - fortran-2_pkg_setup - fi - - if use test && use cuda && use cuda-clang; then - llvm-r2_pkg_setup - fi -} - -src_unpack() { - if [[ ${PV} = *9999* ]] ; then - git-r3_src_unpack - else - unpack "${P}.tar.bz2" - fi - - if use test && use lapack; then - pushd "${S}/lapack" > /dev/null || die - unpack "${PN}-lapack_addons-${LAPACK_ADDONS_PV}.tgz" - popd > /dev/null || die - fi -} - -src_prepare() { - # run patches here as we patch in test/ - cmake_src_prepare - - if use test && use lapack; then - pushd "${S}" > /dev/null || die - eapply "${FILESDIR}/${PN}-5.0.1-fix-lapack_testing.py.patch" - popd > /dev/null || die - fi -} - -src_configure() { - if use lapack; then - # bug 878987 - # multiple definition of `cgesdd_' - filter-lto - fi - - local mycmakeargs=( - -DCMAKE_CXX_STANDARD="20" - -DCMAKE_POSITION_INDEPENDENT_CODE="yes" - - -DEIGEN_BUILD_TESTING="$(usex test)" # Enable creation of Eigen tests. - - -DEIGEN_BUILD_BLAS="$(usex blas)" # Toggles the building of the Eigen Blas library - -DEIGEN_BUILD_LAPACK="$(usex blas "$(usex lapack)")" # Toggles the building of the included Eigen LAPACK library - - -DEIGEN_BUILD_DOC="$(usex doc)" # Enable creation of Eigen documentation - -DEIGEN_BUILD_PKGCONFIG="yes" # Build pkg-config .pc file for Eigen - ) - - append-cxxflags "-DEIGEN_USE_OPENBLAS_BFLOAT16=0" - - if use blas; then - mycmakeargs+=( - -DBUILD_SHARED_LIBS="yes" - -DEIGEN_BUILD_SHARED_LIBS="yes" - -DEIGEN_BUILD_STATIC_LIBS="yes" - -DEIGEN_INSTALL_STATIC_LIBS="yes" - ) - - if use lapack; then - mycmakeargs+=( - -DCMAKE_POLICY_DEFAULT_CMP0148="OLD" # FindPythonInterp - -DEIGEN_ENABLE_LAPACK_TESTS="$(usex test)" - ) - fi - fi - - if use doc || use test; then - mycmakeargs+=( - # needs Qt4 - -DEIGEN_TEST_NOQT="yes" # Disable Qt support in unit tests - ) - fi - - if use doc; then - mycmakeargs+=( - -DEIGEN_DOC_USE_MATHJAX="$(usex mathjax)" # Use MathJax for rendering math in HTML docs - -DEIGEN_INTERNAL_DOCUMENTATION=no # Build internal documentation - ) - fi - - if use test; then - mycmakeargs+=( - -DEIGEN_LEAVE_TEST_IN_ALL_TARGET=yes # Leaves tests in the all target, needed by ctest for automatic building - - # the OpenGL testsuite is extremely brittle, bug #712808 - -DEIGEN_TEST_OPENGL="$(usex opengl)" # Enable OpenGL support in unit tests - -DEIGEN_TEST_OPENMP="$(usex openmp)" # Enable/Disable OpenMP in tests/examples - - -DEIGEN_TEST_EXTERNAL_BLAS="$(usex !blas)" # Use external BLAS library for testsuite - - -DEIGEN_TEST_BUILD_DOCUMENTATION="no" # $(usex doc)" # Test building the doxygen documentation - - -DEIGEN_DEBUG_ASSERTS="$(usex debug)" # Enable advanced debugging of assertions - -DEIGEN_SPLIT_LARGE_TESTS="yes" # Split large tests into smaller executables - - -DEIGEN_TEST_CUDA="$(usex cuda)" # Enable CUDA support in unit tests - -DEIGEN_TEST_CUDA_CLANG="$(usex cuda "$(usex cuda-clang)")" # Use clang instead of nvcc to compile the CUDA tests - - -DEIGEN_TEST_HIP="$(usex hip)" # Add HIP support. - - # -DEIGEN_TEST_SYCL="$(usex sycl)" # Add Sycl support. - # -DEIGEN_SYCL_TRISYCL="no" # Use the triSYCL Sycl implementation (ComputeCPP by default). - - $(cmake_use_find_package adolc Adolc) - $(cmake_use_find_package boost Boost) - $(cmake_use_find_package cholmod CHOLMOD) - # -DDUCCFFT="$(usex ducc)" - -DDUCC_ROOT="DUCCFFT" - -DDUCCFFT="NOTFOUND" - $(cmake_use_find_package fftw FFTW ) - $(cmake_use_find_package klu KLU) - -DCMAKE_DISABLE_FIND_PACKAGE_MPREAL=yes - # $(cmake_use_find_package opengl OpenGL) # EIGEN_TEST_OPENGL - # $(cmake_use_find_package openmp OpenMP) # EIGEN_TEST_OPENMP - $(cmake_use_find_package pastix PASTIX) - # prevent pastix_nompi.h lookup it no longer exists, we enforce this via deps - -DPASTIX_pastix_nompi.h_INCLUDE_DIRS="FOUND" - - -DPOCKETFFT="$(usex pocketfft)" - $(cmake_use_find_package sparsehash GoogleHash) - $(cmake_use_find_package spqr SPQR) - $(cmake_use_find_package superlu SuperLU) - $(cmake_use_find_package umfpack UMFPACK) - ) - - if use arm; then - mycmakeargs+=( - -DEIGEN_TEST_NEON="$(usex cpu_flags_arm_neon)" - ) - fi - - if use arm64; then - mycmakeargs+=( - -DEIGEN_TEST_NEON64="$(usex cpu_flags_arm_neon)" - ) - fi - - if use amd64 || use x86; then - mycmakeargs+=( - # -DEIGEN_TEST_32BIT=no # Force generating 32bit code. - # -DEIGEN_TEST_X87=no # Force using X87 instructions. Implies no vectorization. - -DEIGEN_TEST_SSE2="$(usex cpu_flags_x86_sse2)" - -DEIGEN_TEST_SSE3="$(usex cpu_flags_x86_sse3)" - -DEIGEN_TEST_SSSE3="$(usex cpu_flags_x86_ssse3)" - -DEIGEN_TEST_FMA="$(usex cpu_flags_x86_fma3)" - -DEIGEN_TEST_SSE4_1="$(usex cpu_flags_x86_sse4_1)" - -DEIGEN_TEST_SSE4_2="$(usex cpu_flags_x86_sse4_2)" - -DEIGEN_TEST_AVX="$(usex cpu_flags_x86_avx)" - -DEIGEN_TEST_F16C="$(usex cpu_flags_x86_f16c)" - -DEIGEN_TEST_AVX2="$(usex cpu_flags_x86_avx2)" - -DEIGEN_TEST_AVX512="$(usex cpu_flags_x86_avx512f)" - -DEIGEN_TEST_AVX512DQ="$(usex cpu_flags_x86_avx512dq)" - ) - fi - - if use mips; then - mycmakeargs+=( - # -DEIGEN_TEST_MSA=no # Enable/Disable MSA in tests/examples - ) - fi - - if use ppc || use ppc64; then - mycmakeargs+=( - -DEIGEN_TEST_ALTIVEC="$(usex cpu_flags_ppc_altivec)" - -DEIGEN_TEST_VSX="$(usex cpu_flags_ppc_vsx)" - ) - fi - - if use s390; then - mycmakeargs+=( - # -DEIGEN_TEST_Z13=no # Enable/Disable S390X(zEC13) ZVECTOR in tests/examples - # -DEIGEN_TEST_Z14=no # Enable/Disable S390X(zEC14) ZVECTOR in tests/examples - ) - fi - - if use cuda; then - cuda_add_sandbox -w - - if use cuda-clang; then - local llvm_prefix - llvm_prefix="$(get_llvm_prefix -b)" - - # NVCCFLAGS gets injected into CMAKE_CXX_FLAGS, which means we need to use clang as gcc will fail with - # error: unrecognized command-line option - if ! tc-is-clang; then - export CC="${CHOST}-clang-${LLVM_SLOT}" - export CXX="${CHOST}-clang++-${LLVM_SLOT}" - fi - - NVCCFLAGS="${NVCCFLAGS:+${NVCCFLAGS} }--libomptarget-nvptx-bc-path=${llvm_prefix}/$(get_libdir)/nvptx64-nvidia-cuda/libomptarget-nvptx.bc" - - mycmakeargs+=( - -DCUDA_HOST_COMPILER="${CHOST}-clang++-${LLVM_SLOT}" - ) - else - cuda_get_host_compiler - - mycmakeargs+=( - -DCUDA_HOST_COMPILER="${CUDAHOSTCXX}" - ) - if [[ -v CUDACXX ]]; then - mycmakeargs+=( - -DCUDA_NVCC_EXECUTABLE="${CUDACXX}" - -DCMAKE_POLICY_DEFAULT_CMP0146="OLD" # FindCUDA - ) - fi - fi - - if [[ "${CUDA_VERBOSE}" == true ]]; then - mycmakeargs+=( - -DCUDA_VERBOSE_BUILD="yes" - ) - NVCCFLAGS+=" -v" - fi - - if [[ -v CUDAARCHS ]]; then - mycmakeargs+=( - # TODO this needs to be lowest first for eigen - -DEIGEN_CUDA_COMPUTE_ARCH="${CUDAARCHS}" - ) - fi - - # CUDAFLAGS is used by cmake - # NVCCFLAGS is used by cuda.eclass - mycmakeargs+=( - -DEIGEN_CUDA_CXX_FLAGS="${NVCCFLAGS}" - - -DCUDA_USE_STATIC_CUDA_RUNTIME="no" - ) - fi - - if use opengl; then - mycmakeargs+=( - -DOpenGL_GL_PREFERENCE="GLVND" - ) - fi - fi - - cmake_src_configure -} - -src_compile() { - local targets=() - - if use blas; then - targets+=( blas ) - if use lapack; then - targets+=( lapack ) - fi - fi - - if use test; then - targets+=( buildtests ) - - if use cuda || use hip; then - targets+=( buildtests_gpu ) - fi - - # tests generate random data, which fails for some seeds - # we solve this via test reruns now - # export EIGEN_SEED=712808 - fi - - # we add doc last to capture results for buildtests - if use doc; then - targets+=( doc ) - fi - - if [[ -n "${targets[*]}" ]]; then - cmake_src_compile "${targets[@]}" - fi -} - -src_test() { - local CMAKE_SKIP_TESTS=( - "^ref_8$" - ) - - if use cholmod && use blas && use lapack; then - CMAKE_SKIP_TESTS+=( - "^cholmod_support_21$" - "^cholmod_support_22$" - ) - fi - - if use cuda; then - cuda_add_sandbox -w - fi - - if use klu && use blas; then - CMAKE_SKIP_TESTS+=( - "^klu_support_1$" - "^klu_support_2$" - ) - fi - - if use lapack; then - CMAKE_SKIP_TESTS+=( - "^LAPACK-xlintsts_stest_in$" - "^LAPACK-xeigtsts_sep_in$" - "^LAPACK-xeigtsts_svd_in$" - "^LAPACK-xlintstd_dtest_in$" - "^LAPACK-xeigtstd_sep_in$" - "^LAPACK-xeigtstd_svd_in$" - "^LAPACK-xlintstc_ctest_in$" - "^LAPACK-xeigtstc_svd_in$" - ) - fi - - local myctestargs=( - -j1 # otherwise breaks due to cmake reruns - --repeat until-pass:50 - ) - - if use opengl; then - virtx \ - cmake_src_test - else - cmake_src_test - fi -} - -src_install() { - local DOCS=() - cmake_src_install - - if use doc; then - pushd "${BUILD_DIR}/doc" > /dev/null || die - dodoc -r html - popd > /dev/null || die - fi -} diff --git a/dev-cpp/eigen/files/eigen-3.3.9-max-macro.patch b/dev-cpp/eigen/files/eigen-3.3.9-max-macro.patch deleted file mode 100644 index c5fdc2ed582c..000000000000 --- a/dev-cpp/eigen/files/eigen-3.3.9-max-macro.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- a/unsupported/test/forward_adolc.cpp -+++ b/unsupported/test/forward_adolc.cpp -@@ -7,12 +7,13 @@ - // Public License v. 2.0. If a copy of the MPL was not distributed - // with this file, You can obtain one at http://mozilla.org/MPL/2.0/. - --#include "main.h" - #include <Eigen/Dense> - - #define NUMBER_DIRECTIONS 16 - #include <unsupported/Eigen/AdolcForward> - -+#include "main.h" -+ - template<typename Vector> - EIGEN_DONT_INLINE typename Vector::Scalar foo(const Vector& p) - { diff --git a/dev-cpp/eigen/files/eigen-3.4.0-buildstring.patch b/dev-cpp/eigen/files/eigen-3.4.0-buildstring.patch deleted file mode 100644 index 8e9b98fbd8bb..000000000000 --- a/dev-cpp/eigen/files/eigen-3.4.0-buildstring.patch +++ /dev/null @@ -1,25 +0,0 @@ ---- a/cmake/EigenTesting.cmake -+++ b/cmake/EigenTesting.cmake -@@ -559,14 +559,22 @@ macro(ei_get_cxxflags VAR) - set(${VAR} VSX) - elseif(EIGEN_TEST_ALTIVEC) - set(${VAR} ALVEC) -+ elseif(EIGEN_TEST_AVX512DQ) -+ set(${VAR} AVX512DQ) -+ elseif(EIGEN_TEST_AVX512) -+ set(${VAR} AVX512) -+ elseif(EIGEN_TEST_AVX2) -+ set(${VAR} AVX2) - elseif(EIGEN_TEST_FMA) - set(${VAR} FMA) -+ elseif(EIGEN_TEST_F16C) -+ set(${VAR} F16C) - elseif(EIGEN_TEST_AVX) - set(${VAR} AVX) - elseif(EIGEN_TEST_SSE4_2) - set(${VAR} SSE42) - elseif(EIGEN_TEST_SSE4_1) - set(${VAR} SSE41) - elseif(EIGEN_TEST_SSSE3) - set(${VAR} SSSE3) - elseif(EIGEN_TEST_SSE3) diff --git a/dev-cpp/eigen/files/eigen-3.4.0-c++-20.patch b/dev-cpp/eigen/files/eigen-3.4.0-c++-20.patch deleted file mode 100644 index 39eef7dc0c0f..000000000000 --- a/dev-cpp/eigen/files/eigen-3.4.0-c++-20.patch +++ /dev/null @@ -1,30 +0,0 @@ -From: Nicholas Vinson <nvinson234@gmail.com> -Date: Mon, 15 Dec 2025 20:37:04 -0500 - ---- a/Eigen/src/Eigenvalues/ComplexSchur.h -+++ b/Eigen/src/Eigenvalues/ComplexSchur.h -@@ -277,7 +277,8 @@ - using std::abs; - if ((iter == 10 || iter == 20) && iu > 1) { - // exceptional shift, taken from http://www.netlib.org/eispack/comqr.f -- return abs(numext::real(m_matT.coeff(iu,iu-1))) + abs(numext::real(m_matT.coeff(iu-1,iu-2))); -+ return ComplexSchur<MatrixType>::ComplexScalar( -+ abs(numext::real(m_matT.coeff(iu, iu - 1))) + abs(numext::real(m_matT.coeff(iu - 1, iu - 2)))); - } - - // compute the shift as one of the eigenvalues of t, the 2x2 ---- a/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h -+++ b/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h -@@ -86,8 +86,8 @@ - for (Index i = 0; i < rows; i++) - mx = (std::max)(mx, std::abs(m_f(Ashifted(i, i) + avgEival, static_cast<int>(s + r)))); - if (r != 0) - rfactorial *= RealScalar(r); -- delta = (std::max)(delta, mx / rfactorial); -+ delta = (std::max)(delta, RealScalar(mx / rfactorial)); - } - const RealScalar P_norm = P.cwiseAbs().rowwise().sum().maxCoeff(); - if (mu * delta * P_norm < NumTraits<Scalar>::epsilon() * F_norm) // series converged --- -2.52.0 - diff --git a/dev-cpp/eigen/files/eigen-3.4.0-cxxstandard.patch b/dev-cpp/eigen/files/eigen-3.4.0-cxxstandard.patch deleted file mode 100644 index 826aa78d05aa..000000000000 --- a/dev-cpp/eigen/files/eigen-3.4.0-cxxstandard.patch +++ /dev/null @@ -1,108 +0,0 @@ ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -74,19 +74,9 @@ macro(ei_add_cxx_compiler_flag FLAG) - endif() - endmacro() - --check_cxx_compiler_flag("-std=c++11" EIGEN_COMPILER_SUPPORT_CPP11) -- --if(EIGEN_TEST_CXX11) -- set(CMAKE_CXX_STANDARD 11) -- set(CMAKE_CXX_EXTENSIONS OFF) -- if(EIGEN_COMPILER_SUPPORT_CPP11) -- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") -- endif() --else() -- #set(CMAKE_CXX_STANDARD 03) -- #set(CMAKE_CXX_EXTENSIONS OFF) -- ei_add_cxx_compiler_flag("-std=c++03") --endif() -+set(CMAKE_CXX_STANDARD 14) -+set(CMAKE_CXX_STANDARD_REQUIRED TRUE) -+set(CMAKE_CXX_EXTENSIONS OFF) - - # Determine if we should build shared libraries on this platform. - get_cmake_property(EIGEN_BUILD_SHARED_LIBS TARGET_SUPPORTS_SHARED_LIBS) -@@ -157,7 +157,6 @@ if(NOT MSVC) - ei_add_cxx_compiler_flag("-Wshorten-64-to-32") - ei_add_cxx_compiler_flag("-Wlogical-op") - ei_add_cxx_compiler_flag("-Wenum-conversion") -- ei_add_cxx_compiler_flag("-Wc++11-extensions") - ei_add_cxx_compiler_flag("-Wdouble-promotion") - # ei_add_cxx_compiler_flag("-Wconversion") - ---- a/Eigen/src/Core/util/Macros.h -+++ b/Eigen/src/Core/util/Macros.h -@@ -37,7 +37,7 @@ - // Expected values are 03, 11, 14, 17, etc. - // By default, let's use an arbitrarily large C++ version. - #ifndef EIGEN_MAX_CPP_VER --#define EIGEN_MAX_CPP_VER 99 -+#define EIGEN_MAX_CPP_VER 14 - #endif - - /** Allows to disable some optimizations which might affect the accuracy of the result. ---- a/doc/examples/CMakeLists.txt -+++ b/doc/examples/CMakeLists.txt -@@ -14,7 +14,3 @@ foreach(example_src ${examples_SRCS}) - ) - add_dependencies(all_examples ${example}) - endforeach() -- --if(EIGEN_COMPILER_SUPPORT_CPP11) --ei_add_target_property(nullary_indexing COMPILE_FLAGS "-std=c++11") --endif() -\ No newline at end of file -diff --git a/doc/snippets/CMakeLists.txt b/doc/snippets/CMakeLists.txt -index 65f195a..4cb18c8 100644 ---- a/doc/snippets/CMakeLists.txt -+++ b/doc/snippets/CMakeLists.txt -@@ -15,9 +15,6 @@ foreach(snippet_src ${snippets_SRCS}) - if(EIGEN_STANDARD_LIBRARIES_TO_LINK_TO) - target_link_libraries(${compile_snippet_target} ${EIGEN_STANDARD_LIBRARIES_TO_LINK_TO}) - endif() -- if(${snippet_src} MATCHES "cxx11") -- set_target_properties(${compile_snippet_target} PROPERTIES COMPILE_FLAGS "-std=c++11") -- endif() - if(${snippet_src} MATCHES "deprecated") - set_target_properties(${compile_snippet_target} PROPERTIES COMPILE_FLAGS "-DEIGEN_NO_DEPRECATED_WARNING") - endif() ---- a/test/CMakeLists.txt -+++ b/test/CMakeLists.txt -@@ -399,7 +399,6 @@ if(CUDA_FOUND) - set(CUDA_NVCC_FLAGS "-ccbin ${CMAKE_C_COMPILER}" CACHE STRING "nvcc flags" FORCE) - endif() - if(EIGEN_TEST_CUDA_CLANG) -- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") - string(APPEND CMAKE_CXX_FLAGS " --cuda-path=${CUDA_TOOLKIT_ROOT_DIR}") - foreach(GPU IN LISTS EIGEN_CUDA_COMPUTE_ARCH) - string(APPEND CMAKE_CXX_FLAGS " --cuda-gpu-arch=sm_${GPU}") ---- a/unsupported/test/CMakeLists.txt -+++ b/unsupported/test/CMakeLists.txt -@@ -59,7 +59,7 @@ find_package(MPREAL) - if(MPREAL_FOUND AND EIGEN_COMPILER_SUPPORT_CPP11) - ei_add_property(EIGEN_TESTED_BACKENDS "MPFR C++, ") - include_directories(${MPREAL_INCLUDES}) -- ei_add_test(mpreal_support "-std=c++11" "${MPREAL_LIBRARIES}" ) -+ ei_add_test(mpreal_support "-std=c++14" "${MPREAL_LIBRARIES}" ) - else() - ei_add_property(EIGEN_MISSING_BACKENDS "MPFR C++, ") - endif() -@@ -308,7 +308,6 @@ if(CUDA_FOUND AND EIGEN_TEST_CUDA) - set(CUDA_NVCC_FLAGS "-ccbin ${CMAKE_C_COMPILER}" CACHE STRING "nvcc flags" FORCE) - endif() - if(EIGEN_TEST_CUDA_CLANG) -- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") - string(APPEND CMAKE_CXX_FLAGS " --cuda-path=${CUDA_TOOLKIT_ROOT_DIR}") - foreach(ARCH IN LISTS EIGEN_CUDA_COMPUTE_ARCH) - string(APPEND CMAKE_CXX_FLAGS " --cuda-gpu-arch=sm_${ARCH}") ---- a/doc/special_examples/CMakeLists.txt -+++ b/doc/special_examples/CMakeLists.txt -@@ -23,7 +23,6 @@ if(EIGEN_COMPILER_SUPPORT_CPP11) - add_executable(random_cpp11 random_cpp11.cpp) - target_link_libraries(random_cpp11 ${EIGEN_STANDARD_LIBRARIES_TO_LINK_TO}) - add_dependencies(all_examples random_cpp11) -- ei_add_target_property(random_cpp11 COMPILE_FLAGS "-std=c++11") - - add_custom_command( - TARGET random_cpp11 diff --git a/dev-cpp/eigen/files/eigen-3.4.0-doc-nocompress.patch b/dev-cpp/eigen/files/eigen-3.4.0-doc-nocompress.patch deleted file mode 100644 index b9c252ebb09c..000000000000 --- a/dev-cpp/eigen/files/eigen-3.4.0-doc-nocompress.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- a/doc/CMakeLists.txt -+++ b/doc/CMakeLists.txt -@@ -112,11 +112,7 @@ - COMMAND doxygen - COMMAND doxygen Doxyfile-unsupported - COMMAND ${CMAKE_COMMAND} -E copy ${Eigen_BINARY_DIR}/doc/html/group__TopicUnalignedArrayAssert.html ${Eigen_BINARY_DIR}/doc/html/TopicUnalignedArrayAssert.html -- COMMAND ${CMAKE_COMMAND} -E rename html eigen-doc -- COMMAND ${CMAKE_COMMAND} -E remove eigen-doc/eigen-doc.tgz eigen-doc/unsupported/_formulas.log eigen-doc/_formulas.log -- COMMAND ${CMAKE_COMMAND} -E tar cfz eigen-doc.tgz eigen-doc -- COMMAND ${CMAKE_COMMAND} -E rename eigen-doc.tgz eigen-doc/eigen-doc.tgz -- COMMAND ${CMAKE_COMMAND} -E rename eigen-doc html -+ COMMAND ${CMAKE_COMMAND} -E remove html/unsupported/_formulas.log html/_formulas.log - WORKING_DIRECTORY ${Eigen_BINARY_DIR}/doc) - - add_dependencies(doc doc-eigen-prerequisites doc-unsupported-prerequisites) diff --git a/dev-cpp/eigen/files/eigen-3.4.0-noansi.patch b/dev-cpp/eigen/files/eigen-3.4.0-noansi.patch deleted file mode 100644 index c0ce44445c1d..000000000000 --- a/dev-cpp/eigen/files/eigen-3.4.0-noansi.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -184,6 +184,7 @@ if(NOT MSVC) - ei_add_cxx_compiler_flag("-wd2304") # disable ICC's "warning #2304: non-explicit constructor with single argument may cause implicit type conversion" produced by -Wnon-virtual-dtor - - -+ if(NOT EIGEN_TEST_CXX11) - # The -ansi flag must be added last, otherwise it is also used as a linker flag by check_cxx_compiler_flag making it fails - # Moreover we should not set both -strict-ansi and -ansi - check_cxx_compiler_flag("-strict-ansi" COMPILER_SUPPORT_STRICTANSI) -@@ -194,6 +195,7 @@ if(NOT MSVC) - else() - ei_add_cxx_compiler_flag("-ansi") - endif() -+ endif() - - if(ANDROID_NDK) - ei_add_cxx_compiler_flag("-pie") diff --git a/dev-cpp/eigen/files/eigen-3.4.0-ppc-no-vsx.patch b/dev-cpp/eigen/files/eigen-3.4.0-ppc-no-vsx.patch deleted file mode 100644 index 7cfeaaf129ff..000000000000 --- a/dev-cpp/eigen/files/eigen-3.4.0-ppc-no-vsx.patch +++ /dev/null @@ -1,195 +0,0 @@ -https://gitlab.com/libeigen/eigen/-/merge_requests/1028 -https://bugs.gentoo.org/936107 ---- a/Eigen/Core -+++ b/Eigen/Core -@@ -346,7 +346,7 @@ - #include "src/Core/CoreIterators.h" - #include "src/Core/ConditionEstimator.h" - --#if defined(EIGEN_VECTORIZE_ALTIVEC) || defined(EIGEN_VECTORIZE_VSX) -+#if defined(EIGEN_VECTORIZE_VSX) - #include "src/Core/arch/AltiVec/MatrixProduct.h" - #elif defined EIGEN_VECTORIZE_NEON - #include "src/Core/arch/NEON/GeneralBlockPanelKernel.h" ---- a/Eigen/src/Core/arch/AltiVec/Complex.h -+++ b/Eigen/src/Core/arch/AltiVec/Complex.h -@@ -100,6 +100,7 @@ - HasAbs2 = 0, - HasMin = 0, - HasMax = 0, -+ HasSqrt = 1, - #ifdef __VSX__ - HasBlend = 1, - #endif -@@ -320,6 +321,7 @@ - HasAbs2 = 0, - HasMin = 0, - HasMax = 0, -+ HasSqrt = 1, - HasSetLinear = 0 - }; - }; ---- a/Eigen/src/Core/arch/AltiVec/MathFunctions.h -+++ b/Eigen/src/Core/arch/AltiVec/MathFunctions.h -@@ -40,16 +40,14 @@ - return pcos_float(_x); - } - -+#ifdef __VSX__ - #ifndef EIGEN_COMP_CLANG - template<> EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS EIGEN_UNUSED - Packet4f prsqrt<Packet4f>(const Packet4f& x) - { - return vec_rsqrt(x); - } --#endif - --#ifdef __VSX__ --#ifndef EIGEN_COMP_CLANG - template<> EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS EIGEN_UNUSED - Packet2d prsqrt<Packet2d>(const Packet2d& x) - { -@@ -74,6 +72,26 @@ - { - return pexp_double(_x); - } -+ -+template<> EIGEN_STRONG_INLINE Packet8bf psqrt<Packet8bf> (const Packet8bf& a){ -+ BF16_TO_F32_UNARY_OP_WRAPPER(psqrt<Packet4f>, a); -+} -+ -+#ifndef EIGEN_COMP_CLANG -+template<> EIGEN_STRONG_INLINE Packet8bf prsqrt<Packet8bf> (const Packet8bf& a){ -+ BF16_TO_F32_UNARY_OP_WRAPPER(prsqrt<Packet4f>, a); -+} -+#endif -+#else -+template<> EIGEN_DEFINE_FUNCTION_ALLOWING_MULTIPLE_DEFINITIONS -+Packet4f psqrt<Packet4f>(const Packet4f& x) -+{ -+ Packet4f a; -+ for (Index i = 0; i < packet_traits<float>::size; i++) { -+ a[i] = numext::sqrt(x[i]); -+ } -+ return a; -+} - #endif - - // Hyperbolic Tangent function. ---- a/Eigen/src/Core/arch/AltiVec/PacketMath.h -+++ b/Eigen/src/Core/arch/AltiVec/PacketMath.h -@@ -175,16 +175,19 @@ - #else - HasRsqrt = 0, - #endif -+ HasTanh = EIGEN_FAST_MATH, -+ HasErf = EIGEN_FAST_MATH, -+ HasRint = 1, - #else - HasSqrt = 0, - HasRsqrt = 0, -- HasTanh = EIGEN_FAST_MATH, -- HasErf = EIGEN_FAST_MATH, -+ HasTanh = 0, -+ HasErf = 0, -+ HasRint = 0, - #endif - HasRound = 1, - HasFloor = 1, - HasCeil = 1, -- HasRint = 1, - HasNegate = 1, - HasBlend = 1 - }; -@@ -217,16 +220,17 @@ - #else - HasRsqrt = 0, - #endif -+ HasRint = 1, - #else - HasSqrt = 0, - HasRsqrt = 0, -- HasTanh = EIGEN_FAST_MATH, -- HasErf = EIGEN_FAST_MATH, -+ HasRint = 0, - #endif -+ HasTanh = 0, -+ HasErf = 0, - HasRound = 1, - HasFloor = 1, - HasCeil = 1, -- HasRint = 1, - HasNegate = 1, - HasBlend = 1 - }; -@@ -872,19 +876,29 @@ - return vec_nor(c,c); - } - -+#ifdef __VSX__ - template<> EIGEN_STRONG_INLINE Packet4i pcmp_le(const Packet4i& a, const Packet4i& b) { return reinterpret_cast<Packet4i>(vec_cmple(a,b)); } -+#endif - template<> EIGEN_STRONG_INLINE Packet4i pcmp_lt(const Packet4i& a, const Packet4i& b) { return reinterpret_cast<Packet4i>(vec_cmplt(a,b)); } - template<> EIGEN_STRONG_INLINE Packet4i pcmp_eq(const Packet4i& a, const Packet4i& b) { return reinterpret_cast<Packet4i>(vec_cmpeq(a,b)); } -+#ifdef __VSX__ - template<> EIGEN_STRONG_INLINE Packet8s pcmp_le(const Packet8s& a, const Packet8s& b) { return reinterpret_cast<Packet8s>(vec_cmple(a,b)); } -+#endif - template<> EIGEN_STRONG_INLINE Packet8s pcmp_lt(const Packet8s& a, const Packet8s& b) { return reinterpret_cast<Packet8s>(vec_cmplt(a,b)); } - template<> EIGEN_STRONG_INLINE Packet8s pcmp_eq(const Packet8s& a, const Packet8s& b) { return reinterpret_cast<Packet8s>(vec_cmpeq(a,b)); } -+#ifdef __VSX__ - template<> EIGEN_STRONG_INLINE Packet8us pcmp_le(const Packet8us& a, const Packet8us& b) { return reinterpret_cast<Packet8us>(vec_cmple(a,b)); } -+#endif - template<> EIGEN_STRONG_INLINE Packet8us pcmp_lt(const Packet8us& a, const Packet8us& b) { return reinterpret_cast<Packet8us>(vec_cmplt(a,b)); } - template<> EIGEN_STRONG_INLINE Packet8us pcmp_eq(const Packet8us& a, const Packet8us& b) { return reinterpret_cast<Packet8us>(vec_cmpeq(a,b)); } -+#ifdef __VSX__ - template<> EIGEN_STRONG_INLINE Packet16c pcmp_le(const Packet16c& a, const Packet16c& b) { return reinterpret_cast<Packet16c>(vec_cmple(a,b)); } -+#endif - template<> EIGEN_STRONG_INLINE Packet16c pcmp_lt(const Packet16c& a, const Packet16c& b) { return reinterpret_cast<Packet16c>(vec_cmplt(a,b)); } - template<> EIGEN_STRONG_INLINE Packet16c pcmp_eq(const Packet16c& a, const Packet16c& b) { return reinterpret_cast<Packet16c>(vec_cmpeq(a,b)); } -+#ifdef __VSX__ - template<> EIGEN_STRONG_INLINE Packet16uc pcmp_le(const Packet16uc& a, const Packet16uc& b) { return reinterpret_cast<Packet16uc>(vec_cmple(a,b)); } -+#endif - template<> EIGEN_STRONG_INLINE Packet16uc pcmp_lt(const Packet16uc& a, const Packet16uc& b) { return reinterpret_cast<Packet16uc>(vec_cmplt(a,b)); } - template<> EIGEN_STRONG_INLINE Packet16uc pcmp_eq(const Packet16uc& a, const Packet16uc& b) { return reinterpret_cast<Packet16uc>(vec_cmpeq(a,b)); } - -@@ -937,6 +951,7 @@ - } - template<> EIGEN_STRONG_INLINE Packet4f pceil<Packet4f>(const Packet4f& a) { return vec_ceil(a); } - template<> EIGEN_STRONG_INLINE Packet4f pfloor<Packet4f>(const Packet4f& a) { return vec_floor(a); } -+#ifdef __VSX__ - template<> EIGEN_STRONG_INLINE Packet4f print<Packet4f>(const Packet4f& a) - { - Packet4f res; -@@ -947,6 +962,7 @@ - - return res; - } -+#endif - - template<typename Packet> EIGEN_STRONG_INLINE Packet ploadu_common(const __UNPACK_TYPE__(Packet)* from) - { -@@ -1341,12 +1357,6 @@ - BF16_TO_F32_BINARY_OP_WRAPPER(psub<Packet4f>, a, b); - } - --template<> EIGEN_STRONG_INLINE Packet8bf psqrt<Packet8bf> (const Packet8bf& a){ -- BF16_TO_F32_UNARY_OP_WRAPPER(vec_sqrt, a); --} --template<> EIGEN_STRONG_INLINE Packet8bf prsqrt<Packet8bf> (const Packet8bf& a){ -- BF16_TO_F32_UNARY_OP_WRAPPER(prsqrt<Packet4f>, a); --} - template<> EIGEN_STRONG_INLINE Packet8bf pexp<Packet8bf> (const Packet8bf& a){ - BF16_TO_F32_UNARY_OP_WRAPPER(pexp_float, a); - } -@@ -1390,9 +1400,11 @@ - template<> EIGEN_STRONG_INLINE Packet8bf pround<Packet8bf> (const Packet8bf& a){ - BF16_TO_F32_UNARY_OP_WRAPPER(pround<Packet4f>, a); - } -+#ifdef __VSX__ - template<> EIGEN_STRONG_INLINE Packet8bf print<Packet8bf> (const Packet8bf& a){ - BF16_TO_F32_UNARY_OP_WRAPPER(print<Packet4f>, a); - } -+#endif - template<> EIGEN_STRONG_INLINE Packet8bf pmadd(const Packet8bf& a, const Packet8bf& b, const Packet8bf& c) { - Packet4f a_even = Bf16ToF32Even(a); - Packet4f a_odd = Bf16ToF32Odd(a); diff --git a/dev-cpp/eigen/files/eigen-3.4.1-bug1213-link-with-Eigen3-Eigen.patch b/dev-cpp/eigen/files/eigen-3.4.1-bug1213-link-with-Eigen3-Eigen.patch deleted file mode 100644 index 9ced714f0c51..000000000000 --- a/dev-cpp/eigen/files/eigen-3.4.1-bug1213-link-with-Eigen3-Eigen.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 470c47b3b8309cb71cf48146e56744bd2630827a Mon Sep 17 00:00:00 2001 -From: Paul Zander <negril.nx+gentoo@gmail.com> -Date: Sat, 28 Feb 2026 23:16:55 +0100 -Subject: [PATCH] bug1213: link with Eigen3::Eigen - -Doesn't find Eigen/Core otherwise. ---- - test/CMakeLists.txt | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt -index f503efc..360f989 100644 ---- a/test/CMakeLists.txt -+++ b/test/CMakeLists.txt -@@ -299,6 +299,7 @@ if(EIGEN_TEST_CXX11) - endif() - - add_executable(bug1213 bug1213.cpp bug1213_main.cpp) -+target_link_libraries(bug1213 Eigen3::Eigen) - - check_cxx_compiler_flag("-ffast-math" COMPILER_SUPPORT_FASTMATH) - if(COMPILER_SUPPORT_FASTMATH) --- -2.53.0 - diff --git a/dev-cpp/eigen/files/eigen-3.4.1-cxxstandard-17.patch b/dev-cpp/eigen/files/eigen-3.4.1-cxxstandard-17.patch deleted file mode 100644 index 720898bdd11c..000000000000 --- a/dev-cpp/eigen/files/eigen-3.4.1-cxxstandard-17.patch +++ /dev/null @@ -1,72 +0,0 @@ -From cd8bb671321b5163c21f84689f929b671ed68750 Mon Sep 17 00:00:00 2001 -From: Paul Zander <negril.nx+gentoo@gmail.com> -Date: Mon, 20 Oct 2025 21:26:47 +0200 -Subject: [PATCH] cxx standard 17 - -Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com> - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 80d36b991..8106bb264 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -330,11 +330,8 @@ if (EIGEN_BUILD_TESTING) - - option(EIGEN_TEST_CXX11 "Enable testing with C++11 and C++11 features (e.g. Tensor module)." ${EIGEN_COMPILER_SUPPORT_CPP11}) - if(EIGEN_TEST_CXX11) -- set(CMAKE_CXX_STANDARD 11) -+ set(CMAKE_CXX_STANDARD 17) - set(CMAKE_CXX_EXTENSIONS OFF) -- if(EIGEN_COMPILER_SUPPORT_CPP11) -- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") -- endif() - else() - ei_add_cxx_compiler_flag("-std=c++03") - endif() -@@ -373,7 +370,7 @@ if (EIGEN_BUILD_TESTING) - ei_add_cxx_compiler_flag("-Wshorten-64-to-32") - ei_add_cxx_compiler_flag("-Wlogical-op") - ei_add_cxx_compiler_flag("-Wenum-conversion") -- ei_add_cxx_compiler_flag("-Wc++11-extensions") -+ # ei_add_cxx_compiler_flag("-Wc++11-extensions") - ei_add_cxx_compiler_flag("-Wdouble-promotion") - # ei_add_cxx_compiler_flag("-Wconversion") - ei_add_cxx_compiler_flag("-Wshadow") -diff --git a/doc/special_examples/CMakeLists.txt b/doc/special_examples/CMakeLists.txt -index a0267a512..d7fc80976 100644 ---- a/doc/special_examples/CMakeLists.txt -+++ b/doc/special_examples/CMakeLists.txt -@@ -23,7 +23,6 @@ if(EIGEN_COMPILER_SUPPORT_CPP11) - add_executable(random_cpp11 random_cpp11.cpp) - target_link_libraries(random_cpp11 ${EIGEN_STANDARD_LIBRARIES_TO_LINK_TO} Eigen3::Eigen) - add_dependencies(all_examples random_cpp11) -- target_compile_options(random_cpp11 PRIVATE "-std=c++11") - - add_custom_command( - TARGET random_cpp11 -diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt -index 7ce260e0e..f503efc5d 100644 ---- a/test/CMakeLists.txt -+++ b/test/CMakeLists.txt -@@ -386,7 +386,6 @@ if(CUDA_FOUND AND EIGEN_TEST_CUDA) - string(REPLACE "-fno-check-new" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") - - if(EIGEN_TEST_CUDA_CLANG) -- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") - string(APPEND CMAKE_CXX_FLAGS " --cuda-path=${CUDA_TOOLKIT_ROOT_DIR}") - foreach(GPU IN LISTS EIGEN_CUDA_COMPUTE_ARCH) - string(APPEND CMAKE_CXX_FLAGS " --cuda-gpu-arch=sm_${GPU}") -diff --git a/unsupported/test/CMakeLists.txt b/unsupported/test/CMakeLists.txt -index 1d5e9b174..cf394de86 100644 ---- a/unsupported/test/CMakeLists.txt -+++ b/unsupported/test/CMakeLists.txt -@@ -227,7 +227,6 @@ if(CUDA_FOUND AND EIGEN_TEST_CUDA) - string(REPLACE "-ansi" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") - - if(EIGEN_TEST_CUDA_CLANG) -- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") - string(APPEND CMAKE_CXX_FLAGS " --cuda-path=${CUDA_TOOLKIT_ROOT_DIR}") - foreach(ARCH IN LISTS EIGEN_CUDA_COMPUTE_ARCH) - string(APPEND CMAKE_CXX_FLAGS " --cuda-gpu-arch=sm_${ARCH}") --- -2.51.1 - diff --git a/dev-cpp/eigen/files/eigen-5.0.0-doxygen-1.14.patch b/dev-cpp/eigen/files/eigen-5.0.0-doxygen-1.14.patch deleted file mode 100644 index 89e049368022..000000000000 --- a/dev-cpp/eigen/files/eigen-5.0.0-doxygen-1.14.patch +++ /dev/null @@ -1,136 +0,0 @@ -From cf458c66ee01802d5023fcab78412583b5c73574 Mon Sep 17 00:00:00 2001 -From: Guilhem Saurel <guilhem.saurel@laas.fr> -Date: Tue, 16 Dec 2025 09:40:05 +0100 -Subject: [PATCH 1/4] doc: add and use \anchor Eigen_placeholders_lastN - -fix for Doxygen >= 1.14: -``` -doc/Manual.dox:177: error: unable to resolve link to 'Eigen::placeholders::lastN(SizeType)' for \link command -doc/Manual.dox:178: error: unable to resolve link to 'Eigen::placeholders::lastN(SizeType,IncrType)' for \link command -``` ---- - Eigen/src/Core/ArithmeticSequence.h | 2 +- - doc/TutorialSlicingIndexing.dox | 3 +-- - 2 files changed, 2 insertions(+), 3 deletions(-) - -diff --git a/Eigen/src/Core/ArithmeticSequence.h b/Eigen/src/Core/ArithmeticSequence.h -index ae6373dda..41617713f 100644 ---- a/Eigen/src/Core/ArithmeticSequence.h -+++ b/Eigen/src/Core/ArithmeticSequence.h -@@ -182,7 +182,7 @@ namespace placeholders { - * \returns a symbolic ArithmeticSequence representing the last \a size elements with increment \a incr. - * - * It is a shortcut for: \code seqN(last-(size-fix<1>)*incr, size, incr) \endcode -- * -+ * \anchor Eigen_placeholders_lastN - * \sa lastN(SizeType), seqN(FirstType,SizeType), seq(FirstType,LastType,IncrType) */ - template <typename SizeType, typename IncrType> - auto lastN(SizeType size, IncrType incr) -diff --git a/doc/TutorialSlicingIndexing.dox b/doc/TutorialSlicingIndexing.dox -index 6ebaa2d6d..a1b00dfc4 100644 ---- a/doc/TutorialSlicingIndexing.dox -+++ b/doc/TutorialSlicingIndexing.dox -@@ -114,8 +114,7 @@ Here are some examples for a 2D array/matrix \c A and a 1D array/vector \c v. - - As seen in the last example, referencing the <i> last n </i> elements (or rows/columns) is a bit cumbersome to write. - This becomes even more tricky and error prone with a non-default increment. --Here comes \link Eigen::placeholders::lastN(SizeType) Eigen::placeholders::lastN(size) \endlink, and --\link Eigen::placeholders::lastN(SizeType,IncrType) Eigen::placeholders::lastN(size,incr) \endlink: -+Here comes \ref Eigen_placeholders_lastN : - - <table class="manual"> - <tr> --- -GitLab - - -From 6be98c166c86a2360177bad9cdccc55ac1ceed7b Mon Sep 17 00:00:00 2001 -From: Guilhem Saurel <guilhem.saurel@laas.fr> -Date: Tue, 16 Dec 2025 10:13:56 +0100 -Subject: [PATCH 2/4] doc: fix html - -fix for Doxygen >= 1.14: -``` -doc/Manual.dox:656: error: expected <tr> or </table> tag but found token TK_HTMLTAG instead! -``` ---- - doc/QuickReference.dox | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/doc/QuickReference.dox b/doc/QuickReference.dox -index 1fb000fdc..4aece902c 100644 ---- a/doc/QuickReference.dox -+++ b/doc/QuickReference.dox -@@ -551,7 +551,6 @@ Read-write access to sub-vectors: - <tr> - <th>Default versions</th> - <th>Optimized versions when the size \n is known at compile time</th></tr> --<th></th> - - <tr><td>\code vec1.head(n)\endcode</td><td>\code vec1.head<n>()\endcode</td><td>the first \c n coeffs </td></tr> - <tr><td>\code vec1.tail(n)\endcode</td><td>\code vec1.tail<n>()\endcode</td><td>the last \c n coeffs </td></tr> --- -GitLab - - -From ac5d00609f14b7402f1fe8274e4d5db3c61f091e Mon Sep 17 00:00:00 2001 -From: Guilhem Saurel <guilhem.saurel@laas.fr> -Date: Tue, 16 Dec 2025 10:37:35 +0100 -Subject: [PATCH 3/4] doc: typo - -fix for doxygen 1.15: -``` -doc/UnalignedArrayAssert.dox:134: error: Reached end of file while still searching closing '`' of a verbatim block starting at line 117 -doc/UnalignedArrayAssert.dox:134: error: Reached end of file while still inside a (nested) comment. Nesting level 1 (possible line reference(s): 3) -``` ---- - doc/UnalignedArrayAssert.dox | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/doc/UnalignedArrayAssert.dox b/doc/UnalignedArrayAssert.dox -index ca674a267..0ed6f8835 100644 ---- a/doc/UnalignedArrayAssert.dox -+++ b/doc/UnalignedArrayAssert.dox -@@ -7,7 +7,7 @@ Hello! You are seeing this webpage because your program terminated on an asserti - my_program: path/to/eigen/Eigen/src/Core/DenseStorage.h:44: - Eigen::internal::matrix_array<T, Size, MatrixOptions, Align>::internal::matrix_array() - [with T = double, int Size = 2, int MatrixOptions = 2, bool Align = true]: --Assertion `(reinterpret_cast<size_t>(array) & (sizemask)) == 0 && "this assertion -+Assertion (reinterpret_cast<size_t>(array) & (sizemask)) == 0 && "this assertion - is explained here: http://eigen.tuxfamily.org/dox-devel/group__TopicUnalignedArrayAssert.html - **** READ THIS WEB PAGE !!! ****"' failed. - </pre> --- -GitLab - - -From ae263fb905b2dd9ff3ad9b47dc44f90466f7b1c8 Mon Sep 17 00:00:00 2001 -From: Guilhem Saurel <guilhem.saurel@laas.fr> -Date: Tue, 16 Dec 2025 10:40:27 +0100 -Subject: [PATCH 4/4] doc: define eigenAutoToc alias - -Fix for doxygen 1.15: -``` -doc/Manual.dox:95: error: Found unexpanded alias '\cpp17'. Check if number of arguments passed is correct. -doc/Manual.dox:98: error: Found unexpanded alias '\eigenAutoToc'. Check if number of arguments passed is correct. -``` ---- - doc/Doxyfile.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/doc/Doxyfile.in b/doc/Doxyfile.in -index 25a7e2e9a..445fc0a6f 100644 ---- a/doc/Doxyfile.in -+++ b/doc/Doxyfile.in -@@ -32,7 +32,7 @@ ALIASES = "only_for_vectors=This is only for vectors (either row- - "cpp14=<span class='cpp14'>[c++14]</span>" \ - "cpp17=<span class='cpp17'>[c++17]</span>" \ - "newin{1}=<span class='newin3x'>New in %Eigen \1.</span>" \ -- eigenAutoToc= \ -+ "eigenAutoToc=<!-- TOC placeholder -->" \ - eigenManualPage=\defgroup - EXTENSION_MAPPING = .h=C++ \ - no_extension=C++ --- -GitLab - diff --git a/dev-cpp/eigen/files/eigen-5.0.0-please_protect_your_min_with_parentheses.patch b/dev-cpp/eigen/files/eigen-5.0.0-please_protect_your_min_with_parentheses.patch deleted file mode 100644 index ee8ab16793cb..000000000000 --- a/dev-cpp/eigen/files/eigen-5.0.0-please_protect_your_min_with_parentheses.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 056b77036b4c97fee25bbd7a747e55c75c79cd48 Mon Sep 17 00:00:00 2001 -From: Paul Zander <negril.nx+gentoo@gmail.com> -Date: Tue, 23 Sep 2025 00:40:14 +0200 -Subject: [PATCH] please protect your min with parentheses - -Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com> - -diff --git a/Eigen/src/Core/products/Parallelizer.h b/Eigen/src/Core/products/Parallelizer.h -index 4f36689..899d78f 100644 ---- a/Eigen/src/Core/products/Parallelizer.h -+++ b/Eigen/src/Core/products/Parallelizer.h -@@ -141,7 +141,7 @@ inline void manage_multi_threading(Action action, int* v) { - // for OpenMP. - eigen_internal_assert(*v >= 0); - int omp_threads = omp_get_max_threads(); -- m_maxThreads = (*v == 0 ? omp_threads : std::min(*v, omp_threads)); -+ m_maxThreads = (*v == 0 ? omp_threads : (std::min)(*v, omp_threads)); - #elif defined(EIGEN_GEMM_THREADPOOL) - // Calling action == SetAction and *v = 0 means - // restoring m_maxThreads to the number of threads in the ThreadPool, -diff --git a/test/product_threaded.cpp b/test/product_threaded.cpp -index 1782c28..85c2615 100644 ---- a/test/product_threaded.cpp -+++ b/test/product_threaded.cpp -@@ -7,6 +7,7 @@ - // Public License v. 2.0. If a copy of the MPL was not distributed - // with this file, You can obtain one at http://mozilla.org/MPL/2.0/. - -+#define EIGEN_DONT_PARALLELIZE - #define EIGEN_GEMM_THREADPOOL - #include "main.h" - --- -2.51.0 - diff --git a/dev-cpp/eigen/files/eigen-5.0.1-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch b/dev-cpp/eigen/files/eigen-5.0.1-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch deleted file mode 100644 index 9a740351ead9..000000000000 --- a/dev-cpp/eigen/files/eigen-5.0.1-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch +++ /dev/null @@ -1,29 +0,0 @@ -From d0e70fb11f54ccc8117030482fb7b3b359261cbf Mon Sep 17 00:00:00 2001 -From: Paul Zander <negril.nx+gentoo@gmail.com> -Date: Mon, 22 Dec 2025 17:19:51 +0100 -Subject: Do not show deprecated CUDA device properties for CUDA-13 - -Fixes: 9e5714b93b3a0d7848e72db5fa2b58decaa60297 -Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com> - -diff --git a/test/gpu_common.h b/test/gpu_common.h -index f34f1b078..f47742079 100644 ---- a/test/gpu_common.h -+++ b/test/gpu_common.h -@@ -153,9 +153,13 @@ void ei_test_init_gpu() { - std::cout << " warpSize: " << deviceProp.warpSize << "\n"; - std::cout << " regsPerBlock: " << deviceProp.regsPerBlock << "\n"; - std::cout << " concurrentKernels: " << deviceProp.concurrentKernels << "\n"; -+#if defined(EIGEN_CUDA_SDK_VER) && EIGEN_CUDA_SDK_VER < 130000 - std::cout << " clockRate: " << deviceProp.clockRate << "\n"; -+#endif - std::cout << " canMapHostMemory: " << deviceProp.canMapHostMemory << "\n"; -+#if defined(EIGEN_CUDA_SDK_VER) && EIGEN_CUDA_SDK_VER < 130000 - std::cout << " computeMode: " << deviceProp.computeMode << "\n"; -+#endif - } - - #endif // EIGEN_TEST_GPU_COMMON_H --- -2.52.0 - diff --git a/dev-cpp/eigen/files/eigen-5.0.1-c++-20.patch b/dev-cpp/eigen/files/eigen-5.0.1-c++-20.patch deleted file mode 100644 index c770cbe827cc..000000000000 --- a/dev-cpp/eigen/files/eigen-5.0.1-c++-20.patch +++ /dev/null @@ -1,29 +0,0 @@ -From: Nicholas Vinson <nvinson234@gmail.com> -Date: Mon, 15 Dec 2025 20:37:04 -0500 - ---- a/Eigen/src/Eigenvalues/ComplexSchur.h -+++ b/Eigen/src/Eigenvalues/ComplexSchur.h -@@ -277,7 +277,8 @@ - using std::abs; - if ((iter == 10 || iter == 20) && iu > 1) { - // exceptional shift, taken from http://www.netlib.org/eispack/comqr.f -- return abs(numext::real(m_matT.coeff(iu, iu - 1))) + abs(numext::real(m_matT.coeff(iu - 1, iu - 2))); -+ return ComplexSchur<MatrixType>::ComplexScalar( -+ abs(numext::real(m_matT.coeff(iu, iu - 1))) + abs(numext::real(m_matT.coeff(iu - 1, iu - 2)))); - } - - // compute the shift as one of the eigenvalues of t, the 2x2 ---- a/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h -+++ b/unsupported/Eigen/src/MatrixFunctions/MatrixFunction.h -@@ -86,7 +86,7 @@ - for (Index i = 0; i < rows; i++) - mx = (std::max)(mx, std::abs(m_f(Ashifted(i, i) + avgEival, static_cast<int>(s + r)))); - if (r != 0) rfactorial *= RealScalar(r); -- delta = (std::max)(delta, mx / rfactorial); -+ delta = (std::max)(delta, RealScalar(mx / rfactorial)); - } - const RealScalar P_norm = P.cwiseAbs().rowwise().sum().maxCoeff(); - if (mu * delta * P_norm < NumTraits<Scalar>::epsilon() * F_norm) // series converged --- -2.52.0 - diff --git a/dev-cpp/eigen/files/eigen-5.0.1-cmake-GNUInstallDirs.patch b/dev-cpp/eigen/files/eigen-5.0.1-cmake-GNUInstallDirs.patch deleted file mode 100644 index d68e31b132ed..000000000000 --- a/dev-cpp/eigen/files/eigen-5.0.1-cmake-GNUInstallDirs.patch +++ /dev/null @@ -1,57 +0,0 @@ -From efcf4891a83e2757aa70de61eb17d81963085c20 Mon Sep 17 00:00:00 2001 -From: Paul Zander <negril.nx+gentoo@gmail.com> -Date: Sat, 27 Dec 2025 15:39:40 +0100 -Subject: cmake GNUInstallDirs - -Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com> - -diff --git a/blas/CMakeLists.txt b/blas/CMakeLists.txt -index 45488d7..f0f88c0 100644 ---- a/blas/CMakeLists.txt -+++ b/blas/CMakeLists.txt -@@ -31,10 +31,8 @@ foreach(target IN LISTS EIGEN_BLAS_TARGETS) - endif() - - add_dependencies(blas ${target}) -- install(TARGETS ${target} -- RUNTIME DESTINATION bin -- LIBRARY DESTINATION lib -- ARCHIVE DESTINATION lib) -+ include(GNUInstallDirs) -+ install(TARGETS ${target}) - endforeach() - - if(EIGEN_BUILD_TESTING) -diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt -index da07b19d6..dec130bd5 100644 ---- a/doc/CMakeLists.txt -+++ b/doc/CMakeLists.txt -@@ -4,6 +4,8 @@ set_directory_properties(PROPERTIES EXCLUDE_FROM_ALL TRUE) - - project(EigenDoc) - -+include(GNUInstallDirs) -+ - if(CMAKE_COMPILER_IS_GNUCXX) - if(CMAKE_SYSTEM_NAME MATCHES Linux) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O1 -g1") -diff --git a/lapack/CMakeLists.txt b/lapack/CMakeLists.txt -index d837fff..9e127a6 100644 ---- a/lapack/CMakeLists.txt -+++ b/lapack/CMakeLists.txt -@@ -120,10 +120,8 @@ foreach(target IN LISTS EIGEN_LAPACK_TARGETS) - endif() - target_link_libraries(${target} Eigen3::Eigen) - add_dependencies(lapack ${target}) -- install(TARGETS ${target} -- RUNTIME DESTINATION bin -- LIBRARY DESTINATION lib -- ARCHIVE DESTINATION lib) -+ include(GNUInstallDirs) -+ install(TARGETS ${target}) - endforeach() - - --- -2.52.0 - diff --git a/dev-cpp/eigen/files/eigen-5.0.1-fix-lapack_testing.py.patch b/dev-cpp/eigen/files/eigen-5.0.1-fix-lapack_testing.py.patch deleted file mode 100644 index cbba85d882cb..000000000000 --- a/dev-cpp/eigen/files/eigen-5.0.1-fix-lapack_testing.py.patch +++ /dev/null @@ -1,248 +0,0 @@ -From 8d05fb579428b57a784f72e054295ebfeac5864d Mon Sep 17 00:00:00 2001 -From: Paul Zander <negril.nx+gentoo@gmail.com> -Date: Fri, 13 Mar 2026 18:43:46 +0100 -Subject: fix lapack_testing.py - -Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com> - -diff --git a/lapack/testing/lapack_testing.py b/lapack/testing/lapack_testing.py -index 3bd9462..b35e15d 100755 ---- a/lapack/testing/lapack_testing.py -+++ b/lapack/testing/lapack_testing.py -@@ -15,9 +15,9 @@ try: - opts, args = getopt.getopt(sys.argv[1:], "hd:srep:t:n", - ["help", "dir", "short", "run", "error","prec=","test=","number"]) - --except getopt.error, msg: -- print msg -- print "for help use --help" -+except (getopt.error, msg): -+ print(msg) -+ print("for help use --help") - sys.exit(2) - - short_summary=0 -@@ -29,38 +29,38 @@ only_numbers=0 - dir="TESTING" - for o, a in opts: - if o in ("-h", "--help"): -- print sys.argv[0]+" [-h|--help] [-d dir |--dir dir] [-s |--short] [-r |--run] [-e |--error] [-p p |--prec p] [-t test |--test test] [-n | --number]" -- print " - h is to print this message" -- print " - r is to use to run the LAPACK tests then analyse the output (.out files). By default, the script will not run all the LAPACK tests" -- print " - d [dir] is to indicate where is the LAPACK testing directory (.out files). By default, the script will use ." -- print " LEVEL OF OUTPUT" -- print " - x is to print a detailed summary" -- print " - e is to print only the error summary" -- print " - s is to print a short summary" -- print " - n is to print the numbers of failing tests (turn on summary mode)" -- print " SECLECTION OF TESTS:" -- print " - p [s/c/d/z/x] is to indicate the PRECISION to run:" -- print " s=single" -- print " d=double" -- print " sd=single/double" -- print " c=complex" -- print " z=double complex" -- print " cz=complex/double complex" -- print " x=all [DEFAULT]" -- print " - t [lin/eig/mixed/rfp/all] is to indicate which TEST FAMILY to run:" -- print " lin=Linear Equation" -- print " eig=Eigen Problems" -- print " mixed=mixed-precision" -- print " rfp=rfp format" -- print " all=all tests [DEFAULT]" -- print " EXAMPLES:" -- print " ./lapack_testing.py -n" -- print " Will return the numbers of failed tests by analyzing the LAPACK output" -- print " ./lapack_testing.py -n -r -p s" -- print " Will return the numbers of failed tests in REAL precision by running the LAPACK Tests then analyzing the output" -- print " ./lapack_testing.py -n -p s -t eig " -- print " Will return the numbers of failed tests in REAL precision by analyzing only the LAPACK output of EIGEN testings" -- print "Written by Julie Langou (June 2011) " -+ print(sys.argv[0]+" [-h|--help] [-d dir |--dir dir] [-s |--short] [-r |--run] [-e |--error] [-p p |--prec p] [-t test |--test test] [-n | --number]") -+ print(" - h is to print this message") -+ print(" - r is to use to run the LAPACK tests then analyse the output (.out files). By default, the script will not run all the LAPACK tests") -+ print(" - d [dir] is to indicate where is the LAPACK testing directory (.out files). By default, the script will use .") -+ print(" LEVEL OF OUTPUT") -+ print(" - x is to print a detailed summary") -+ print(" - e is to print only the error summary") -+ print(" - s is to print a short summary") -+ print(" - n is to print the numbers of failing tests (turn on summary mode)") -+ print(" SECLECTION OF TESTS:") -+ print(" - p [s/c/d/z/x] is to indicate the PRECISION to run:") -+ print(" s=single") -+ print(" d=double") -+ print(" sd=single/double") -+ print(" c=complex") -+ print(" z=double complex") -+ print(" cz=complex/double complex") -+ print(" x=all [DEFAULT]") -+ print(" - t [lin/eig/mixed/rfp/all] is to indicate which TEST FAMILY to run:") -+ print(" lin=Linear Equation") -+ print(" eig=Eigen Problems") -+ print(" mixed=mixed-precision") -+ print(" rfp=rfp format") -+ print(" all=all tests [DEFAULT]") -+ print(" EXAMPLES:") -+ print(" ./lapack_testing.py -n") -+ print(" Will return the numbers of failed tests by analyzing the LAPACK output") -+ print(" ./lapack_testing.py -n -r -p s") -+ print(" Will return the numbers of failed tests in REAL precision by running the LAPACK Tests then analyzing the output") -+ print(" ./lapack_testing.py -n -p s -t eig ") -+ print(" Will return the numbers of failed tests in REAL precision by analyzing only the LAPACK output of EIGEN testings") -+ print("Written by Julie Langou (June 2011) ") - sys.exit(0) - else: - if o in ("-s", "--short"): -@@ -120,34 +120,34 @@ def run_summary_test( f, cmdline, short_summary): - error_message=cmdline+" did not work" - - if r != 0 and not with_file: -- print "---- TESTING " + cmdline.split()[0] + "... FAILED(" + error_message +") !" -+ print("---- TESTING " + cmdline.split()[0] + "... FAILED(" + error_message +") !") - for line in pipe.readlines(): - f.write(str(line)) - elif r != 0 and with_file and not short_summary: -- print "---- WARNING: please check that you have the LAPACK output : "+cmdline+"!" -- print "---- WARNING: with the option -r, we can run the LAPACK testing for you" -+ print("---- WARNING: please check that you have the LAPACK output : "+cmdline+"!") -+ print("---- WARNING: with the option -r, we can run the LAPACK testing for you") - # print "---- "+error_message - else: - for line in pipe.readlines(): -- f.write(str(line)) -- words_in_line=line.split() -- if (line.find("run")!=-1): --# print line -- whereisrun=words_in_line.index("run)") -- nb_test_run+=int(words_in_line[whereisrun-2]) -- if (line.find("out of")!=-1): -- if (short_summary==0): print line, -- whereisout= words_in_line.index("out") -- nb_test_fail+=int(words_in_line[whereisout-1]) -- if (line.find("illegal")!=-1): -- if (short_summary==0):print line, -- nb_test_illegal+=1 -- if (line.find(" INFO")!=-1): -- if (short_summary==0):print line, -- nb_test_info+=1 -- if (with_file==1): -- pipe.close() -- -+ f.write(str(line)) -+ words_in_line=line.split() -+ if (line.find("run")!=-1): -+# print line -+ whereisrun=words_in_line.index("run)") -+ nb_test_run+=int(words_in_line[whereisrun-2]) -+ if (line.find("out of")!=-1): -+ if (short_summary==0): print(line), -+ whereisout= words_in_line.index("out") -+ nb_test_fail+=int(words_in_line[whereisout-1]) -+ if (line.find("illegal")!=-1): -+ if (short_summary==0):print(line), -+ nb_test_illegal+=1 -+ if (line.find(" INFO")!=-1): -+ if (short_summary==0):print(line), -+ nb_test_info+=1 -+ if (with_file==1): -+ pipe.close() -+ - f.flush(); - - return [nb_test_run,nb_test_fail,nb_test_illegal,nb_test_info] -@@ -161,10 +161,10 @@ except IOError: - f = sys.stdout - - if (short_summary==0): -- print " " -- print "---------------- Testing LAPACK Routines ----------------" -- print " " -- print "-- Detailed results are stored in", filename -+ print(" ") -+ print("---------------- Testing LAPACK Routines ----------------") -+ print(" ") -+ print("-- Detailed results are stored in", filename) - - dtypes = ( - ("s", "d", "c", "z"), -@@ -211,9 +211,9 @@ for dtype in range_prec: - name = dtypes[1][dtype] - - if (short_summary==0): -- print " " -- print "------------------------- %s ------------------------" % name -- print " " -+ print(" ") -+ print("------------------------- %s ------------------------" % name) -+ print(" ") - sys.stdout.flush() - - -@@ -260,8 +260,8 @@ for dtype in range_prec: - # EIG TESTS - cmdbase="xeigtst"+letter+" < "+dtests[0][dtest]+".in > "+dtests[2][dtest]+".out" - if (not just_errors and not short_summary): -- print "--> Testing "+name+" "+dtests[1][dtest]+" [ "+cmdbase+" ]" -- # Run the process: either to read the file or run the LAPACK testing -+ print("--> Testing "+name+" "+dtests[1][dtest]+" [ "+cmdbase+" ]") -+ # Run the process: either to read the file or run the LAPACK testing - nb_test = run_summary_test(f, cmdbase, short_summary) - list_results[0][dtype]+=nb_test[0] - list_results[1][dtype]+=nb_test[1] -@@ -271,21 +271,21 @@ for dtype in range_prec: - - if (not short_summary): - if (nb_test[0]>0 and just_errors==0): -- print "--> Tests passed: "+str(nb_test[0]) -+ print("--> Tests passed: "+str(nb_test[0])) - if (nb_test[1]>0): -- print "--> Tests failing to pass the threshold: "+str(nb_test[1]) -+ print("--> Tests failing to pass the threshold: "+str(nb_test[1])) - if (nb_test[2]>0): -- print "--> Illegal Error: "+str(nb_test[2]) -+ print("--> Illegal Error: "+str(nb_test[2])) - if (nb_test[3]>0): -- print "--> Info Error: "+str(nb_test[3]) -+ print("--> Info Error: "+str(nb_test[3])) - if (got_error>0 and just_errors==1): -- print "ERROR IS LOCATED IN "+name+" "+dtests[1][dtest]+" [ "+cmdbase+" ]" -- print "" -+ print("ERROR IS LOCATED IN "+name+" "+dtests[1][dtest]+" [ "+cmdbase+" ]") -+ print("") - if (just_errors==0): -- print "" -+ print("") - # elif (got_error>0): --# print dtests[2][dtest]+".out \t"+str(nb_test[1])+"\t"+str(nb_test[2])+"\t"+str(nb_test[3]) - -+# print(dtests[2][dtest]+".out \t"+str(nb_test[1])+"\t"+str(nb_test[2])+"\t"+str(nb_test[3])) - sys.stdout.flush() - if (list_results[0][dtype] > 0 ): - percent_num_error=float(list_results[1][dtype])/float(list_results[0][dtype])*100 -@@ -300,9 +300,9 @@ for dtype in range_prec: - list_results[3][4]+=list_results[3][dtype] - - if only_numbers==1: -- print str(list_results[1][4])+"\n"+str(list_results[2][4]+list_results[3][4]) -+ print(str(list_results[1][4])+"\n"+str(list_results[2][4]+list_results[3][4])) - else: -- print summary -+ print(summary) - if (list_results[0][4] > 0 ): - percent_num_error=float(list_results[1][4])/float(list_results[0][4])*100 - percent_error=float(list_results[2][4]+list_results[3][4])/float(list_results[0][4])*100 -@@ -310,9 +310,9 @@ else: - percent_num_error=0 - percent_error=0 - if (prec=='x'): -- print "--> ALL PRECISIONS\t"+str(list_results[0][4])+"\t\t"+str(list_results[1][4])+"\t("+"%.3f" % percent_num_error+"%)\t"+str(list_results[2][4]+list_results[3][4])+"\t("+"%.3f" % percent_error+"%)\t""\n" -+ print("--> ALL PRECISIONS\t"+str(list_results[0][4])+"\t\t"+str(list_results[1][4])+"\t("+"%.3f" % percent_num_error+"%)\t"+str(list_results[2][4]+list_results[3][4])+"\t("+"%.3f" % percent_error+"%)\t""\n") - if list_results[0][4] == 0: -- print "NO TESTS WERE ANALYZED, please use the -r option to run the LAPACK TESTING" -+ print("NO TESTS WERE ANALYZED, please use the -r option to run the LAPACK TESTING") - - # This may close the sys.stdout stream, so make it the last statement - f.close() --- -2.53.0 - diff --git a/dev-cpp/eigen/files/eigen-5.0.1-make-static-libs-optional.patch b/dev-cpp/eigen/files/eigen-5.0.1-make-static-libs-optional.patch deleted file mode 100644 index 63272d4a82d8..000000000000 --- a/dev-cpp/eigen/files/eigen-5.0.1-make-static-libs-optional.patch +++ /dev/null @@ -1,61 +0,0 @@ -From 9ddec05248d0084c4bfe737fa9ab3cf61f3ecd4a Mon Sep 17 00:00:00 2001 -From: Paul Zander <negril.nx+gentoo@gmail.com> -Date: Thu, 12 Mar 2026 16:38:02 +0100 -Subject: make static libs optional - -Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com> - -diff --git a/blas/CMakeLists.txt b/blas/CMakeLists.txt -index 2bd498a11..0b605cc9e 100644 ---- a/blas/CMakeLists.txt -+++ b/blas/CMakeLists.txt -@@ -15,8 +15,10 @@ set(EigenBlas_SRCS single.cpp double.cpp complex_single.cpp complex_double.cpp - - set(EIGEN_BLAS_TARGETS "") - -+if (EIGEN_BUILD_STATIC_LIBS) - add_library(eigen_blas_static STATIC ${EigenBlas_SRCS}) - list(APPEND EIGEN_BLAS_TARGETS eigen_blas_static) -+endif() - - if (EIGEN_BUILD_SHARED_LIBS) - add_library(eigen_blas SHARED ${EigenBlas_SRCS} "eigen_blas.def") -@@ -34,7 +36,9 @@ foreach(target IN LISTS EIGEN_BLAS_TARGETS) - - add_dependencies(blas ${target}) - include(GNUInstallDirs) -+ if (NOT EIGEN_INSTALL_STATIC_LIBS AND NOT ${target} EQUAL eigen_blas_static) - install(TARGETS ${target}) -+ endif() - endforeach() - - if(EIGEN_BUILD_TESTING) -diff --git a/lapack/CMakeLists.txt b/lapack/CMakeLists.txt -index f98f77afc..4ea553b56 100644 ---- a/lapack/CMakeLists.txt -+++ b/lapack/CMakeLists.txt -@@ -101,9 +101,11 @@ endif() - - set(EIGEN_LAPACK_TARGETS "") - -+if (EIGEN_BUILD_STATIC_LIBS) - add_library(eigen_lapack_static STATIC ${EigenLapack_SRCS} ${ReferenceLapack_SRCS}) - target_link_libraries(eigen_lapack_static eigen_blas_static) - list(APPEND EIGEN_LAPACK_TARGETS eigen_lapack_static) -+endif() - - if (EIGEN_BUILD_SHARED_LIBS) - add_library(eigen_lapack SHARED ${EigenLapack_SRCS} ${EIGEN_LAPACK_DEF}) -@@ -123,7 +125,9 @@ foreach(target IN LISTS EIGEN_LAPACK_TARGETS) - target_link_libraries(${target} Eigen3::Eigen) - add_dependencies(lapack ${target}) - include(GNUInstallDirs) -+ if (NOT EIGEN_INSTALL_STATIC_LIBS AND NOT ${target} EQUAL eigen_lapack_static) - install(TARGETS ${target}) -+ endif() - endforeach() - - --- -2.53.0 - diff --git a/dev-cpp/eigen/files/eigen-9999-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch b/dev-cpp/eigen/files/eigen-9999-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch deleted file mode 100644 index 0d762191009c..000000000000 --- a/dev-cpp/eigen/files/eigen-9999-Do-not-show-deprecated-CUDA-device-properties-for-CU.patch +++ /dev/null @@ -1,29 +0,0 @@ -From f14dfe5022870966d0d888651f0d4f5b3af5f25c Mon Sep 17 00:00:00 2001 -From: Paul Zander <negril.nx+gentoo@gmail.com> -Date: Mon, 22 Dec 2025 17:19:51 +0100 -Subject: Do not show deprecated CUDA device properties for CUDA-13 - -Fixes: 9e5714b93b3a0d7848e72db5fa2b58decaa60297 -Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com> - -diff --git a/test/gpu_common.h b/test/gpu_common.h -index 8c7049b17..f47742079 100644 ---- a/test/gpu_common.h -+++ b/test/gpu_common.h -@@ -153,7 +153,13 @@ void ei_test_init_gpu() { - std::cout << " warpSize: " << deviceProp.warpSize << "\n"; - std::cout << " regsPerBlock: " << deviceProp.regsPerBlock << "\n"; - std::cout << " concurrentKernels: " << deviceProp.concurrentKernels << "\n"; -+#if defined(EIGEN_CUDA_SDK_VER) && EIGEN_CUDA_SDK_VER < 130000 -+ std::cout << " clockRate: " << deviceProp.clockRate << "\n"; -+#endif - std::cout << " canMapHostMemory: " << deviceProp.canMapHostMemory << "\n"; -+#if defined(EIGEN_CUDA_SDK_VER) && EIGEN_CUDA_SDK_VER < 130000 -+ std::cout << " computeMode: " << deviceProp.computeMode << "\n"; -+#endif - } - - #endif // EIGEN_TEST_GPU_COMMON_H --- -2.53.0 - diff --git a/dev-cpp/eigen/files/eigen-9999-product_threaded_dont_parallelize.patch b/dev-cpp/eigen/files/eigen-9999-product_threaded_dont_parallelize.patch deleted file mode 100644 index 4153896b3933..000000000000 --- a/dev-cpp/eigen/files/eigen-9999-product_threaded_dont_parallelize.patch +++ /dev/null @@ -1,22 +0,0 @@ -From 056b77036b4c97fee25bbd7a747e55c75c79cd48 Mon Sep 17 00:00:00 2001 -From: Paul Zander <negril.nx+gentoo@gmail.com> -Date: Tue, 23 Sep 2025 00:40:14 +0200 -Subject: [PATCH] product_threaded don't parallelize - -Signed-off-by: Paul Zander <negril.nx+gentoo@gmail.com> - -diff --git a/test/product_threaded.cpp b/test/product_threaded.cpp -index 1782c28..85c2615 100644 ---- a/test/product_threaded.cpp -+++ b/test/product_threaded.cpp -@@ -8,6 +8,7 @@ - // with this file, You can obtain one at http://mozilla.org/MPL/2.0/. - // SPDX-License-Identifier: MPL-2.0 - -+#define EIGEN_DONT_PARALLELIZE - #define EIGEN_GEMM_THREADPOOL - #include "main.h" - --- -2.51.0 - diff --git a/dev-cpp/eigen/metadata.xml b/dev-cpp/eigen/metadata.xml deleted file mode 100644 index c15af35ef933..000000000000 --- a/dev-cpp/eigen/metadata.xml +++ /dev/null @@ -1,42 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd"> -<pkgmetadata> - <maintainer type="project"> - <email>sci@gentoo.org</email> - <name>Gentoo Science Project</name> - </maintainer> - <maintainer type="project"> - <email>kde@gentoo.org</email> - <name>Gentoo KDE Project</name> - </maintainer> - <longdescription> - Eigen is a lightweight C++ template library for vector and matrix math, - a.k.a. linear algebra. Unlike most other linear algebra libraries, Eigen - focuses on the simple mathematical needs of applications: games and other - OpenGL apps, spreadsheets and other office apps, etc. Eigen is dedicated to - providing optimal speed with GCC. - </longdescription> - <use> - <flag name="adolc">Add test support for Adolc (<pkg>sci-libs/adolc</pkg>)</flag> - <flag name="blas">Build the Eigen Blas library</flag> - <flag name="boost">Add test support for Boost.Multiprecision (<pkg>dev-libs/boost</pkg>)</flag> - <flag name="cholmod">Add test support for CHOLMOD (<pkg>sci-libs/cholmod</pkg>)</flag> - <flag name="clang">Use clang for cuda units compilation</flag> - <flag name="cuda-clang">Use clang for cuda units compilation</flag> - <flag name="fftw">Add test support for fftw (<pkg>sci-libs/fftw</pkg>)</flag> - <flag name="hip">Enable HIP GPU computing support</flag> - <flag name="klu">Add test support for KLU (<pkg>sci-libs/klu</pkg>)</flag> - <flag name="lapack">Build the included Eigen LAPACK library</flag> - <flag name="mathjax">Use MathJax for rendering math in HTML docs (dev-libs/mathjax)</flag> - <flag name="metis">Add test support for METIS (<pkg>sci-libs/metis</pkg>)</flag> - <flag name="opengl">Add test support for OpenGL</flag> - <flag name="openmp">Add test support for OpenMP (support parallel computing)</flag> - <flag name="pastix">Add test support for PaStiX (<pkg>sci-libs/pastix</pkg>)</flag> - <flag name="pocketfft">Add test support for pocketfft (<pkg>dev-libs/pocketfft</pkg>)</flag> - <flag name="sparsehash">Add test support for GoogleHash (<pkg>dev-cpp/sparsehash</pkg>)</flag> - <flag name="spqr">Add test support for SPQR (<pkg>sci-libs/spqr</pkg>)</flag> - <flag name="superlu">Add test support for SuperLU (<pkg>sci-libs/superlu</pkg>)</flag> - <flag name="umfpack">Add test support for UMFPACK (<pkg>sci-libs/umfpack</pkg>)</flag> - </use> - <origin>baldeagleos-repo</origin> -</pkgmetadata> |
