diff options
author | Justin Lecher <jlec@gentoo.org> | 2013-12-02 17:16:56 +0100 |
---|---|---|
committer | Justin Lecher <jlec@gentoo.org> | 2013-12-02 17:16:56 +0100 |
commit | d5bc424a65eca8d0a8097971559084c66ff42a14 (patch) | |
tree | 1e9ef895b08aa7c7da0692a6e58a98283ba44e17 /sci-mathematics | |
parent | Add MSR-LA (diff) | |
download | sci-d5bc424a65eca8d0a8097971559084c66ff42a14.tar.gz sci-d5bc424a65eca8d0a8097971559084c66ff42a14.tar.bz2 sci-d5bc424a65eca8d0a8097971559084c66ff42a14.zip |
sci-mathematics/z3: Make build verbose; respect CXX, CXXFLAGS, LDFLAGS; use EPYTHON instead of a direct python call; check for openmp compatibility of the c++ compiler; add USE=gmp; drop unnecessary eclass; add missing metadata.xml
Package-Manager: portage-2.2.7
Diffstat (limited to 'sci-mathematics')
-rw-r--r-- | sci-mathematics/z3/ChangeLog | 10 | ||||
-rw-r--r-- | sci-mathematics/z3/metadata.xml | 5 | ||||
-rw-r--r-- | sci-mathematics/z3/z3-4.3.1.ebuild | 47 | ||||
-rw-r--r-- | sci-mathematics/z3/z3-9999.ebuild | 59 |
4 files changed, 103 insertions, 18 deletions
diff --git a/sci-mathematics/z3/ChangeLog b/sci-mathematics/z3/ChangeLog new file mode 100644 index 000000000..a078c2ad6 --- /dev/null +++ b/sci-mathematics/z3/ChangeLog @@ -0,0 +1,10 @@ +# ChangeLog for sci-mathematics/z3 +# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 +# $Header: $ + + 02 Dec 2013; Justin Lecher <jlec@gentoo.org> z3-4.3.1.ebuild, z3-9999.ebuild, + +metadata.xml: + Make build verbose; respect CXX, CXXFLAGS, LDFLAGS; use EPYTHON instead of a + direct python call; check for openmp compatibility of the c++ compiler; add + USE=gmp; drop unnecessary eclass; add missing metadata.xml + diff --git a/sci-mathematics/z3/metadata.xml b/sci-mathematics/z3/metadata.xml new file mode 100644 index 000000000..897aa2e6b --- /dev/null +++ b/sci-mathematics/z3/metadata.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>sci</herd> +</pkgmetadata> diff --git a/sci-mathematics/z3/z3-4.3.1.ebuild b/sci-mathematics/z3/z3-4.3.1.ebuild index 749e8e0e8..adf4f6eda 100644 --- a/sci-mathematics/z3/z3-4.3.1.ebuild +++ b/sci-mathematics/z3/z3-4.3.1.ebuild @@ -6,7 +6,7 @@ EAPI=5 PYTHON_COMPAT=( python2_7 ) -inherit autotools python-r1 vcs-snapshot +inherit autotools flag-o-matic python-r1 toolchain-funcs vcs-snapshot DESCRIPTION="An efficient theorem prover" HOMEPAGE="http://z3.codeplex.com/" @@ -15,28 +15,59 @@ SRC_URI="http://dev.gentoo.org/~jlec/distfiles/${P}.tar.xz" SLOT="0" LICENSE="MSR-LA" KEYWORDS="~amd64 ~x86" -IUSE="" +IUSE="gmp" -RDEPEND="${PYTHON_DEPS}" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND="${PYTHON_DEPS} + gmp? ( dev-libs/gmp )" DEPEND="${RDEPEND}" +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}" - python2 scripts/mk_make.py + 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" + emake \ + --directory="build" \ + CXX=$(tc-getCXX) \ + LINK="$(tc-getCXX) ${LDFLAGS}" \ + LINK_FLAGS="${LDFLAGS}" } src_install() { - doheader src/api/z3*.h - doheader src/api/c++/z3*.h + doheader src/api/z3*.h src/api/c++/z3*.h dolib.so build/*.so dobin build/z3 diff --git a/sci-mathematics/z3/z3-9999.ebuild b/sci-mathematics/z3/z3-9999.ebuild index 434e8667e..15c338b4f 100644 --- a/sci-mathematics/z3/z3-9999.ebuild +++ b/sci-mathematics/z3/z3-9999.ebuild @@ -1,40 +1,79 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + EAPI=5 PYTHON_COMPAT=( python2_7 ) -inherit eutils git-r3 autotools python-r1 +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" -EGIT_NONSHALLOW=1 -KEYWORDS="" SLOT="0" -IUSE="" +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. -RDEPEND="${PYTHON_DEPS}" 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}" - python2 scripts/mk_make.py + 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" + emake \ + --directory="build" \ + CXX=$(tc-getCXX) \ + LINK="$(tc-getCXX) ${LDFLAGS}" \ + LINK_FLAGS="${LDFLAGS}" } src_install() { - doheader src/api/z3*.h - doheader src/api/c++/z3*.h + doheader src/api/z3*.h src/api/c++/z3*.h dolib.so build/*.so dobin build/z3 |