Correct build with gcc 5.0.

This commit is contained in:
pcpa 2015-02-08 18:48:38 -02:00
parent 444b0e8138
commit 61caa950d9
2 changed files with 44 additions and 1 deletions

38
ppl-gcc5.patch Normal file
View File

@ -0,0 +1,38 @@
diff -up ppl-1.1/src/Pointset_Powerset_defs.hh.orig ppl-1.1/src/Pointset_Powerset_defs.hh
--- ppl-1.1/src/Pointset_Powerset_defs.hh.orig 2013-10-28 10:38:33.000000000 -0200
+++ ppl-1.1/src/Pointset_Powerset_defs.hh 2015-02-08 17:33:06.414149334 -0200
@@ -1391,6 +1391,7 @@ template <typename PSET>
bool
check_containment(const PSET& ph, const Pointset_Powerset<PSET>& ps);
+#if __GNUC__ < 5
// CHECKME: according to the Intel compiler, the declaration of the
// following specialization (of the class template parameter) should come
// before the declaration of the corresponding full specialization
@@ -1400,6 +1401,7 @@ template <typename QH>
Pointset_Powerset<NNC_Polyhedron>
::Pointset_Powerset(const Pointset_Powerset<QH>& y,
Complexity_Class);
+#endif
// Non-inline full specializations should be declared here
// so as to inhibit multiple instantiations of the generic template.
diff -up ppl-1.1/src/ppl.hh.dist.orig ppl-1.1/src/ppl.hh.dist
--- ppl-1.1/src/ppl.hh.dist.orig 2015-02-08 17:32:26.594146810 -0200
+++ ppl-1.1/src/ppl.hh.dist 2015-02-08 17:33:11.833149677 -0200
@@ -100618,6 +100618,7 @@ template <typename PSET>
bool
check_containment(const PSET& ph, const Pointset_Powerset<PSET>& ps);
+#if __GNUC__ < 5
// CHECKME: according to the Intel compiler, the declaration of the
// following specialization (of the class template parameter) should come
// before the declaration of the corresponding full specialization
@@ -100627,6 +100628,7 @@ template <typename QH>
Pointset_Powerset<NNC_Polyhedron>
::Pointset_Powerset(const Pointset_Powerset<QH>& y,
Complexity_Class);
+#endif
// Non-inline full specializations should be declared here
// so as to inhibit multiple instantiations of the generic template.

View File

@ -1,6 +1,6 @@
Name: ppl
Version: 1.1
Release: 6%{?dist}
Release: 7%{?dist}
Summary: The Parma Polyhedra Library: a library of numerical abstractions
Group: Development/Libraries
License: GPLv3+
@ -16,6 +16,7 @@ Obsoletes: ppl-pwl <= 0.11.2-11
BuildRequires: gmp-devel >= 4.1.3, m4 >= 1.4.8
Patch0: %{name}-cstddef.patch
Patch1: %{name}-PlLong.patch
Patch2: %{name}-gcc5.patch
%description
The Parma Polyhedra Library (PPL) is a library for the manipulation of
@ -151,6 +152,7 @@ Install this package if you want to program with the PPL.
%setup -q
%patch0 -p1
%patch1 -p1
%patch2 -p1
%build
CPPFLAGS="-I%{_includedir}/glpk"
@ -302,6 +304,9 @@ mv \
%postun -p /sbin/ldconfig
%changelog
* Sun Feb 8 2015 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 1.1-7
- Correct build with gcc 5.0.
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild