Gentoo Archives: gentoo-commits

From: David Seifert <soap@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-mathematics/gfan/files/, sci-mathematics/gfan/
Date: Sat, 22 Jun 2019 21:07:28
Message-Id: 1561237617.07e2fbfa818eaa409bc74f90e7c09ced0736b5ec.soap@gentoo
1 commit: 07e2fbfa818eaa409bc74f90e7c09ced0736b5ec
2 Author: David Seifert <soap <AT> gentoo <DOT> org>
3 AuthorDate: Sat Jun 22 21:06:57 2019 +0000
4 Commit: David Seifert <soap <AT> gentoo <DOT> org>
5 CommitDate: Sat Jun 22 21:06:57 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=07e2fbfa
7
8 sci-mathematics/gfan: Fix building against GCC 9
9
10 Closes: https://bugs.gentoo.org/686484
11 Package-Manager: Portage-2.3.67, Repoman-2.3.15
12 Signed-off-by: David Seifert <soap <AT> gentoo.org>
13
14 sci-mathematics/gfan/files/gfan-0.5-fix-gcc9.patch | 68 ++++++++++++++++++++++
15 sci-mathematics/gfan/gfan-0.5-r1.ebuild | 1 +
16 2 files changed, 69 insertions(+)
17
18 diff --git a/sci-mathematics/gfan/files/gfan-0.5-fix-gcc9.patch b/sci-mathematics/gfan/files/gfan-0.5-fix-gcc9.patch
19 new file mode 100644
20 index 00000000000..930baf9edcf
21 --- /dev/null
22 +++ b/sci-mathematics/gfan/files/gfan-0.5-fix-gcc9.patch
23 @@ -0,0 +1,68 @@
24 +https://bugs.gentoo.org/686484
25 +
26 +polyhedralfan.h: At global scope:
27 +polyhedralfan.h:77:24: error: friend declaration of ‘PolyhedralFan refinement(const PolyhedralFan&, const PolyhedralFan&, int, bool)’ specifies default arguments and isn’t a definition [-fpermissive]
28 + 77 | friend PolyhedralFan refinement(const PolyhedralFan &a, const PolyhedralFan &b, int cutOffDimension=-1, bool allowASingleConeOfCutOffDimension=false);
29 + | ^~~~~~~~~~
30 +
31 +--- a/gfanlib_polyhedralfan.h
32 ++++ b/gfanlib_polyhedralfan.h
33 +@@ -24,6 +24,8 @@
34 + typedef std::map<int,IntVectorList> IncidenceList;
35 +
36 +
37 ++class PolyhedralFan;
38 ++PolyhedralFan refinement(const PolyhedralFan &a, const PolyhedralFan &b, int cutOffDimension=-1, bool allowASingleConeOfCutOffDimension=false);
39 +
40 + /** A PolyhedralFan is simply a collection of canonicalized PolyhedralCones.
41 + * It contains no combinatorial information in the sense of a polyhedral complex.
42 +@@ -52,7 +54,7 @@
43 + int getAmbientDimension()const;
44 + int getMaxDimension()const;
45 + int getMinDimension()const;
46 +- friend PolyhedralFan refinement(const PolyhedralFan &a, const PolyhedralFan &b, int cutOffDimension=-1, bool allowASingleConeOfCutOffDimension=false);
47 ++ friend PolyhedralFan refinement(const PolyhedralFan &a, const PolyhedralFan &b, int cutOffDimension, bool allowASingleConeOfCutOffDimension);
48 + ZMatrix getRays(int dim=1);//This can be called for other dimensions than 1. The term "Rays" still makes sense modulo the common linearity space
49 + ZMatrix getRelativeInteriorPoints();
50 + void insert(ZCone const &c);
51 +--- a/halfopencone.h
52 ++++ b/halfopencone.h
53 +@@ -6,6 +6,9 @@
54 +
55 + #include "polyhedralfan.h"
56 +
57 ++class HalfOpenCone;
58 ++HalfOpenCone intersection(const HalfOpenCone &a, const HalfOpenCone &b, bool findFacets=false);
59 ++
60 + class HalfOpenCone{
61 + static void appendList(IntegerVectorList &to, IntegerVectorList const &from, int appendValue);
62 + int liftedDimension;//ambient
63 +@@ -18,7 +21,7 @@
64 + HalfOpenCone(int dimension_, IntegerVectorList const &equations, IntegerVectorList const &nonstrict, IntegerVectorList const &strict, bool findFacets=false, bool canonicalize=false);
65 + HalfOpenCone(int ambientDimension);//full space
66 + bool isEmpty();
67 +- friend HalfOpenCone intersection(const HalfOpenCone &a, const HalfOpenCone &b, bool findFacets=false);
68 ++ friend HalfOpenCone intersection(const HalfOpenCone &a, const HalfOpenCone &b, bool findFacets);
69 + friend bool haveEmptyIntersection(const HalfOpenCone &a, const HalfOpenCone &b);
70 + PolyhedralCone closure();
71 + void splitIntoRelativelyOpenCones(list<HalfOpenCone> &l);
72 +--- a/polyhedralfan.h
73 ++++ b/polyhedralfan.h
74 +@@ -30,6 +30,8 @@
75 + FPF_default=2+4+8
76 + };
77 +
78 ++class PolyhedralFan;
79 ++PolyhedralFan refinement(const PolyhedralFan &a, const PolyhedralFan &b, int cutOffDimension=-1, bool allowASingleConeOfCutOffDimension=false);
80 +
81 + /** A PolyhedralFan is simply a collection of canonicalized PolyhedralCones.
82 + * It contains no combinatorial information in the sense of a polyhedral complex.
83 +@@ -74,7 +76,7 @@
84 + int getAmbientDimension()const;
85 + int getMaxDimension()const;
86 + int getMinDimension()const;
87 +- friend PolyhedralFan refinement(const PolyhedralFan &a, const PolyhedralFan &b, int cutOffDimension=-1, bool allowASingleConeOfCutOffDimension=false);
88 ++ friend PolyhedralFan refinement(const PolyhedralFan &a, const PolyhedralFan &b, int cutOffDimension, bool allowASingleConeOfCutOffDimension);
89 + friend PolyhedralFan product(const PolyhedralFan &a, const PolyhedralFan &b);
90 + IntegerVectorList getRays(int dim=1);//This can be called for other dimensions than 1. The term "Rays" still makes sense modulo the common linearity space
91 + IntegerVectorList getRelativeInteriorPoints();
92
93 diff --git a/sci-mathematics/gfan/gfan-0.5-r1.ebuild b/sci-mathematics/gfan/gfan-0.5-r1.ebuild
94 index 5d1d84e462a..1cd8c95fbec 100644
95 --- a/sci-mathematics/gfan/gfan-0.5-r1.ebuild
96 +++ b/sci-mathematics/gfan/gfan-0.5-r1.ebuild
97 @@ -24,6 +24,7 @@ PATCHES=(
98 "${FILESDIR}"/${P}-double-declare-fix.patch
99 "${FILESDIR}"/${P}-gcc6.1-compat.patch
100 "${FILESDIR}"/${P}-fix-build-system.patch
101 + "${FILESDIR}"/${P}-fix-gcc9.patch
102 )
103
104 src_configure() {