diff options
author | Patrick Lauer <patrick@gentoo.org> | 2013-01-08 05:48:00 +0000 |
---|---|---|
committer | Patrick Lauer <patrick@gentoo.org> | 2013-01-08 05:48:00 +0000 |
commit | f1c5144b87fe9654f5ca1251d8cef60cde871ade (patch) | |
tree | 9b4ff35297608ead579d8ad331052c74049e46b8 /dev-libs/ppl | |
parent | fix llvm deps (bug #450786), python dep, remove old (diff) | |
download | gentoo-2-f1c5144b87fe9654f5ca1251d8cef60cde871ade.tar.gz gentoo-2-f1c5144b87fe9654f5ca1251d8cef60cde871ade.tar.bz2 gentoo-2-f1c5144b87fe9654f5ca1251d8cef60cde871ade.zip |
Adding patch to make things work with gmp-5.1, #447928
(Portage version: 2.2.0_alpha149/cvs/Linux x86_64, unsigned Manifest commit)
Diffstat (limited to 'dev-libs/ppl')
-rw-r--r-- | dev-libs/ppl/ChangeLog | 11 | ||||
-rw-r--r-- | dev-libs/ppl/files/ppl-fix-gmp-5.1.0.patch | 41 | ||||
-rw-r--r-- | dev-libs/ppl/ppl-0.12.1-r1.ebuild | 85 |
3 files changed, 134 insertions, 3 deletions
diff --git a/dev-libs/ppl/ChangeLog b/dev-libs/ppl/ChangeLog index f89746166352..7adf4009f504 100644 --- a/dev-libs/ppl/ChangeLog +++ b/dev-libs/ppl/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for dev-libs/ppl -# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/ppl/ChangeLog,v 1.51 2012/04/29 06:51:32 dirtyepic Exp $ +# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/dev-libs/ppl/ChangeLog,v 1.52 2013/01/08 05:48:00 patrick Exp $ + +*ppl-0.12.1-r1 (08 Jan 2013) + + 08 Jan 2013; Patrick Lauer <patrick@gentoo.org> + +files/ppl-fix-gmp-5.1.0.patch, +ppl-0.12.1-r1.ebuild: + Adding patch to make things work with gmp-5.1, #447928 *ppl-0.12.1 (29 Apr 2012) @@ -199,4 +205,3 @@ 21 Sep 2008; Mike Frysinger <vapier@gentoo.org> +ppl-0.10_pre27.ebuild: Initial ebuild based on work from Zhang Le for gcc-4.4+. - diff --git a/dev-libs/ppl/files/ppl-fix-gmp-5.1.0.patch b/dev-libs/ppl/files/ppl-fix-gmp-5.1.0.patch new file mode 100644 index 000000000000..ff2423e93c79 --- /dev/null +++ b/dev-libs/ppl/files/ppl-fix-gmp-5.1.0.patch @@ -0,0 +1,41 @@ +--- src/p_std_bits.cc.org 2012-12-30 00:37:03.033948083 +0100 ++++ src/mp_std_bits.cc 2012-12-30 00:44:12.893019313 +0100 +@@ -25,6 +25,9 @@ + #include "ppl-config.h" + #include "mp_std_bits.defs.hh" + ++#if __GNU_MP_VERSION < 5 \ ++ || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1) ++ + const bool std::numeric_limits<mpz_class>::is_specialized; + const int std::numeric_limits<mpz_class>::digits; + const int std::numeric_limits<mpz_class>::digits10; +@@ -70,3 +73,6 @@ + const bool std::numeric_limits<mpq_class>::traps; + const bool std::numeric_limits<mpq_class>::tininess_before; + const std::float_round_style std::numeric_limits<mpq_class>::round_style; ++ ++#endif // __GNU_MP_VERSION < 5 ++ // || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1) +--- src/mp_std_bits.defs.hh.org 2012-12-30 00:37:03.037948187 +0100 ++++ src/mp_std_bits.defs.hh 2012-12-30 00:42:32.002424189 +0100 +@@ -38,6 +38,9 @@ + #endif // defined(PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS) + void swap(mpq_class& x, mpq_class& y); + ++#if __GNU_MP_VERSION < 5 \ ++ || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1) ++ + namespace std { + + #ifdef PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS +@@ -164,6 +167,9 @@ + + } // namespace std + ++#endif // __GNU_MP_VERSION < 5 ++ // || (__GNU_MP_VERSION == 5 && __GNU_MP_VERSION_MINOR < 1) ++ + #include "mp_std_bits.inlines.hh" + + #endif // !defined(PPL_mp_std_bits_defs_hh) diff --git a/dev-libs/ppl/ppl-0.12.1-r1.ebuild b/dev-libs/ppl/ppl-0.12.1-r1.ebuild new file mode 100644 index 000000000000..5e9f20c2c2a1 --- /dev/null +++ b/dev-libs/ppl/ppl-0.12.1-r1.ebuild @@ -0,0 +1,85 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-libs/ppl/ppl-0.12.1-r1.ebuild,v 1.1 2013/01/08 05:48:00 patrick Exp $ + +EAPI="3" + +inherit eutils + +DESCRIPTION="The Parma Polyhedra Library provides numerical abstractions for analysis of complex systems" +HOMEPAGE="http://bugseng.com/products/ppl" +SRC_URI="http://bugseng.com/products/ppl/download/ftp/releases/${PV}/${P}.tar.bz2" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~sparc-solaris" +IUSE="doc lpsol pch static-libs test" + +RDEPEND=">=dev-libs/gmp-4.1.3[cxx] + lpsol? ( sci-mathematics/glpk ) + !<dev-libs/cloog-ppl-0.15.10" +DEPEND="${RDEPEND} + sys-devel/m4" + +pkg_setup() { + if use test; then + ewarn "The PPL testsuite will be run." + ewarn "Note that this can take several hours to complete on a fast machine." + epause 3 + fi +} + +src_prepare() { + epatch "${FILESDIR}/ppl-fix-gmp-5.1.0.patch" || dir "Failed to patch" +} + +src_configure() { + econf \ + --docdir="${EPREFIX}"/usr/share/doc/${PF} \ + --disable-debugging \ + --disable-optimization \ + $(use_enable doc documentation) \ + $(use_enable lpsol ppl_lpsol) \ + $(use_enable pch) \ + $(use_enable static-libs static) \ + --enable-interfaces="c cxx" \ + $(use test && echo --enable-check=quick) +} + +src_test() { + # default src_test runs with -j1, overriding it here saves about + # 30 minutes and is recommended by upstream + if emake -j1 check -n &> /dev/null; then + emake check || die "tests failed" + fi +} + +src_install() { + emake DESTDIR="${D}" install || die + use static-libs || rm -f "${D}"/usr/lib*/libppl*.la + + local docsdir="${ED}/usr/share/doc/${PF}" + rm "${docsdir}"/gpl* "${docsdir}"/fdl* || die + + if ! use doc; then + rm -r "${docsdir}"/*-html/ || die + fi + + dodoc NEWS README* STANDARDS TODO +} + +pkg_postinst() { + echo + ewarn "After an upgrade of PPL it is important that you rebuild" + ewarn "dev-libs/cloog-ppl." + ewarn + ewarn "If you use gcc-config to switch to an older compiler version than" + ewarn "the one PPL was built with, PPL must be rebuilt with that version." + ewarn + ewarn "In both cases failure to do this will get you this error when" + ewarn "graphite flags are used:" + ewarn + ewarn " sorry, unimplemented: Graphite loop optimizations cannot be used" + ewarn + echo +} |