commit:     dacea07651fb867ea3a0e40d069ddc52cc4a0c34
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 27 04:39:09 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Jan 27 05:23:32 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dacea076

games-action/supertuxkart: add 1.4

Closes: https://bugs.gentoo.org/891117
Signed-off-by: Sam James <sam <AT> gentoo.org>

 games-action/supertuxkart/Manifest                 |   1 +
 .../files/supertuxkart-1.4-gcc-13.patch            | 122 +++++++++++++++++++++
 games-action/supertuxkart/metadata.xml             |   1 +
 games-action/supertuxkart/supertuxkart-1.4.ebuild  |  83 ++++++++++++++
 profiles/arch/arm64/package.use.mask               |   4 +
 profiles/arch/riscv/package.use.mask               |   6 +-
 6 files changed, 216 insertions(+), 1 deletion(-)

diff --git a/games-action/supertuxkart/Manifest 
b/games-action/supertuxkart/Manifest
index df717f644ffd..f6deb1b652f9 100644
--- a/games-action/supertuxkart/Manifest
+++ b/games-action/supertuxkart/Manifest
@@ -1,2 +1,3 @@
 DIST SuperTuxKart-1.3-src.tar.xz 627753500 BLAKE2B 
3ffc86edf80adb27cd17a6ba796fb14d0660a1c14ff21c7908e5f965609c6f6a6b40270a21690cd1318d1003e07d90b4180c292252b1731d4cd6292fe12e6086
 SHA512 
42664390c844ebca0be9b2f2aeb3c9197c0c79a7c604707b32e81ef41aec10fa36f5950f06e1540ea6f75f6c7f8a8f7f80aeda48de3d101d991420f5b20530ed
+DIST SuperTuxKart-1.4-src.tar.xz 650010456 BLAKE2B 
dc85c77cdf8b8f7377b5771eb3b3edbe20f6949c99f710ca70506c09152e7a846b3d3239f185d23c9fdf0477da417bacc644793b3407aed1e68fc41ced41a71e
 SHA512 
e88f3fb5ccdb38d0ef75e92d73b43c5cc7a1f6c76ac9502033df099a00d6dc3e86b2c5442b806237d2420c44ada7dd23a2c90ecf94785a44d2348c933770a5ab
 DIST supertuxkart.png 4435 BLAKE2B 
b48b95e1cdebe930837cc784c4c5e9a089a69077e2fcfed15fe5e8c4d649a0f8024769b2f2102bbaea3a94eb21f4b58b5d291b97493266c3c5c8d7335cf69a80
 SHA512 
a180332f79220431922fa8b351cb476ebc5d9d1df09f20707eb3bdd7002fd264cb027b8190c73c5221050e6e8601beb6758a5809d05aedfb18f0bdb426f47eda

