blob: 15c338b4f15af038c560a6749378f3dcc92ac316 (
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
73
74
75
76
77
78
79
80
81
|
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI=5
PYTHON_COMPAT=( python2_7 )
inherit autotools flag-o-matic git-r3 python-r1 toolchain-funcs
DESCRIPTION="An efficient theorem prover"
HOMEPAGE="http://z3.codeplex.com/"
SRC_URI=""
EGIT_REPO_URI="https://git01.codeplex.com/z3"
SLOT="0"
LICENSE="MSR-LA"
KEYWORDS=""
IUSE="gmp"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RDEPEND="${PYTHON_DEPS}
gmp? ( dev-libs/gmp )"
# A new curl is needed because codeplex has a bug and early version of libcurl
# will cause a failed git clone.
DEPEND="${RDEPEND}
>=net-misc/curl-7.33"
EGIT_NONSHALLOW=1
pkg_setup() {
if [[ ${MERGE_TYPE} != binary ]]; then
if [[ $(tc-getCXX)$ == *g++* ]] && ! tc-has-openmp; then
ewarn "Please use an openmp compatible compiler"
ewarn "like >gcc-4.2 with USE=openmp"
die "Openmp support missing in compiler"
fi
fi
}
src_prepare() {
sed \
-e 's:-O3::g' \
-e 's:-fomit-frame-pointer::' \
-e 's:-msse2::g' \
-e 's:-msse::g' \
-e "/LINK_EXTRA_FLAGS/s:@LDFLAGS@:-lrt $(usex gmp -lgmp):g" \
-e 's:t@\$:t\$:g' \
-i scripts/*mk* || die
append-ldflags -fopenmp
eautoreconf
}
src_configure() {
python_export_best
econf \
--host="" \
--with-python="${PYTHON}" \
$(use_with gmp) \
SLIBFLAGS=" -Wl,-soname,lib${PN}.so.0.1 "
${EPYTHON} scripts/mk_make.py || die
}
src_compile() {
emake \
--directory="build" \
CXX=$(tc-getCXX) \
LINK="$(tc-getCXX) ${LDFLAGS}" \
LINK_FLAGS="${LDFLAGS}"
}
src_install() {
doheader src/api/z3*.h src/api/c++/z3*.h
dolib.so build/*.so
dobin build/z3
python_foreach_impl python_domodule src/api/python/*.py
}
|