summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Levine <plevine457@gmail.com>2017-05-28 18:16:54 -0400
committerDavid Seifert <soap@gentoo.org>2017-06-02 08:58:37 +0200
commit8aeb28a1a899987c2556491da2fe2eaff6a141a8 (patch)
tree2ab9a55e24d2de3708f958f2f4d1e41e76d6aea4
parentnet-wireless/yatebts: Fix building with GCC-6 (diff)
downloadgentoo-8aeb28a1a899987c2556491da2fe2eaff6a141a8.tar.gz
gentoo-8aeb28a1a899987c2556491da2fe2eaff6a141a8.tar.bz2
gentoo-8aeb28a1a899987c2556491da2fe2eaff6a141a8.zip
sci-physics/reduze: Fix building with GCC-6
Bug: https://bugs.gentoo.org/show_bug.cgi?id=594900 Package-Manager: Portage-2.3.6, Repoman-2.3.2 Closes: https://github.com/gentoo/gentoo/pull/4796
-rw-r--r--sci-physics/reduze/files/reduze-2.0.9-gcc6.patch58
-rw-r--r--sci-physics/reduze/files/reduze-2.1-gcc6.patch29
-rw-r--r--sci-physics/reduze/reduze-2.0.9.ebuild4
-rw-r--r--sci-physics/reduze/reduze-2.1.ebuild4
4 files changed, 93 insertions, 2 deletions
diff --git a/sci-physics/reduze/files/reduze-2.0.9-gcc6.patch b/sci-physics/reduze/files/reduze-2.0.9-gcc6.patch
new file mode 100644
index 00000000000..9864163cdec
--- /dev/null
+++ b/sci-physics/reduze/files/reduze-2.0.9-gcc6.patch
@@ -0,0 +1,58 @@
+--- a/reduze/amplitude.cpp
++++ b/reduze/amplitude.cpp
+@@ -782,7 +782,7 @@
+
+ ex resultLeadingNc = result;
+ for (exset::const_iterator it = found.begin(); it != found.end(); ++it) {
+- VERIFY(is_a<function>(*it) && ex_to<function>(*it).get_name() == "Color");
++ VERIFY(is_a<GiNaC::function>(*it) && ex_to<GiNaC::function>(*it).get_name() == "Color");
+ VERIFY(is_a<lst>(it->op(0)));
+ ex res(1);
+ for (size_t i = 0; i < it->op(0).nops(); ++i)
+@@ -823,7 +823,7 @@
+ timer.restart();
+ exmap m;
+ for (exset::const_iterator it = found.begin(); it != found.end(); ++it) {
+- VERIFY(is_a<function>(*it) && ex_to<function>(*it).get_name() == "Lorentz");
++ VERIFY(is_a<GiNaC::function>(*it) && ex_to<GiNaC::function>(*it).get_name() == "Lorentz");
+ VERIFY(is_a<lst>(it->op(0)));
+
+ ex res(1);
+--- a/reduze/files.cpp
++++ b/reduze/files.cpp
+@@ -420,7 +420,7 @@
+ get_filename_sectormappings(m.integralfamily()->name());
+ ofstream file(file_name.c_str());
+ if (!file)
+- ABORT("Can't write to " << file);
++ ABORT("Can't write to " << file_name);
+ os << YAML::BeginMap << YAML::Key << "sectormappings" << YAML::Value;
+ os << m << YAML::EndMap;
+ file << os.c_str();
+@@ -617,7 +617,7 @@
+
+ bool is_readable_file(const string& filename) {
+ ifstream is(filename.c_str());
+- bool ok = is;
++ bool ok = !is.fail();
+ is.close();
+ return ok;
+ }
+--- a/reduze/sectormappings.cpp
++++ b/reduze/sectormappings.cpp
+@@ -757,13 +757,13 @@
+ const Node& z_node = node["zero_sectors"];
+ for (Iterator n = z_node.begin(); n != z_node.end(); ++n)
+ for (Iterator s = n.second().begin(); s != n.second().end(); ++s)
+- m.zero_sectors_.insert(*s);
++ m.zero_sectors_.insert((const int) *s);
+
+ if (node.FindValue("sectors_without_graph")) {
+ const Node& ng_node = node["sectors_without_graph"];
+ for (Iterator n = ng_node.begin(); n != ng_node.end(); ++n)
+ for (Iterator s = n.second().begin(); s != n.second().end(); ++s)
+- m.sectors_without_graph_.insert(*s);
++ m.sectors_without_graph_.insert((const int) *s);
+ }
+
+ const Node& rel_node = node["sector_relations"];
diff --git a/sci-physics/reduze/files/reduze-2.1-gcc6.patch b/sci-physics/reduze/files/reduze-2.1-gcc6.patch
new file mode 100644
index 00000000000..3b347ef413c
--- /dev/null
+++ b/sci-physics/reduze/files/reduze-2.1-gcc6.patch
@@ -0,0 +1,29 @@
+--- a/reduze/files.cpp
++++ b/reduze/files.cpp
+@@ -723,7 +723,7 @@
+ string file_name_tmp = file_name + ".tmp";
+ ofstream file(file_name_tmp.c_str());
+ if (!file)
+- ABORT("Can't write to " << file);
++ ABORT("Can't write to " << file_name_tmp);
+ Emitter os;
+ os << BeginMap;
+ os << Key << "crossings" << Value;
+@@ -752,7 +752,7 @@
+ string file_name_tmp = file_name + ".tmp";
+ ofstream file(file_name_tmp.c_str());
+ if (!file)
+- ABORT("Can't write to " << file);
++ ABORT("Can't write to " << file_name_tmp);
+ os << YAML::BeginMap << YAML::Key << "sectormappings" << YAML::Value;
+ os << m << YAML::EndMap;
+ file << os.c_str();
+@@ -1036,7 +1036,7 @@
+
+ bool is_readable_file(const string& filename) {
+ ifstream is(filename.c_str());
+- bool ok = is;
++ bool ok = !is.fail();
+ is.close();
+ return ok && !is_readable_directory(filename);
+ }
diff --git a/sci-physics/reduze/reduze-2.0.9.ebuild b/sci-physics/reduze/reduze-2.0.9.ebuild
index 1055762ebeb..3c0713e8e16 100644
--- a/sci-physics/reduze/reduze-2.0.9.ebuild
+++ b/sci-physics/reduze/reduze-2.0.9.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2013 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -25,6 +25,8 @@ DEPEND="${RDEPEND}
DOCS=( ChangeLog README )
src_prepare() {
+ epatch "${FILESDIR}"/${P}-gcc6.patch
+
# gentoo doc directory
sed -i \
-e "s:share/reduze:share/doc/${PF}:g" \
diff --git a/sci-physics/reduze/reduze-2.1.ebuild b/sci-physics/reduze/reduze-2.1.ebuild
index 9e78238cc71..ad6f52292b4 100644
--- a/sci-physics/reduze/reduze-2.1.ebuild
+++ b/sci-physics/reduze/reduze-2.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -22,6 +22,8 @@ DEPEND="${RDEPEND}
virtual/pkgconfig
doc? ( app-doc/doxygen )"
+PATCHES=( "${FILESDIR}"/${P}-gcc6.patch )
+
src_prepare() {
cmake-utils_src_prepare
# gentoo doc directory