git: b7c4cdebf441 - main - games/supertuxkart: fix upstream patch handling

From: Dmitry Marakasov <amdmi3_at_FreeBSD.org>
Date: Wed, 29 Dec 2021 17:03:57 UTC
The branch main has been updated by amdmi3:

URL: https://cgit.FreeBSD.org/ports/commit/?id=b7c4cdebf441ff62e3804a875a879891e3ff512d

commit b7c4cdebf441ff62e3804a875a879891e3ff512d
Author:     Dmitry Marakasov <amdmi3@FreeBSD.org>
AuthorDate: 2021-12-28 17:36:07 +0000
Commit:     Dmitry Marakasov <amdmi3@FreeBSD.org>
CommitDate: 2021-12-29 16:55:38 +0000

    games/supertuxkart: fix upstream patch handling
    
    Instead of using PATCHFILES, handled backported upstream commit as
    a patch under files/, where it is always available, manageable and
    where it doesn't break when patch format changes.
    
    Fix fetch because of broken patch.
    
    Pointyhat to:   greg@unrelenting.technology
---
 games/supertuxkart/Makefile            |   3 -
 games/supertuxkart/distinfo            |   2 -
 games/supertuxkart/files/patch-61833c9 | 106 +++++++++++++++++++++++++++++++++
 3 files changed, 106 insertions(+), 5 deletions(-)

diff --git a/games/supertuxkart/Makefile b/games/supertuxkart/Makefile
index ade06c65bb14..79ae5ec095c3 100644
--- a/games/supertuxkart/Makefile
+++ b/games/supertuxkart/Makefile
@@ -5,9 +5,6 @@ CATEGORIES=	games
 MASTER_SITES=	SF/supertuxkart/SuperTuxKart/${PORTVERSION}
 DISTNAME=	SuperTuxKart-${PORTVERSION}-src
 
-PATCH_SITES=	https://github.com/${PORTNAME}/stk-code/commit/
-PATCHFILES+=	61833c9c26da5520f.patch:-p1 # Fix compilation with latest SDL
-
 MAINTAINER=	amdmi3@FreeBSD.org
 COMMENT=	Free 3D kart racing game
 
diff --git a/games/supertuxkart/distinfo b/games/supertuxkart/distinfo
index 7d0f05be7799..61c3ad95cff5 100644
--- a/games/supertuxkart/distinfo
+++ b/games/supertuxkart/distinfo
@@ -1,5 +1,3 @@
 TIMESTAMP = 1598745498
 SHA256 (SuperTuxKart-1.2-src.tar.xz) = 052edf0afdbeb99583fe8676fb0ab80ecb6103fb88b7540f858d1b5fa1297d37
 SIZE (SuperTuxKart-1.2-src.tar.xz) = 614569164
