Сравнение superlu-4.3-r4 с superlu-5.3.0

/usr/portage/sci-libs/superlu/superlu-5.3.0.ebuild 2024-12-25 14:59:52.719270181 +0300
1
# Copyright 1999-2025 Gentoo Authors
1
# Copyright 1999-2023 Gentoo Authors
2 2
# Distributed under the terms of the GNU General Public License v2
3 3

  
4 4
EAPI=8
5 5

  
6
inherit autotools fortran-2 multilib toolchain-funcs flag-o-matic
6
FORTRAN_STANDARD=77
7 7

  
8
MY_PN=SuperLU
8
inherit cmake fortran-2
9 9

  
10 10
DESCRIPTION="Sparse LU factorization library"
11
HOMEPAGE="https://crd-legacy.lbl.gov/~xiaoye/SuperLU/"
12
# See bug #862597 for .new, can drop on next version
13
SRC_URI="https://portal.nersc.gov/project/sparse/${PN}/${PN}_${PV}.tar.gz -> ${PN}_${PV}.new.tar.gz"
14
S="${WORKDIR}/${MY_PN}_${PV}"
11
HOMEPAGE="https://portal.nersc.gov/project/sparse/superlu/"
12
SRC_URI="https://github.com/xiaoyeli/superlu/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
15 13

  
16 14
LICENSE="BSD"
17
SLOT="0"
18
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
15
SLOT="0/$(ver_cut 1)"
16
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
19 17
IUSE="doc examples test"
20 18
RESTRICT="!test? ( test )"
21 19

  
22
RDEPEND="virtual/blas"
23
DEPEND="${RDEPEND}"
24 20
BDEPEND="
25 21
	virtual/pkgconfig
26 22
	test? ( app-shells/tcsh )
27 23
"
24
RDEPEND="virtual/blas"
25
DEPEND="${RDEPEND}"
28 26

  
29 27
PATCHES=(
30
	"${FILESDIR}"/${P}-autotools.patch
31
	"${FILESDIR}"/${P}-format-security.patch
28
	"${FILESDIR}"/${PN}-5.2.2-no-internal-blas.patch
32 29
)
33 30

  
34 31
src_prepare() {
35
	unset VERBOSE
36
	append-cflags -std=gnu89
37
	sed \
38
		-e "s:= ar:= $(tc-getAR):g" \
39
		-e "s:= ranlib:= $(tc-getRANLIB):g" \
40
		-i make.inc || die
41

  
42
	default
43
	eautoreconf
32
	cmake_src_prepare
33
	# respect user's CFLAGS
34
	sed -i -e 's/O3//' CMakeLists.txt || die
44 35
}
45 36

  
46 37
src_configure() {
47
	local myeconfargs=(
48
		--with-blas="$($(tc-getPKG_CONFIG) --libs blas)"
38
	local mycmakeargs+=(
39
		-DCMAKE_INSTALL_INCLUDEDIR="include/superlu"
40
		-DBUILD_SHARED_LIBS=ON
41
		-Denable_internal_blaslib=OFF
42
		-Denable_tests=$(usex test)
49 43
	)
50

  
51
	tc-export PKG_CONFIG
52

  
53
	econf "${myeconfargs[@]}"
54

  
55
	rm EXAMPLE/*itersol1 || die
56
}
57

  
58
src_test() {
59
	cd TESTING || die
60
	emake -j1 \
61
		CC="$(tc-getCC)" \
62
		FORTRAN="$(tc-getFC)" \
63
		LOADER="$(tc-getCC)" \
64
		CFLAGS="${CFLAGS}" \
65
		FFLAGS="${FFLAGS}" \
66
		LOADOPTS="${LDFLAGS}" \
67
		BLASLIB="$($(tc-getPKG_CONFIG) --libs blas)" \
68
		SUPERLULIB="${S}/SRC/.libs/libsuperlu$(get_libname)" \
69
		LD_LIBRARY_PATH="${S}/SRC/.libs" \
70
		DYLD_LIBRARY_PATH="${S}/SRC/.libs"
44
	cmake_src_configure
71 45
}
72 46

  
73 47
src_install() {
74
	default
75

  
76
	if use doc; then
77
		dodoc DOC/ug.pdf
78
		dodoc -r DOC/html/.
79
	fi
80

  
48
	cmake_src_install
49
	use doc && dodoc -r DOC/html
81 50
	if use examples; then
82 51
		docinto examples
83 52
		dodoc -r EXAMPLE FORTRAN
53
		docompress -x /usr/share/doc/${PF}/examples
84 54
	fi
85

  
86
	find "${ED}" -name "*.a" -delete || die
87 55
}
Спасибо!