diff --git a/games-action/supertuxkart/files/supertuxkart-1.4-gcc-13.patch 
b/games-action/supertuxkart/files/supertuxkart-1.4-gcc-13.patch
new file mode 100644
index 000000000000..bacd046a4771
--- /dev/null
+++ b/games-action/supertuxkart/files/supertuxkart-1.4-gcc-13.patch
@@ -0,0 +1,122 @@
+https://github.com/supertuxkart/stk-code/commit/0163e3fa88b72634c3ddff5304c9086b649f53b1
+
+From 0163e3fa88b72634c3ddff5304c9086b649f53b1 Mon Sep 17 00:00:00 2001
+From: Heiko Becker <[email protected]>
+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 <stdexcept> and <cstdio> are no longer transitively included.
+Explicitly include them for std::runtime_error and snprintf.
+--- 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 <cstdint>
++#include <cstdio>
+ #include <cstdlib>
+ #include <cstring>
+ #include <utility>
+--- 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 <algorithm>
++#include <stdexcept>
+ 
+ #include "mini_glm.hpp"
+ 
+--- 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 <IImageLoader.h>
+ #include <cassert>
++#include <stdexcept>
+ 
+ namespace GE
+ {
+--- 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 <deque>
+ #include <memory>
+ #include <mutex>
++#include <stdexcept>
+ #include <thread>
+ 
+ #include "../source/Irrlicht/os.h"
+--- 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 <stdexcept>
++
+ namespace GE
+ {
+ GEVulkanDepthTexture::GEVulkanDepthTexture(GEVulkanDriver* vk,
+--- 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 <algorithm>
+ #include <cmath>
+ #include <limits>
++#include <stdexcept>
+ 
+ #include "../source/Irrlicht/os.h"
+ #include "quaternion.h"
+--- 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 <array>
+ #include <exception>
++#include <stdexcept>
+ 
+ namespace GE
+ {
+--- 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 <algorithm>
+ #include <cassert>
++#include <stdexcept>
+ #include <vector>
+ 
+ namespace GE
+--- 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 <array>
+ #include <cstdint>
++#include <stdexcept>
+ #include <unordered_map>
+ 
+ namespace GE
+--- 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 <IAttributes.h>
+ #include <IImageLoader.h>
+ #include <limits>
++#include <stdexcept>
+ 
+ namespace GE
+ {
+--- 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 <algorithm>
+ #include <exception>
++#include <stdexcept>
+ 
+ namespace GE
+ {
+

diff --git a/games-action/supertuxkart/metadata.xml 
b/games-action/supertuxkart/metadata.xml
index 28d5e6b38a19..2e74607fa408 100644
--- a/games-action/supertuxkart/metadata.xml
+++ b/games-action/supertuxkart/metadata.xml
@@ -9,6 +9,7 @@
                <flag name="nettle">Use <pkg>dev-libs/nettle</pkg> crypto 
backend</flag>
                <flag name="recorder">Enable recording with 
<pkg>media-libs/libopenglrecorder</pkg></flag>
                <flag name="sqlite">Record IP bans, statistics in server mode 
with <pkg>dev-db/sqlite</pkg></flag>
+               <flag name="vulkan">Enable support for Vulkan</flag>
                <flag name="wiimote">Support for wiimote input devices</flag>
        </use>
        <upstream>

diff --git a/games-action/supertuxkart/supertuxkart-1.4.ebuild 
b/games-action/supertuxkart/supertuxkart-1.4.ebuild
new file mode 100644
index 000000000000..495e18a9ae69
--- /dev/null
+++ b/games-action/supertuxkart/supertuxkart-1.4.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake desktop xdg
+
+MY_P="SuperTuxKart-${PV}-src"
+DESCRIPTION="A kart racing game starring Tux, the linux penguin (TuxKart fork)"
+HOMEPAGE="https://supertuxkart.net/";
+SRC_URI="
+       https://github.com/${PN}/stk-code/releases/download/${PV}/${MY_P}.tar.xz
+       mirror://gentoo/${PN}.png
+"
+
+LICENSE="GPL-2 GPL-3 CC-BY-SA-3.0 CC-BY-SA-4.0 CC0-1.0 public-domain ZLIB"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="debug nettle recorder sqlite vulkan wiimote"
+
+# Don't unbundle irrlicht and bullet
+# both are modified and system versions will break the game
+# https://sourceforge.net/p/irrlicht/feature-requests/138/
+RDEPEND="
+       dev-cpp/libmcpp
+       dev-libs/angelscript:=
+       media-libs/freetype:2
+       media-libs/harfbuzz:=
+       media-libs/libjpeg-turbo:=
+       media-libs/libpng:=
+       media-libs/libsdl2[opengl,video]
+       media-libs/libvorbis
+       media-libs/openal
+       net-libs/enet:1.3=
+       net-misc/curl
+       sys-libs/zlib
+       virtual/libintl
+       nettle? ( dev-libs/nettle:= )
+       !nettle? ( >=dev-libs/openssl-1.0.1d:= )
+       recorder? ( media-libs/libopenglrecorder )
+       sqlite? ( dev-db/sqlite:3 )
+       vulkan? ( media-libs/shaderc )
+       wiimote? ( net-wireless/bluez )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       sys-devel/gettext
+       virtual/pkgconfig
+"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-1.1-irrlicht-arch-support.patch
+       "${FILESDIR}"/${PN}-1.3-irrlicht-system-libs.patch
+       "${FILESDIR}"/${P}-gcc-13.patch
+)
+
+src_configure() {
+       local mycmakeargs=(
+               -DUSE_SQLITE3=$(usex sqlite)
+               -DUSE_SYSTEM_ANGELSCRIPT=ON
+               -DUSE_SYSTEM_ENET=ON
+               -DUSE_SYSTEM_SQUISH=OFF
+               -DUSE_SYSTEM_WIIUSE=OFF
+               -DUSE_IPV6=OFF # not supported by system enet
+               -DUSE_CRYPTO_OPENSSL=$(usex nettle no yes)
+               -DBUILD_RECORDER=$(usex recorder)
+               -DUSE_WIIUSE=$(usex wiimote)
+               -DNO_SHADERC=$(usex !vulkan)
+               -DSTK_INSTALL_BINARY_DIR=bin
+               -DSTK_INSTALL_DATA_DIR=share/${PN}
+               -DBUILD_SHARED_LIBS=OFF # build bundled libsquish as static 
library
+       )
+       cmake_src_configure
+}
+
+src_install() {
+       cmake_src_install
+       dodoc CHANGELOG.md
+
+       doicon -s 64 "${DISTDIR}"/${PN}.png
+}

diff --git a/profiles/arch/arm64/package.use.mask 
b/profiles/arch/arm64/package.use.mask
index 16a1ee4116bc..be323d0530f2 100644
--- a/profiles/arch/arm64/package.use.mask
+++ b/profiles/arch/arm64/package.use.mask
@@ -1,6 +1,10 @@
 # Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
+# Sam James <[email protected]> (2023-01-27)
+# media-libs/shaderc not keyworded here
+games-action/supertuxkart vulkan
+
 # Michał Górny <[email protected]> (2023-01-24)
 # libomptarget is only supported on 64-bit architectures.
 >=sys-libs/libomp-16.0.0_pre20230124 -offload

diff --git a/profiles/arch/riscv/package.use.mask 
b/profiles/arch/riscv/package.use.mask
index 1071becd3136..3608bef1321c 100644
--- a/profiles/arch/riscv/package.use.mask
+++ b/profiles/arch/riscv/package.use.mask
@@ -1,6 +1,10 @@
-# Copyright 2019-2022 Gentoo Authors
+# Copyright 2019-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
+# Sam James <[email protected]> (2023-01-27)
+# media-libs/shaderc not keyworded here
+games-action/supertuxkart vulkan
+
 # Mike Rivnak <[email protected]> (2022-11-30)
 # luajit is currently not supported on riscv
 app-editors/neovim lua_single_target_luajit

Reply via email to