From 0041c734287063590f5a6fef7f9f5ad4ff962e82 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20Pen=C3=9Fel?= Date: Tue, 5 May 2026 18:55:11 +0200 Subject: [PATCH] sci-libs/ldl: drop multilib support, add 3.3.3 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bug: https://bugs.gentoo.org/908851 Signed-off-by: Johannes Penßel Part-of: https://github.com/gentoo/gentoo/pull/46157 Signed-off-by: Sam James --- sci-libs/ldl/Manifest | 1 + sci-libs/ldl/ldl-3.3.3.ebuild | 77 +++++++++++++++++++++++++++++++++++ 2 files changed, 78 insertions(+) create mode 100644 sci-libs/ldl/ldl-3.3.3.ebuild diff --git a/sci-libs/ldl/Manifest b/sci-libs/ldl/Manifest index e7ab12f27e1c0..9780cb45df5d7 100644 --- a/sci-libs/ldl/Manifest +++ b/sci-libs/ldl/Manifest @@ -1,2 +1,3 @@ DIST SuiteSparse-7.0.0.gh.tar.gz 64884962 BLAKE2B 06c6cf54ffae188f5179e0cd45523700448d8999b44d6b1aeb3dfb99ccf34a570f6aff600988a144c68a4a2d8f41e32f7145e09349aed3bd889501ea031c8340 SHA512 50b1cd7bab6e4c063984162ed803fd13b69df7f67efe8ce7af15eace6b0ccd1669b6e57daa59511fd9531a847433cda49c1f52bfff234031af0d79e7fbd6423e +DIST SuiteSparse-7.12.2.gh.tar.gz 95337908 BLAKE2B df279ccc572887ecda2809551eefd34d0780b9cfef5c257c6c9f218dbcc5140f44e148a8199ebe899984561bb454b1f202606f8af290d71f5caeef4c008659c4 SHA512 0a7d070c90ef0a55c3ed821edf6567f4a84d5615250898b8fbacad19e1cf53dba199c38369c771465b4149ba5501bf0c1ae1352f29d0fb462fd10ca90e486cfa DIST ldl-2.2.6.tar.bz2 342923 BLAKE2B 7acf1a82824de013fe9a7742fb2d5c44c86de96e95d1d7408106d4af420dc3655ab7533eb80592b52523245c7545bc246bf129712547ff6eba856a807c78b6ad SHA512 266c9e62c474a6a9b2d7f74aa580e313fbe4b322197236ba6fbbab6d1756348cf146c1d807ea6d8d0e5941cedc48298e8437aaf386dd6c433dcaf41a9d0b7371 diff --git a/sci-libs/ldl/ldl-3.3.3.ebuild b/sci-libs/ldl/ldl-3.3.3.ebuild new file mode 100644 index 0000000000000..88a3e42de7d39 --- /dev/null +++ b/sci-libs/ldl/ldl-3.3.3.ebuild @@ -0,0 +1,77 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake flag-o-matic + +Sparse_PV="7.12.2" +Sparse_P="SuiteSparse-${Sparse_PV}" +DESCRIPTION="Simple but educational LDL^T matrix factorization algorithm" +HOMEPAGE="https://people.engr.tamu.edu/davis/suitesparse.html" +SRC_URI="https://github.com/DrTimothyAldenDavis/SuiteSparse/archive/refs/tags/v${Sparse_PV}.tar.gz -> ${Sparse_P}.gh.tar.gz" + +S="${WORKDIR}/${Sparse_P}/${PN^^}" +LICENSE="LGPL-2.1+" +SLOT="0/3" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="doc test" +RESTRICT="!test? ( test )" + +DEPEND=">=sci-libs/suitesparseconfig-${Sparse_PV} + >=sci-libs/amd-3.3.4" +RDEPEND="${DEPEND}" +BDEPEND="doc? ( virtual/latex-base )" + +src_configure() { + # May slightly skew FP numbers if enabled, and we want to match + # the expected output bit-by-bit in tests. + use test && append-flags -ffp-contract=off + + # Define SUITESPARSE_INCLUDEDIR_POSTFIX to "" otherwise it take + # the value suitesparse, and the include directory would be set to + # /usr/include/suitesparse + # This need to be set in all suitesparse ebuilds. + local mycmakeargs=( + -DBUILD_STATIC_LIBS=OFF + -DSUITESPARSE_DEMOS=$(usex test) + -DSUITESPARSE_INCLUDEDIR_POSTFIX="" + ) + cmake_src_configure +} + +src_test() { + # Because we are not using cmake_src_test, + # we have to manually go to BUILD_DIR + cd "${BUILD_DIR}" || die + # Some programs assume that they can access the Matrix folder in ${S} + ln -s "${S}/Matrix" || die + # Run demo files + local demofiles=( + ldllsimple + ldlmain + ldllmain + ldlamd + ldllamd + ) + # not running ldlsimple until it does not "test" suitesparse version as well. + local i + for i in ${demofiles[@]}; do + einfo "testing ${i}" + ./"${i}" > "${i}.out" || die "${i} failed to run" + diff "${S}/Demo/${i}.out" "${i}.out" || die "failed testing ${i}" + done + einfo "All tests passed" +} + +src_install() { + if use doc; then + pushd "${S}/Doc" || die + emake clean + rm -rf *.pdf || die + emake + popd || die + DOCS="${S}/Doc/*.pdf" + fi + cmake_src_install +}