1 |
1 |
# Copyright 1999-2023 Gentoo Authors
|
2 |
2 |
# Distributed under the terms of the GNU General Public License v2
|
3 |
3 |
|
4 |
|
EAPI=7
|
|
4 |
EAPI=8
|
5 |
5 |
|
6 |
|
inherit multilib-minimal
|
|
6 |
inherit cmake-multilib toolchain-funcs
|
7 |
7 |
|
|
8 |
Sparse_PV=$(ver_rs 3 '.')
|
|
9 |
Sparse_P="SuiteSparse-${Sparse_PV}"
|
8 |
10 |
DESCRIPTION="Common configurations for all packages in suitesparse"
|
9 |
11 |
HOMEPAGE="https://people.engr.tamu.edu/davis/suitesparse.html"
|
10 |
|
SRC_URI="http://202.36.178.9/sage/${P}.tar.bz2"
|
|
12 |
SRC_URI="https://github.com/DrTimothyAldenDavis/SuiteSparse/archive/refs/tags/v${Sparse_PV}.tar.gz -> ${Sparse_P}.gh.tar.gz"
|
11 |
13 |
|
12 |
|
# Upstream says, "no licensing restrictions apply to this file or to the
|
13 |
|
# SuiteSparse_config directory".
|
14 |
|
LICENSE="public-domain"
|
15 |
|
SLOT="0"
|
16 |
|
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ~ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos"
|
17 |
|
IUSE="static-libs"
|
|
14 |
LICENSE="BSD"
|
|
15 |
SLOT="0/7"
|
|
16 |
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
|
|
17 |
IUSE="openmp"
|
18 |
18 |
|
19 |
|
multilib_src_configure() {
|
20 |
|
ECONF_SOURCE="${S}" \
|
21 |
|
econf \
|
22 |
|
$(use_enable static-libs static)
|
|
19 |
# BLAS availability is checked for at configuration time and will fail if it is not present.
|
|
20 |
BDEPEND="virtual/blas"
|
|
21 |
|
|
22 |
S="${WORKDIR}/${Sparse_P}/SuiteSparse_config"
|
|
23 |
|
|
24 |
pkg_pretend() {
|
|
25 |
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
|
23 |
26 |
}
|
24 |
27 |
|
25 |
|
multilib_src_install_all() {
|
26 |
|
if ! use static-libs; then
|
27 |
|
find "${ED}" -name "*.la" -delete || die
|
28 |
|
fi
|
|
28 |
pkg_setup() {
|
|
29 |
[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
|
|
30 |
}
|
|
31 |
|
|
32 |
multilib_src_configure() {
|
|
33 |
# Make sure we always include the Fortran interface.
|
|
34 |
# It doesn't require a Fortran compiler to be present
|
|
35 |
# and simplifies the configuration for dependencies.
|
|
36 |
local mycmakeargs=(
|
|
37 |
-DNSTATIC=ON
|
|
38 |
-DNFORTRAN=OFF
|
|
39 |
-DNOPENMP=$(usex openmp OFF ON)
|
|
40 |
)
|
|
41 |
cmake_src_configure
|
29 |
42 |
}
|