summaryrefslogtreecommitdiff
blob: f3cb7554fab1b3e0835b13c9a6c5346b00196181 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=7

inherit autotools toolchain-funcs

DESCRIPTION="Automatic differentiation system for C/C++"
HOMEPAGE="https://projects.coin-or.org/ADOL-C/"

if [[ ${PV} == *9999 ]]; then
	inherit git-r3
	EGIT_REPO_URI="https://github.com/coin-or/ADOL-C"
else
	SRC_URI="https://github.com/coin-or/ADOL-C/archive/releases/${PV}.tar.gz -> ${P}.tar.gz"
	SRC_URI+=" https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${PN}-2.7.2-patches.tar.bz2"
	KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~ppc ppc64 ~riscv ~x86 ~amd64-linux ~x86-linux"
	S="${WORKDIR}/ADOL-C-releases-${PV}"
fi

LICENSE="|| ( EPL-1.0 GPL-2 )"
SLOT="0/2"
IUSE="+boost mpi sparse"

RDEPEND="
	boost? ( dev-libs/boost:= )
	mpi? ( sys-cluster/ampi:0= )
	sparse? ( sci-libs/colpack:0= )"
DEPEND="${RDEPEND}"

PATCHES=(
	"${WORKDIR}"/${PN}-2.5.0-no-colpack.patch
	"${WORKDIR}"/${PN}-2.5.0-pkgconfig-no-ldflags.patch
	"${WORKDIR}"/${PN}-2.6.2-dash.patch
	"${WORKDIR}"/${P}-swig-python-configure.patch
)

src_prepare() {
	default
	eautoreconf
}

src_configure() {
	# Disabling Python for now because swig build
	# needs work. Revisit with >=2.7.3.
	# https://bugs.gentoo.org/730750
	# https://github.com/coin-or/ADOL-C/issues/20
	# Can drop CONFIG_SHELL once fixed up dash/bashisms patch
	CONFIG_SHELL="${BROOT}/bin/bash" econf \
		--disable-python \
		--disable-static \
		--enable-advanced-branching \
		--enable-atrig-erf \
		$(use_enable mpi ampi) \
		$(use_enable sparse) \
		$(use_with boost) \
		$(use_with sparse colpack "${EPREFIX}"/usr)
}

src_test() {
	# 'check' target is unrelated to checking lib works
	# ('check' is more like distcheck)
	emake test
}

src_install() {
	default
	find "${ED}" -name '*.la' -delete || die
}