From abf3d67d77925516ab3f9d789313fa015de2298d1e1e36ef70f8af7d16869088 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Wed, 8 May 2024 11:37:46 +0000 Subject: [PATCH] - Update more-32bit.patch to fix i586/ILP32 FTBFS. OBS-URL: https://build.opensuse.org/package/show/games/gzdoom?expand=0&rev=112 --- gzdoom.changes | 5 +++++ more-32bit.patch | 38 +++++++++++++++++++++++++++++++++----- 2 files changed, 38 insertions(+), 5 deletions(-) diff --git a/gzdoom.changes b/gzdoom.changes index 9996c55..974e3ae 100644 --- a/gzdoom.changes +++ b/gzdoom.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Wed May 8 11:37:09 UTC 2024 - Jan Engelhardt + +- Update more-32bit.patch to fix i586/ILP32 FTBFS. + ------------------------------------------------------------------- Tue Apr 30 10:40:25 UTC 2024 - Jan Engelhardt diff --git a/more-32bit.patch b/more-32bit.patch index aa94961..d284997 100644 --- a/more-32bit.patch +++ b/more-32bit.patch @@ -8,15 +8,18 @@ VkSurfaceKHR is an alias to `struct something *` on 64-bit platforms, but to 'VkSurfaceKHR' {aka 'long long unsigned int'} in initialization [ 88s] 294 | VkSurfaceKHR surfacehandle = nullptr; +static_assert for particle_t also failed, because it's 120 on ILP32. + --- src/common/platform/posix/sdl/sdlglvideo.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) + src/playsim/p_effect.h | 7 +++++-- + 2 files changed, 6 insertions(+), 3 deletions(-) -Index: gzdoom-g4.11.3/src/common/platform/posix/sdl/sdlglvideo.cpp +Index: gzdoom-g4.12.2/src/common/platform/posix/sdl/sdlglvideo.cpp =================================================================== ---- gzdoom-g4.11.3.orig/src/common/platform/posix/sdl/sdlglvideo.cpp -+++ gzdoom-g4.11.3/src/common/platform/posix/sdl/sdlglvideo.cpp -@@ -291,7 +291,7 @@ DFrameBuffer *SDLVideo::CreateFrameBuffe +--- gzdoom-g4.12.2.orig/src/common/platform/posix/sdl/sdlglvideo.cpp ++++ gzdoom-g4.12.2/src/common/platform/posix/sdl/sdlglvideo.cpp +@@ -400,7 +400,7 @@ DFrameBuffer *SDLVideo::CreateFrameBuffe builder.RequireExtension(names[i]); auto instance = builder.Create(); @@ -25,3 +28,28 @@ Index: gzdoom-g4.11.3/src/common/platform/posix/sdl/sdlglvideo.cpp if (!I_CreateVulkanSurface(instance->Instance, &surfacehandle)) VulkanError("I_CreateVulkanSurface failed"); +Index: gzdoom-g4.12.2/src/playsim/p_effect.h +=================================================================== +--- gzdoom-g4.12.2.orig/src/playsim/p_effect.h ++++ gzdoom-g4.12.2/src/playsim/p_effect.h +@@ -70,7 +70,10 @@ enum EParticleFlags + class DVisualThinker; + struct particle_t + { +- subsector_t* subsector; //+8 = 8 ++ union { ++ subsector_t* subsector; ++ uint64_t _pad0; //+8 = 8 ++ }; + DVector3 Pos; //+24 = 32 + FVector3 Vel; //+12 = 44 + FVector3 Acc; //+12 = 56 +@@ -83,7 +86,7 @@ struct particle_t + float Roll, RollVel, RollAcc; //+12 = 100 + uint16_t tnext, snext, tprev; //+6 = 106 + uint16_t flags; //+2 = 108 +- // uint32_t padding; //+4 = 112 ++ uint32_t padding; //+4 = 112 + FStandaloneAnimation animData; //+16 = 128 + }; +