summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Strogin <steils@gentoo.org>2021-11-20 14:45:01 +0200
committerStefan Strogin <steils@gentoo.org>2021-11-20 12:46:01 +0000
commit3fd2d18f2c2c65b3b4e98b09c1ef73c3f93cc366 (patch)
tree4a3b06763092dbd9598311d23a44405defa6eea4 /games-engines/openmw
parentwww-client/seamonkey: Drop package (diff)
downloadgentoo-3fd2d18f2c2c65b3b4e98b09c1ef73c3f93cc366.tar.gz
gentoo-3fd2d18f2c2c65b3b4e98b09c1ef73c3f93cc366.tar.bz2
gentoo-3fd2d18f2c2c65b3b4e98b09c1ef73c3f93cc366.zip
games-engines/openmw: add patch for glibc-2.34
Package-Manager: Portage-3.0.28, Repoman-3.0.3 Signed-off-by: Stefan Strogin <steils@gentoo.org>
Diffstat (limited to 'games-engines/openmw')
-rw-r--r--games-engines/openmw/files/openmw-0.47.0-sigstksz.patch42
-rw-r--r--games-engines/openmw/openmw-0.47.0-r1.ebuild (renamed from games-engines/openmw/openmw-0.47.0.ebuild)1
2 files changed, 43 insertions, 0 deletions
diff --git a/games-engines/openmw/files/openmw-0.47.0-sigstksz.patch b/games-engines/openmw/files/openmw-0.47.0-sigstksz.patch
new file mode 100644
index 000000000000..588d6d639726
--- /dev/null
+++ b/games-engines/openmw/files/openmw-0.47.0-sigstksz.patch
@@ -0,0 +1,42 @@
+From 98a7d90ee258ceef9c70b0b2955d0458ec46f048 Mon Sep 17 00:00:00 2001
+From: elsid <elsid.mail@gmail.com>
+Date: Fri, 24 Sep 2021 19:40:29 +0200
+Subject: [PATCH] Assume SIGSTKSZ is not a constant
+
+SIGSTKSZ is not defined as constant since glibc 2.34:
+https://sourceware.org/git/?p=glibc.git;a=commit;h=6c57d320484988e87e446e2e60ce42816bf51d53
+
+Upstream-Status: Submitted
+[https://gitlab.com/OpenMW/openmw/-/merge_requests/1239]
+---
+ components/crashcatcher/crashcatcher.cpp | 5 ++---
+ 1 file changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/components/crashcatcher/crashcatcher.cpp b/components/crashcatcher/crashcatcher.cpp
+index 86571e1e3a..c828e1ca81 100644
+--- a/components/crashcatcher/crashcatcher.cpp
++++ b/components/crashcatcher/crashcatcher.cpp
+@@ -56,8 +56,6 @@ static const char exec_err[] = "!!! Failed to exec debug process\n";
+
+ static char argv0[PATH_MAX];
+
+-static char altstack[SIGSTKSZ];
+-
+
+ static struct {
+ int signum;
+@@ -475,9 +473,10 @@ int crashCatcherInstallHandlers(int argc, char **argv, int num_signals, int *sig
+
+ /* Set an alternate signal stack so SIGSEGVs caused by stack overflows
+ * still run */
++ static char* altstack = new char [SIGSTKSZ];
+ altss.ss_sp = altstack;
+ altss.ss_flags = 0;
+- altss.ss_size = sizeof(altstack);
++ altss.ss_size = SIGSTKSZ;
+ sigaltstack(&altss, nullptr);
+
+ memset(&sa, 0, sizeof(sa));
+--
+GitLab
+
diff --git a/games-engines/openmw/openmw-0.47.0.ebuild b/games-engines/openmw/openmw-0.47.0-r1.ebuild
index 2ee105fb1152..50a651650fba 100644
--- a/games-engines/openmw/openmw-0.47.0.ebuild
+++ b/games-engines/openmw/openmw-0.47.0-r1.ebuild
@@ -63,6 +63,7 @@ BDEPEND="
PATCHES=(
"${FILESDIR}"/openmw-0.47.0-mygui-license.patch
+ "${FILESDIR}"/openmw-0.47.0-sigstksz.patch
)
src_prepare() {