commit:     56703991485dfac2ce34bd1f177191807f69c5fe
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 17 21:21:37 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Mar 17 21:52:20 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=56703991

dev-perl/SDL: fix build w/ clang 16

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-perl/SDL/SDL-2.548.0-r2.ebuild                 | 50 ++++++++++++++++++++++
 .../SDL/files/SDL-2.546-implicit-func-decl.patch   | 40 +++++++++++++++++
 2 files changed, 90 insertions(+)

diff --git a/dev-perl/SDL/SDL-2.548.0-r2.ebuild 
b/dev-perl/SDL/SDL-2.548.0-r2.ebuild
new file mode 100644
index 000000000000..59caa0f55c01
--- /dev/null
+++ b/dev-perl/SDL/SDL-2.548.0-r2.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DIST_AUTHOR=FROGGS
+DIST_VERSION=2.548
+inherit perl-module
+
+DESCRIPTION="Simple DirectMedia Layer (SDL) bindings for perl"
+HOMEPAGE="http://sdl.perl.org/ https://search.cpan.org/dist/SDL/ 
https://github.com/PerlGameDev/SDL";
+
+LICENSE="GPL-2 OFL-1.1"
+SLOT="0"
+KEYWORDS="~amd64 ~hppa ~x86"
+
+RDEPEND="
+       >=dev-perl/Alien-SDL-1.446
+       dev-perl/Capture-Tiny
+       >=virtual/perl-CPAN-1.920.0
+       >=virtual/perl-ExtUtils-CBuilder-0.260.301
+       >=dev-perl/File-ShareDir-1.0.0
+       >=dev-perl/Module-Build-0.400.0
+       media-libs/libjpeg-turbo
+       virtual/perl-Scalar-List-Utils
+       dev-perl/Tie-Simple
+       media-libs/libpng:0
+       media-libs/libsdl
+       media-libs/sdl-gfx
+       media-libs/sdl-image
+       media-libs/sdl-mixer
+       media-libs/sdl-pango
+       media-libs/sdl-ttf
+       media-libs/smpeg
+       media-libs/tiff:0
+       virtual/glu
+       virtual/opengl
+"
+BDEPEND="${RDEPEND}
+       test? (
+               >=dev-perl/Test-Most-0.210.0
+       )
+"
+
+mydoc='CHANGELOG README TODO'
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-2.546-pointer.patch
+       "${FILESDIR}"/${PN}-2.546-implicit-func-decl.patch
+)

diff --git a/dev-perl/SDL/files/SDL-2.546-implicit-func-decl.patch 
b/dev-perl/SDL/files/SDL-2.546-implicit-func-decl.patch
new file mode 100644
index 000000000000..9bbee3356486
--- /dev/null
+++ b/dev-perl/SDL/files/SDL-2.546-implicit-func-decl.patch
@@ -0,0 +1,40 @@
+https://github.com/PerlGameDev/SDL/pull/299
+
+From 90d7056288282df9febf04acce6712f4071e4103 Mon Sep 17 00:00:00 2001
+From: Ryan Schmidt <[email protected]>
+Date: Wed, 26 Jan 2022 02:55:04 -0600
+Subject: [PATCH] Fix implicit declaration of _calc_offset
+
+--- a/src/SDLx/Surface.xs
++++ b/src/SDLx/Surface.xs
+@@ -16,6 +16,14 @@
+ #include <SDL_gfxPrimitives.h>
+ #endif
+ 
++int _calc_offset ( SDL_Surface* surface, int x, int y )
++{
++    int offset;
++    offset  = (surface->pitch * y) / surface->format->BytesPerPixel;
++    offset += x;
++    return offset;
++}
++
+ SV * get_pixel32 (SDL_Surface *surface, int x, int y)
+ {
+     /* Convert the pixels to 32 bit  */
+@@ -52,14 +60,6 @@ SV * construct_p_matrix ( SDL_Surface *surface )
+     return newRV_noinc((SV *)matrix);
+ }
+ 
+-int _calc_offset ( SDL_Surface* surface, int x, int y )
+-{
+-    int offset;
+-    offset  = (surface->pitch * y) / surface->format->BytesPerPixel;
+-    offset += x;
+-    return offset;
+-}
+-
+ unsigned int _get_pixel(SDL_Surface * surface, int offset)
+ {
+     unsigned int value;
+

Reply via email to