From f35f5ecb13a88115180b5d67c61fd1d226afda11 Mon Sep 17 00:00:00 2001 From: Jeremy Hansen Date: Thu, 29 Feb 2024 17:13:55 -0800 Subject: [PATCH] games/supertuxkart: Fix compiling with gcc13 Signed-off-by: Willy Sudiarto Raharjo --- games/supertuxkart/gcc13-1.patch | 155 +++++++++++++++++++++ games/supertuxkart/gcc13-2.patch | 72 ++++++++++ games/supertuxkart/supertuxkart.SlackBuild | 12 +- 3 files changed, 234 insertions(+), 5 deletions(-) create mode 100644 games/supertuxkart/gcc13-1.patch create mode 100644 games/supertuxkart/gcc13-2.patch diff --git a/games/supertuxkart/gcc13-1.patch b/games/supertuxkart/gcc13-1.patch new file mode 100644 index 0000000000..21fad1ae65 --- /dev/null +++ b/games/supertuxkart/gcc13-1.patch @@ -0,0 +1,155 @@ +From 0163e3fa88b72634c3ddff5304c9086b649f53b1 Mon Sep 17 00:00:00 2001 +From: Heiko Becker +Date: Thu, 26 Jan 2023 16:35:54 +0100 +Subject: [PATCH] Add missing includes to fix the build with gcc 13 + +Like other versions before, gcc 13 moved some includes around and as a +result and are no longer transitively included. +Explicitly include them for std::runtime_error and snprintf. +--- + lib/graphics_engine/include/vk_mem_alloc.h | 1 + + lib/graphics_engine/src/ge_spm_buffer.cpp | 1 + + lib/graphics_engine/src/ge_vulkan_array_texture.cpp | 1 + + lib/graphics_engine/src/ge_vulkan_command_loader.cpp | 1 + + lib/graphics_engine/src/ge_vulkan_depth_texture.cpp | 2 ++ + lib/graphics_engine/src/ge_vulkan_draw_call.cpp | 1 + + lib/graphics_engine/src/ge_vulkan_fbo_texture.cpp | 1 + + lib/graphics_engine/src/ge_vulkan_mesh_cache.cpp | 1 + + lib/graphics_engine/src/ge_vulkan_skybox_renderer.cpp | 1 + + lib/graphics_engine/src/ge_vulkan_texture.cpp | 1 + + lib/graphics_engine/src/ge_vulkan_texture_descriptor.cpp | 1 + + 11 files changed, 12 insertions(+) + +diff --git a/lib/graphics_engine/include/vk_mem_alloc.h b/lib/graphics_engine/include/vk_mem_alloc.h +index bdb4ff57610..d4b683a7551 100644 +--- a/lib/graphics_engine/include/vk_mem_alloc.h ++++ b/lib/graphics_engine/include/vk_mem_alloc.h +@@ -2563,6 +2563,7 @@ VMA_CALL_PRE void VMA_CALL_POST vmaFreeStatsString( + #undef VMA_IMPLEMENTATION + + #include ++#include + #include + #include + #include +diff --git a/lib/graphics_engine/src/ge_spm_buffer.cpp b/lib/graphics_engine/src/ge_spm_buffer.cpp +index fe4f4758adf..1179a732566 100644 +--- a/lib/graphics_engine/src/ge_spm_buffer.cpp ++++ b/lib/graphics_engine/src/ge_spm_buffer.cpp +@@ -5,6 +5,7 @@ + #include "ge_vulkan_features.hpp" + + #include ++#include + + #include "mini_glm.hpp" + +diff --git a/lib/graphics_engine/src/ge_vulkan_array_texture.cpp b/lib/graphics_engine/src/ge_vulkan_array_texture.cpp +index f3361478c3b..0f817dc40fd 100644 +--- a/lib/graphics_engine/src/ge_vulkan_array_texture.cpp ++++ b/lib/graphics_engine/src/ge_vulkan_array_texture.cpp +@@ -12,6 +12,7 @@ + + #include + #include ++#include + + namespace GE + { +diff --git a/lib/graphics_engine/src/ge_vulkan_command_loader.cpp b/lib/graphics_engine/src/ge_vulkan_command_loader.cpp +index 358cf9ab6ec..a1e5b3a71b8 100644 +--- a/lib/graphics_engine/src/ge_vulkan_command_loader.cpp ++++ b/lib/graphics_engine/src/ge_vulkan_command_loader.cpp +@@ -8,6 +8,7 @@ + #include + #include + #include ++#include + #include + + #include "../source/Irrlicht/os.h" +diff --git a/lib/graphics_engine/src/ge_vulkan_depth_texture.cpp b/lib/graphics_engine/src/ge_vulkan_depth_texture.cpp +index 25cb2429638..4a5d3d391b1 100644 +--- a/lib/graphics_engine/src/ge_vulkan_depth_texture.cpp ++++ b/lib/graphics_engine/src/ge_vulkan_depth_texture.cpp +@@ -3,6 +3,8 @@ + #include "ge_main.hpp" + #include "ge_vulkan_driver.hpp" + ++#include ++ + namespace GE + { + GEVulkanDepthTexture::GEVulkanDepthTexture(GEVulkanDriver* vk, +diff --git a/lib/graphics_engine/src/ge_vulkan_draw_call.cpp b/lib/graphics_engine/src/ge_vulkan_draw_call.cpp +index 2c2bc57513f..c8a1ddffb5e 100644 +--- a/lib/graphics_engine/src/ge_vulkan_draw_call.cpp ++++ b/lib/graphics_engine/src/ge_vulkan_draw_call.cpp +@@ -25,6 +25,7 @@ + #include + #include + #include ++#include + + #include "../source/Irrlicht/os.h" + #include "quaternion.h" +diff --git a/lib/graphics_engine/src/ge_vulkan_fbo_texture.cpp b/lib/graphics_engine/src/ge_vulkan_fbo_texture.cpp +index 9413a04bb00..834a0b43b1e 100644 +--- a/lib/graphics_engine/src/ge_vulkan_fbo_texture.cpp ++++ b/lib/graphics_engine/src/ge_vulkan_fbo_texture.cpp +@@ -6,6 +6,7 @@ + + #include + #include ++#include + + namespace GE + { +diff --git a/lib/graphics_engine/src/ge_vulkan_mesh_cache.cpp b/lib/graphics_engine/src/ge_vulkan_mesh_cache.cpp +index 380f348dffb..f510f91813a 100644 +--- a/lib/graphics_engine/src/ge_vulkan_mesh_cache.cpp ++++ b/lib/graphics_engine/src/ge_vulkan_mesh_cache.cpp +@@ -10,6 +10,7 @@ + + #include + #include ++#include + #include + + namespace GE +diff --git a/lib/graphics_engine/src/ge_vulkan_skybox_renderer.cpp b/lib/graphics_engine/src/ge_vulkan_skybox_renderer.cpp +index 2543b16086f..fe7fcc45515 100644 +--- a/lib/graphics_engine/src/ge_vulkan_skybox_renderer.cpp ++++ b/lib/graphics_engine/src/ge_vulkan_skybox_renderer.cpp +@@ -11,6 +11,7 @@ + + #include + #include ++#include + #include + + namespace GE +diff --git a/lib/graphics_engine/src/ge_vulkan_texture.cpp b/lib/graphics_engine/src/ge_vulkan_texture.cpp +index 500eb65fc62..611a24171d4 100644 +--- a/lib/graphics_engine/src/ge_vulkan_texture.cpp ++++ b/lib/graphics_engine/src/ge_vulkan_texture.cpp +@@ -21,6 +21,7 @@ extern "C" + #include + #include + #include ++#include + + namespace GE + { +diff --git a/lib/graphics_engine/src/ge_vulkan_texture_descriptor.cpp b/lib/graphics_engine/src/ge_vulkan_texture_descriptor.cpp +index 4fd8a2e8800..c64d1bdbaa1 100644 +--- a/lib/graphics_engine/src/ge_vulkan_texture_descriptor.cpp ++++ b/lib/graphics_engine/src/ge_vulkan_texture_descriptor.cpp +@@ -6,6 +6,7 @@ + + #include + #include ++#include + + namespace GE + { diff --git a/games/supertuxkart/gcc13-2.patch b/games/supertuxkart/gcc13-2.patch new file mode 100644 index 0000000000..789934d3f6 --- /dev/null +++ b/games/supertuxkart/gcc13-2.patch @@ -0,0 +1,72 @@ +From 27eb0f3116921492e183ad3aa685ddb147ed7183 Mon Sep 17 00:00:00 2001 +From: Gwyn Ciesla +Date: Thu, 23 Feb 2023 08:56:27 -0600 +Subject: [PATCH] gcc13 fixes + +--- + lib/graphics_engine/include/vk_mem_alloc.h | 2 ++ + lib/graphics_engine/src/ge_vulkan_command_loader.cpp | 1 + + lib/graphics_engine/src/ge_vulkan_depth_texture.cpp | 2 ++ + lib/graphics_engine/src/ge_vulkan_mesh_cache.cpp | 1 + + lib/graphics_engine/src/ge_vulkan_skybox_renderer.cpp | 1 + + 5 files changed, 7 insertions(+) + +diff --git a/lib/graphics_engine/include/vk_mem_alloc.h b/lib/graphics_engine/include/vk_mem_alloc.h +index d4b683a7551..ac82aedb15b 100644 +--- a/lib/graphics_engine/include/vk_mem_alloc.h ++++ b/lib/graphics_engine/include/vk_mem_alloc.h +@@ -20,6 +20,8 @@ + // THE SOFTWARE. + // + ++#include ++ + #ifndef AMD_VULKAN_MEMORY_ALLOCATOR_H + #define AMD_VULKAN_MEMORY_ALLOCATOR_H + +diff --git a/lib/graphics_engine/src/ge_vulkan_command_loader.cpp b/lib/graphics_engine/src/ge_vulkan_command_loader.cpp +index a1e5b3a71b8..13cadd63daf 100644 +--- a/lib/graphics_engine/src/ge_vulkan_command_loader.cpp ++++ b/lib/graphics_engine/src/ge_vulkan_command_loader.cpp +@@ -10,6 +10,7 @@ + #include + #include + #include ++#include + + #include "../source/Irrlicht/os.h" + +diff --git a/lib/graphics_engine/src/ge_vulkan_depth_texture.cpp b/lib/graphics_engine/src/ge_vulkan_depth_texture.cpp +index 4a5d3d391b1..0411c617df6 100644 +--- a/lib/graphics_engine/src/ge_vulkan_depth_texture.cpp ++++ b/lib/graphics_engine/src/ge_vulkan_depth_texture.cpp +@@ -1,3 +1,5 @@ ++#include ++ + #include "ge_vulkan_depth_texture.hpp" + + #include "ge_main.hpp" +diff --git a/lib/graphics_engine/src/ge_vulkan_mesh_cache.cpp b/lib/graphics_engine/src/ge_vulkan_mesh_cache.cpp +index f510f91813a..a821ee4a962 100644 +--- a/lib/graphics_engine/src/ge_vulkan_mesh_cache.cpp ++++ b/lib/graphics_engine/src/ge_vulkan_mesh_cache.cpp +@@ -12,6 +12,7 @@ + #include + #include + #include ++#include + + namespace GE + { +diff --git a/lib/graphics_engine/src/ge_vulkan_skybox_renderer.cpp b/lib/graphics_engine/src/ge_vulkan_skybox_renderer.cpp +index fe7fcc45515..82977f00785 100644 +--- a/lib/graphics_engine/src/ge_vulkan_skybox_renderer.cpp ++++ b/lib/graphics_engine/src/ge_vulkan_skybox_renderer.cpp +@@ -13,6 +13,7 @@ + #include + #include + #include ++#include + + namespace GE + { diff --git a/games/supertuxkart/supertuxkart.SlackBuild b/games/supertuxkart/supertuxkart.SlackBuild index ecbda4a1f6..dca8d9ebc8 100644 --- a/games/supertuxkart/supertuxkart.SlackBuild +++ b/games/supertuxkart/supertuxkart.SlackBuild @@ -5,7 +5,7 @@ # Copyright 2009-2011 Larry Hajali # Copyright 2011-2013 Niels Horn, Rio de Janeiro, RJ, Brazil # Copyright 2014-2017 Ryan P.C. McQuen | Everett, WA | ryanpcmcquen@member.fsf.org -# Copyright 2017-2023 Jeremy Hansen +# Copyright 2017-2024 Jeremy Hansen # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -25,15 +25,12 @@ # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -# 20220221 bkw: Modified by SlackBuilds.org: fix build on 15.0, -# by upgrading to 1.3 (1.2 was failing to compile). - cd $(dirname $0) ; CWD=$(pwd) PRGNAM=supertuxkart SRCNAM=SuperTuxKart VERSION=${VERSION:-1.4} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} TAG=${TAG:-_SBo} PKGTYPE=${PKGTYPE:-tgz} @@ -91,6 +88,11 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+ +# Patch for gcc 13 for those running -current +# Thanks to Martín Rodríguez for the heads up +patch -p1 < $CWD/gcc13-1.patch +patch -p1 < $CWD/gcc13-2.patch + mkdir -p build cd build cmake \