-SHA256 (61833c9c26da5520f.patch) = ff1f35d7cc83ad98f531f9d77eb1caacd2e65fd64a8da42c693812ca5741d966
-SIZE (61833c9c26da5520f.patch) = 5396
diff --git a/games/supertuxkart/files/patch-61833c9 b/games/supertuxkart/files/patch-61833c9
new file mode 100644
index 000000000000..70e27fa9ec11
--- /dev/null
+++ b/games/supertuxkart/files/patch-61833c9
@@ -0,0 +1,106 @@
+From 61833c9c26da5520f2eaa02f2458971ba07f2aad Mon Sep 17 00:00:00 2001
+From: Benau <Benau@users.noreply.github.com>
+Date: Sun, 29 Nov 2020 12:42:11 +0800
+Subject: [PATCH] Fix compilation with latest SDL
+
+---
+ src/input/gamepad_config.cpp | 55 ++++++++++++++++++------------------
+ 1 file changed, 27 insertions(+), 28 deletions(-)
+
+diff --git a/src/input/gamepad_config.cpp b/src/input/gamepad_config.cpp
+index 7c6f632099..c060e7a5a7 100644
+--- src/input/gamepad_config.cpp
++++ src/input/gamepad_config.cpp
+@@ -32,8 +32,7 @@
+ #include "input/sdl_controller.hpp"
+ #include <array>
+ 
+-static_assert(SDL_CONTROLLER_BUTTON_MAX - 1 == SDL_CONTROLLER_BUTTON_DPAD_RIGHT, "non continous name");
+-enum AxisWithDirection
++enum AxisWithDirection : unsigned
+ {
+     SDL_CONTROLLER_AXIS_LEFTX_RIGHT = SDL_CONTROLLER_BUTTON_MAX,
+     SDL_CONTROLLER_AXIS_LEFTX_LEFT,
+@@ -140,56 +139,56 @@ void GamepadConfig::setDefaultBinds ()
+ core::stringw GamepadConfig::getBindingAsString(const PlayerAction action) const
+ {
+ #ifndef SERVER_ONLY
+-    std::array<core::stringw, SDL_CONTROLLER_AXIS_WITH_DIRECTION_AND_BUTTON_MAX> readable =
++    std::map<unsigned, core::stringw> readable =
+     {{
+-        "A", // SDL_CONTROLLER_BUTTON_A
+-        "B", // SDL_CONTROLLER_BUTTON_B
+-        "X", // SDL_CONTROLLER_BUTTON_X
+-        "Y", // SDL_CONTROLLER_BUTTON_Y
++        { SDL_CONTROLLER_BUTTON_A, "A" },
++        { SDL_CONTROLLER_BUTTON_B, "B" },
++        { SDL_CONTROLLER_BUTTON_X, "X" },
++        { SDL_CONTROLLER_BUTTON_Y, "Y" },
+         // I18N: name of buttons on gamepads
+-        _("Back"), // SDL_CONTROLLER_BUTTON_BACK
++        { SDL_CONTROLLER_BUTTON_BACK, _("Back") },
+         // I18N: name of buttons on gamepads
+-        _("Guide"), // SDL_CONTROLLER_BUTTON_GUIDE
++        { SDL_CONTROLLER_BUTTON_GUIDE, _("Guide") },
+         // I18N: name of buttons on gamepads
+-        _("Start"), // SDL_CONTROLLER_BUTTON_START
++        { SDL_CONTROLLER_BUTTON_START, _("Start") },
+         // I18N: name of buttons on gamepads
+-        _("Left thumbstick press"), // SDL_CONTROLLER_BUTTON_LEFTSTICK
++        { SDL_CONTROLLER_BUTTON_LEFTSTICK, _("Left thumbstick press") },
+         // I18N: name of buttons on gamepads
+-        _("Right thumbstick press"), // SDL_CONTROLLER_BUTTON_RIGHTSTICK
++        { SDL_CONTROLLER_BUTTON_RIGHTSTICK, _("Right thumbstick press") },
+         // I18N: name of buttons on gamepads
+-        _("Left shoulder"), // SDL_CONTROLLER_BUTTON_LEFTSHOULDER
++        { SDL_CONTROLLER_BUTTON_LEFTSHOULDER, _("Left shoulder") },
+         // I18N: name of buttons on gamepads
+-        _("Right shoulder"), // SDL_CONTROLLER_BUTTON_RIGHTSHOULDER
++        { SDL_CONTROLLER_BUTTON_RIGHTSHOULDER, _("Right shoulder") },
+         // I18N: name of buttons on gamepads
+-        _("DPad up"), // SDL_CONTROLLER_BUTTON_DPAD_UP
++        { SDL_CONTROLLER_BUTTON_DPAD_UP, _("DPad up") },
+         // I18N: name of buttons on gamepads
+-        _("DPad down"), // SDL_CONTROLLER_BUTTON_DPAD_DOWN
++        { SDL_CONTROLLER_BUTTON_DPAD_DOWN, _("DPad down") },
+         // I18N: name of buttons on gamepads
+-        _("DPad left"), // SDL_CONTROLLER_BUTTON_DPAD_LEFT
++        { SDL_CONTROLLER_BUTTON_DPAD_LEFT, _("DPad left") },
+         // I18N: name of buttons on gamepads
+-        _("DPad right"), // SDL_CONTROLLER_BUTTON_DPAD_RIGHT
++        { SDL_CONTROLLER_BUTTON_DPAD_RIGHT, _("DPad right") },
+ 
+         // Below are extensions after SDL2 header SDL_CONTROLLER_BUTTON_MAX
+         // I18N: name of buttons on gamepads
+-        _("Left thumbstick right"), // SDL_CONTROLLER_AXIS_LEFTX_RIGHT
++        { SDL_CONTROLLER_AXIS_LEFTX_RIGHT, _("Left thumbstick right") },
+         // I18N: name of buttons on gamepads
+-        _("Left thumbstick left"), // SDL_CONTROLLER_AXIS_LEFTX_LEFT
++        { SDL_CONTROLLER_AXIS_LEFTX_LEFT, _("Left thumbstick left") },
+         // I18N: name of buttons on gamepads
+-        _("Left thumbstick down"), // SDL_CONTROLLER_AXIS_LEFTY_DOWN
++        { SDL_CONTROLLER_AXIS_LEFTY_DOWN, _("Left thumbstick down") },
+         // I18N: name of buttons on gamepads
+-        _("Left thumbstick up"), // SDL_CONTROLLER_AXIS_LEFTY_UP
++        { SDL_CONTROLLER_AXIS_LEFTY_UP, _("Left thumbstick up") },
+         // I18N: name of buttons on gamepads
+-        _("Right thumbstick right"), // SDL_CONTROLLER_AXIS_RIGHTX_RIGHT
++        { SDL_CONTROLLER_AXIS_RIGHTX_RIGHT, _("Right thumbstick right") },
+         // I18N: name of buttons on gamepads
+-        _("Right thumbstick left"), // SDL_CONTROLLER_AXIS_RIGHTX_LEFT
++        { SDL_CONTROLLER_AXIS_RIGHTX_LEFT, _("Right thumbstick left") },
+         // I18N: name of buttons on gamepads
+-        _("Right thumbstick down"), // SDL_CONTROLLER_AXIS_RIGHTY_DOWN
++        { SDL_CONTROLLER_AXIS_RIGHTY_DOWN, _("Right thumbstick down") },
+         // I18N: name of buttons on gamepads
+-        _("Right thumbstick up"), // SDL_CONTROLLER_AXIS_RIGHTY_UP
++        { SDL_CONTROLLER_AXIS_RIGHTY_UP, _("Right thumbstick up") },
+         // I18N: name of buttons on gamepads
+-        _("Left trigger"), // SDL_CONTROLLER_AXIS_TRIGGERLEFT_UP
++        { SDL_CONTROLLER_AXIS_TRIGGERLEFT_UP, _("Left trigger") },
+         // I18N: name of buttons on gamepads
+-        _("Right trigger") // SDL_CONTROLLER_AXIS_TRIGGERRIGHT_UP
++        { SDL_CONTROLLER_AXIS_TRIGGERRIGHT_UP, _("Right trigger") }
+     }};
+ 
+     const Binding &b = getBinding(action);