summaryrefslogtreecommitdiff
path: root/dev-libs/ppl
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /dev-libs/ppl
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.xz
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'dev-libs/ppl')
-rw-r--r--dev-libs/ppl/Manifest2
-rw-r--r--dev-libs/ppl/files/ppl-fix-gmp-5.1.0.patch41
-rw-r--r--dev-libs/ppl/metadata.xml8
-rw-r--r--dev-libs/ppl/ppl-0.12.1-r1.ebuild84
-rw-r--r--dev-libs/ppl/ppl-1.1.ebuild60
5 files changed, 195 insertions, 0 deletions
diff --git a/dev-libs/ppl/Manifest b/dev-libs/ppl/Manifest
new file mode 100644
index 00000000000..fcf76d38880
--- /dev/null
+++ b/dev-libs/ppl/Manifest
@@ -0,0 +1,2 @@
+DIST ppl-0.12.1.tar.bz2 14938132 SHA256 4022e54772f81c8ef66d3dd4c3d8dca48f72f9af614d8a36d05fbf5917f2b198 SHA512 e8a4c92271f608e79c5828c71ff2d36c681dd4bd48b5d31353b2a27bcf827a5cb8f0dcdfee3e13cf9f202f35a7693ddf9880dc4d5b8445ec558cef1319f43925 WHIRLPOOL 6616253d5c02c84294ec63e0601fa7bc65772fc72e6cea68f1300fa2b46f551311589813268d8e869cb59295d8fdc5be17a5b3d0cbb7b62fe0bc06a8bf9e1f39
+DIST ppl-1.1.tar.xz 14734820 SHA256 c48ccd74664ec2cd3cdb5e37f287974ccb062f0384dc658d4053c424b19ad178 SHA512 ae0503fb3eac494fa3edf5d5c9ec61e2419e6e2fa57d30323f7d0360ff080b033686410c7462f5b2ff5514803451cb91e9c0fc14cf953485c5f5fd664448cc27 WHIRLPOOL d1b85fe9b44195f7fdc0573b32291a70183ce9de5e29fbb502a5d181a6e0ae11998dd5cfb52ec7ce3e1aed36433a823484488bfaf93362ac3b45a7556a2e9b6a
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 00000000000..ff2423e93c7
--- /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/metadata.xml b/dev-libs/ppl/metadata.xml
new file mode 100644
index 00000000000..f109b1b3feb
--- /dev/null
+++ b/dev-libs/ppl/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>toolchain</herd>
+<use>
+ <flag name='lpsol'>Build the ppl_lpsol linear programming problem solver</flag>
+</use>
+</pkgmetadata>
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 00000000000..a28652f7f7c
--- /dev/null
+++ b/dev-libs/ppl/ppl-0.12.1-r1.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+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 arm64 ~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-4.48 )
+ !<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."
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/ppl-fix-gmp-5.1.0.patch" || die "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
+}
diff --git a/dev-libs/ppl/ppl-1.1.ebuild b/dev-libs/ppl/ppl-1.1.ebuild
new file mode 100644
index 00000000000..58a2abe9db2
--- /dev/null
+++ b/dev-libs/ppl/ppl-1.1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+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.xz"
+
+LICENSE="GPL-3"
+SLOT="0/4.13" # SONAMEs
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~sparc-solaris"
+IUSE="+cxx doc lpsol pch static-libs test"
+
+RDEPEND=">=dev-libs/gmp-6[cxx]
+ lpsol? ( sci-mathematics/glpk )
+ !dev-libs/cloog-ppl"
+DEPEND="${RDEPEND}
+ app-arch/xz-utils
+ 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."
+ fi
+}
+
+src_configure() {
+ local interfaces=( c )
+ use cxx && interfaces+=( cxx )
+ 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="${interfaces[*]}" \
+ $(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
+ emake check
+}
+
+src_install() {
+ default
+ use static-libs || find "${ED}"/usr -name 'libppl*.la' -delete
+
+ pushd "${ED}/usr/share/doc/${PF}" >/dev/null || die
+ rm gpl* fdl* || die
+ if ! use doc; then
+ rm -r *-html/ *.ps.gz *.pdf || die
+ fi
+}