aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sci-libs/trilinos/files/trilinos-12.10.1-fix_gcc_7.patch57
-rw-r--r--sci-libs/trilinos/trilinos-12.10.1-r1.ebuild3
2 files changed, 59 insertions, 1 deletions
diff --git a/sci-libs/trilinos/files/trilinos-12.10.1-fix_gcc_7.patch b/sci-libs/trilinos/files/trilinos-12.10.1-fix_gcc_7.patch
new file mode 100644
index 0000000..cb005cb
--- /dev/null
+++ b/sci-libs/trilinos/files/trilinos-12.10.1-fix_gcc_7.patch
@@ -0,0 +1,57 @@
+diff --git a/packages/stk/stk_util/stk_util/diag/StringUtil.cpp b/packages/stk/stk_util/stk_util/diag/StringUtil.cpp
+index eb9c7c1..942cfad 100644
+--- a/packages/stk/stk_util/stk_util/diag/StringUtil.cpp
++++ b/packages/stk/stk_util/stk_util/diag/StringUtil.cpp
+@@ -40,7 +40,7 @@
+ #include <string> // for basic_string, string, etc
+ #include "stk_util/diag/String.hpp" // for String
+
+-#if __GNUC__ == 3 || __GNUC__ == 4 || __GNUC__ == 5 || __GNUC__ == 6
++#if __GNUC__ == 3 || __GNUC__ == 4 || __GNUC__ == 5 || __GNUC__ == 6 || __GNUC__ == 7
+ #include <cxxabi.h>
+ #endif
+
+@@ -314,7 +314,7 @@ word_wrap(
+ #endif
+ }
+
+- #elif (__GNUC__ == 5)
++ #elif (__GNUC__ >= 5)
+ std::string
+ demangle(const char * symbol)
+ {
+@@ -338,33 +338,8 @@ word_wrap(
+ return s;
+ #endif
+ }
+-
+- #elif (__GNUC__ == 6)
+- std::string
+- demangle(const char * symbol)
+- {
+- #ifdef PURIFY_BUILD
+- return symbol;
+- #else
+- std::string s;
+-
+- int status = -1;
+-
+- char *demangled_symbol = abi::__cxa_demangle(symbol, 0, 0, &status);
+
+- if (demangled_symbol) {
+- s = std::string(demangled_symbol);
+- free(demangled_symbol);
+- }
+-
+- if (status != 0)
+- s = std::string(symbol);
+-
+- return s;
+- #endif
+- }
+-
+- #endif // (__GNUC__ == 3)
++ #endif
+
+ #else
+
diff --git a/sci-libs/trilinos/trilinos-12.10.1-r1.ebuild b/sci-libs/trilinos/trilinos-12.10.1-r1.ebuild
index f577e1f..b43aaba 100644
--- a/sci-libs/trilinos/trilinos-12.10.1-r1.ebuild
+++ b/sci-libs/trilinos/trilinos-12.10.1-r1.ebuild
@@ -85,7 +85,8 @@ trilinos_enable() {
src_prepare() {
epatch "${FILESDIR}"/${PN}-11.14.1-fix-install-paths.patch \
"${FILESDIR}"/${P}-fix_install_paths_for_destdir.patch \
- "${FILESDIR}"/${P}-fix_install_paths_for_destdir-2.patch
+ "${FILESDIR}"/${P}-fix_install_paths_for_destdir-2.patch \
+ "${FILESDIR}"/${P}-fix_gcc_7.patch
epatch_user
}