Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package perl-SDL for openSUSE:Factory 
checked in at 2025-06-01 21:37:17
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-SDL (Old)
 and      /work/SRC/openSUSE:Factory/.perl-SDL.new.16005 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-SDL"

Sun Jun  1 21:37:17 2025 rev:14 rq:1281673 version:2.548

Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-SDL/perl-SDL.changes        2024-05-03 
10:38:12.659434250 +0200
+++ /work/SRC/openSUSE:Factory/.perl-SDL.new.16005/perl-SDL.changes     
2025-06-01 21:37:36.987929833 +0200
@@ -1,0 +2,8 @@
+Wed Apr 16 12:09:29 UTC 2025 - pgaj...@suse.com
+
+- added patches
+  https://github.com/PerlGameDev/SDL/pull/309
+  + perl-SDL-gcc15.patch
+  + perl-SDL-fix-tests.patch
+
+-------------------------------------------------------------------

New:
----
  perl-SDL-fix-tests.patch
  perl-SDL-gcc15.patch

BETA DEBUG BEGIN:
  New:  + perl-SDL-gcc15.patch
  + perl-SDL-fix-tests.patch
  New:  https://github.com/PerlGameDev/SDL/pull/309
  + perl-SDL-gcc15.patch
  + perl-SDL-fix-tests.patch
BETA DEBUG END:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ perl-SDL.spec ++++++
--- /var/tmp/diff_new_pack.GjkArt/_old  2025-06-01 21:37:37.479950212 +0200
+++ /var/tmp/diff_new_pack.GjkArt/_new  2025-06-01 21:37:37.479950212 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package perl-SDL
 #
-# Copyright (c) 2024 SUSE LLC
+# Copyright (c) 2025 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -32,6 +32,9 @@
 Patch1:         
https://patch-diff.githubusercontent.com/raw/PerlGameDev/SDL/pull/304.patch
 # PATCH-FIX-UPSTREAM 308.patch -- based on PR 308
 Patch2:         
https://patch-diff.githubusercontent.com/raw/PerlGameDev/SDL/pull/308.patch
+# https://github.com/PerlGameDev/SDL/pull/309
+Patch3:         perl-SDL-gcc15.patch
+Patch4:         perl-SDL-fix-tests.patch
 BuildRequires:  perl
 BuildRequires:  perl-macros
 BuildRequires:  perl(Alien::SDL) >= 1.446

++++++ cpanspec.yml ++++++
--- /var/tmp/diff_new_pack.GjkArt/_old  2025-06-01 21:37:37.519951868 +0200
+++ /var/tmp/diff_new_pack.GjkArt/_new  2025-06-01 21:37:37.523952035 +0200
@@ -16,6 +16,8 @@
   https://patch-diff.githubusercontent.com/raw/PerlGameDev/SDL/pull/299.patch: 
-p1 PATCH-FIX-UPSTREAM 299.patch -- based on PR 299
   https://patch-diff.githubusercontent.com/raw/PerlGameDev/SDL/pull/304.patch: 
-p1 PATCH-FIX-UPSTREAM 304.patch -- based on PR 304
   https://patch-diff.githubusercontent.com/raw/PerlGameDev/SDL/pull/308.patch: 
-p1 PATCH-FIX-UPSTREAM 308.patch -- based on PR 308
+  perl-SDL-fix-tests.patch: -p1 fix tests for some architectures
+  perl-SDL-gcc15.patch: -p1 https://github.com/PerlGameDev/SDL/pull/309
 preamble: |-
  BuildRequires:  Mesa-devel
  BuildRequires:  libSDL-devel

++++++ perl-SDL-fix-tests.patch ++++++
Index: SDL-2.548/t/core_surface.t
===================================================================
--- SDL-2.548.orig/t/core_surface.t
+++ SDL-2.548/t/core_surface.t
@@ -51,7 +51,7 @@ is( $image->h, 32, 'image has height' );
 
 my $pixel_format = $image->format;
 isa_ok( $pixel_format, 'SDL::PixelFormat' );
-is( $pixel_format->BitsPerPixel,  8,   ' BitsPerPixel' );
+is( $pixel_format->BitsPerPixel,  4,   ' BitsPerPixel' );
 is( $pixel_format->BytesPerPixel, 1,   ' BytesPerPixel' );
 is( $pixel_format->Rloss,         8,   ' Rloss' );
 is( $pixel_format->Gloss,         8,   ' Gloss' );

++++++ perl-SDL-gcc15.patch ++++++
>From 2a1eb99101a89e46c13b75b08a4c685e0f7425fe Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppi...@redhat.com>
Date: Tue, 11 Feb 2025 12:14:27 +0100
Subject: [PATCH] Fix building in ISO C23
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Building with GCC 15, which defaults to ISO C23, failed like this:

    In file included from lib/SDL_perl.xs:32:
    lib/SDL_perl.c:654:13: error: conflicting types for ‘boot_SDL’; have 
‘void(PerlInterpreter *, CV *)’ {aka ‘void(struct interpreter *, struct cv *)’}
      654 | XS_EXTERNAL(boot_SDL); /* prototype to pass -Wmissing-prototypes */
          |             ^~~~~~~~
    /usr/lib64/perl5/CORE/XSUB.h:149:34: note: in definition of macro 
‘XS_EXTERNAL’
      149 | #  define XS_EXTERNAL(name) void name(pTHX_ CV* cv 
__attribute__unused__)
          |                                  ^~~~
    lib/SDL_perl.xs:147:6: note: previous declaration of ‘boot_SDL’ with type 
‘void(void)’
      147 | void boot_SDL();
          |      ^~~~~~~~
    lib/SDL_perl.c:655:13: error: conflicting types for ‘boot_SDL’; have 
‘void(PerlInterpreter *, CV *)’ {aka ‘void(struct interpreter *, struct cv *)’}
      655 | XS_EXTERNAL(boot_SDL)
          |             ^~~~~~~~
    /usr/lib64/perl5/CORE/XSUB.h:149:34: note: in definition of macro 
‘XS_EXTERNAL’
      149 | #  define XS_EXTERNAL(name) void name(pTHX_ CV* cv 
__attribute__unused__)
          |                                  ^~~~
    lib/SDL_perl.xs:147:6: note: previous declaration of ‘boot_SDL’ with type 
‘void(void)’
      147 | void boot_SDL();
          |      ^~~~~~~~

The cause is a mismatch between how boot_SDL() was declared and used
in src/SDL.xs and how Perl generates a boot function for XS packages.
This patch fixes it by passing current Perl interpreter and, probably
ignored, cv argument.

Resolves: https://github.com/PerlGameDev/SDL/issues/294
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2341036
---
 src/SDL.xs | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/SDL.xs b/src/SDL.xs
index a13882c8..5856e3af 100644
--- a/src/SDL.xs
+++ b/src/SDL.xs
@@ -144,7 +144,7 @@ sdl_perl_atexit (void)
        SDL_Quit();
 }
 
-void boot_SDL();
+XS(boot_SDL);
 void boot_SDL__OpenGL();
 
 XS(boot_SDL_perl)
@@ -155,7 +155,7 @@ XS(boot_SDL_perl)
 #endif
        PL_perl_destruct_level = 2;
        GET_TLS_CONTEXT
-       boot_SDL();
+       boot_SDL(aTHX_ cv);
 
 #if defined WINDOWS || defined WIN32
   SDL_RegisterApp ("SDLPerl App", 0, GetModuleHandle (NULL));

Reply via email to