blob: 5b4720211a8ad3dabc1dc8afa9763326d0ba2336 (
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
70
71
72
|
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools flag-o-matic
DESCRIPTION="The Parma Polyhedra Library for numerical analysis of complex systems"
HOMEPAGE="http://bugseng.com/products/ppl"
SRC_URI="http://bugseng.com/products/ppl/download/ftp/releases/${PV}/${P}.tar.xz
https://dev.gentoo.org/~juippis/distfiles/tmp/${P}-r3-disable-boeing-tests.patch"
LICENSE="GPL-3"
SLOT="0/4.14" # SONAMEs
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux"
IUSE="cdd +cxx doc lpsol pch test"
RDEPEND=">=dev-libs/gmp-6[cxx(+)]
lpsol? ( sci-mathematics/glpk )"
DEPEND="${RDEPEND}
app-arch/xz-utils
sys-devel/m4"
RESTRICT="!test? ( test )"
PATCHES=(
"${FILESDIR}/disable-mipproblem2.patch"
"${FILESDIR}/disable-containsintegerpoint1.patch"
"${DISTDIR}/ppl-1.2-r3-disable-boeing-tests.patch"
"${FILESDIR}/fix-clang-build.patch"
)
src_prepare() {
default
# The patch should do this, but then the diff makes it run
# afoul of the Gentoo patch size limit.
rm demos/ppl_lpsol/examples/boeing[12].mps || die
eautoreconf
}
src_configure() {
# mem_fun_ref and friends were removed in c++17, and some toolchains
# are beginning to default to that (bug 919850).
append-cxxflags -std=c++14
local interfaces=( c )
use cxx && interfaces+=( cxx )
econf \
--disable-debugging \
--disable-optimization \
$(use_enable doc documentation) \
$(use_enable cdd ppl_lcdd) \
$(use_enable lpsol ppl_lpsol) \
$(use_enable pch) \
--enable-interfaces="${interfaces[*]}" \
$(use test && echo --enable-check=quick)
}
src_install() {
default
find "${ED}" -type f -name '*.la' -delete || die
pushd "${ED}/usr/share/doc/${PF}" >/dev/null || die
rm gpl* fdl* || die # Redundant license texts
rm *.ps.gz || die # Each ps.gz has a pdf counterpart
if ! use doc ; then
rm -r *-html/ *.pdf || die
fi
}
|