Compare commits
No commits in common. "rawhide" and "f37" have entirely different histories.
12 changed files with 17 additions and 706 deletions
|
|
@ -1,56 +0,0 @@
|
|||
From 8cd2c619916c09b327c3230b975d1eace2924d58 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
|
||||
Date: Tue, 7 Oct 2025 14:16:23 +0200
|
||||
Subject: [PATCH] Adapt to SDL 3.2.24
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
After upgrading SDL from 3.2.22 to 3.2.24 t/core.t started to fail
|
||||
like this:
|
||||
|
||||
# Failed test '[get_error] got error '
|
||||
# at t/core.t line 69.
|
||||
# got: ''
|
||||
# expected: anything else
|
||||
# Looks like you failed 1 test of 28.
|
||||
t/core.t ........................ Dubious, test returned 1 (wstat 256, 0x100)
|
||||
Failed 1/28 subtests
|
||||
(3 TODO tests unexpectedly succeeded)
|
||||
|
||||
The failure is triggered by SDL 5594d03da086ab255b1d7ace1496f3a0c109a83d commit
|
||||
("Leave letterbox borders set to the frame clear color").
|
||||
|
||||
SDL_SetVideoMode(640, 480, 232, SDL_ANYFORMAT) kept succeeding, but
|
||||
SDL_GetError() stopped returning "rect has a negative size" error.
|
||||
|
||||
Because the new behavior is more consistent and because the Perl test
|
||||
checks for SDL::get_error() instead of SDL::Video::set_video_mode()
|
||||
return value, I conlude that the Perl test wants to test
|
||||
SDL::get_error() and uses SDL::Video::set_video_mode() only as a way
|
||||
to produce an error.
|
||||
|
||||
Thus this patch uses a different SDL::Video::set_video_mode()
|
||||
arguments to obtain an error ("Invalid width or height").
|
||||
|
||||
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
||||
---
|
||||
t/core.t | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/t/core.t b/t/core.t
|
||||
index 1ccac868..8b35b9bc 100644
|
||||
--- a/t/core.t
|
||||
+++ b/t/core.t
|
||||
@@ -62,7 +62,7 @@ is( SDL_INIT_EVENTTHREAD(), 16777216,
|
||||
'SDL_INIT_EVENTTHREAD() should also be available'
|
||||
);
|
||||
|
||||
-my $display = SDL::Video::set_video_mode( 640, 480, 232, SDL_ANYFORMAT );
|
||||
+my $display = SDL::Video::set_video_mode( -1, 480, 232, SDL_ANYFORMAT );
|
||||
|
||||
isnt( SDL::get_error(), '', '[get_error] got error ' . SDL::get_error() );
|
||||
TODO:
|
||||
--
|
||||
2.51.0
|
||||
|
||||
|
|
@ -1,71 +0,0 @@
|
|||
From d734d03862d7dcc776bd2fa3ba662cdd5879b32e Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
|
||||
Date: Wed, 12 Jul 2023 17:55:27 +0200
|
||||
Subject: [PATCH] Adapt to perl 5.37.1
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Perl 5.37.1 removed a deprecated sv_nv() macro and SDL fails to build
|
||||
with Perl 5.38.0:
|
||||
|
||||
lib/SDLx/Controller/Interface.xs:60:26: error: implicit declaration of function 'sv_nv'
|
||||
60 | out->dv_x = sv_nv(temp);
|
||||
| ^~~~~
|
||||
|
||||
Users are advised to use SvNVx() macro instead. SvNVx() seems to have been
|
||||
available all the time (it predates a commit from 1993-10-07).
|
||||
|
||||
This patch does that.
|
||||
|
||||
https://github.com/PerlGameDev/SDL/issues/303
|
||||
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
||||
---
|
||||
src/SDLx/Controller/Interface.xs | 12 ++++++------
|
||||
1 file changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/src/SDLx/Controller/Interface.xs b/src/SDLx/Controller/Interface.xs
|
||||
index 3dc202b7..d326c885 100644
|
||||
--- a/src/SDLx/Controller/Interface.xs
|
||||
+++ b/src/SDLx/Controller/Interface.xs
|
||||
@@ -57,15 +57,15 @@ void evaluate(SDLx_Interface *obj, SDLx_Derivative *out, SDLx_State *initial, fl
|
||||
|
||||
SV *temp;
|
||||
temp = av_pop(accel);
|
||||
- out->dv_x = sv_nv(temp);
|
||||
+ out->dv_x = SvNVx(temp);
|
||||
SvREFCNT_dec(temp);
|
||||
|
||||
temp = av_pop(accel);
|
||||
- out->dv_y = sv_nv(temp);
|
||||
+ out->dv_y = SvNVx(temp);
|
||||
SvREFCNT_dec(temp);
|
||||
|
||||
temp = av_pop(accel);
|
||||
- out->dang_v = sv_nv(temp);
|
||||
+ out->dang_v = SvNVx(temp);
|
||||
SvREFCNT_dec(temp);
|
||||
|
||||
SvREFCNT_dec((SV *)accel);
|
||||
@@ -90,15 +90,15 @@ void evaluate_dt(SDLx_Interface *obj, SDLx_Derivative *out, SDLx_State *initial,
|
||||
|
||||
SV *temp;
|
||||
temp = av_pop(accel);
|
||||
- out->dv_x = sv_nv(temp);
|
||||
+ out->dv_x = SvNVx(temp);
|
||||
SvREFCNT_dec(temp);
|
||||
|
||||
temp = av_pop(accel);
|
||||
- out->dv_y = sv_nv(temp);
|
||||
+ out->dv_y = SvNVx(temp);
|
||||
SvREFCNT_dec(temp);
|
||||
|
||||
temp = av_pop(accel);
|
||||
- out->dang_v = sv_nv(temp);
|
||||
+ out->dang_v = SvNVx(temp);
|
||||
SvREFCNT_dec(temp);
|
||||
|
||||
SvREFCNT_dec((SV *)accel);
|
||||
--
|
||||
2.41.0
|
||||
|
||||
|
|
@ -1,67 +0,0 @@
|
|||
From 2a1eb99101a89e46c13b75b08a4c685e0f7425fe Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@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
|
||||
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
||||
---
|
||||
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));
|
||||
--
|
||||
2.48.1
|
||||
|
||||
|
|
@ -1,50 +0,0 @@
|
|||
From 90d7056288282df9febf04acce6712f4071e4103 Mon Sep 17 00:00:00 2001
|
||||
From: Ryan Schmidt <git@ryandesign.com>
|
||||
Date: Wed, 26 Jan 2022 02:55:04 -0600
|
||||
Subject: [PATCH] Fix implicit declaration of _calc_offset
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
||||
---
|
||||
src/SDLx/Surface.xs | 16 ++++++++--------
|
||||
1 file changed, 8 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/src/SDLx/Surface.xs b/src/SDLx/Surface.xs
|
||||
index f3fdb017..44b0af15 100644
|
||||
--- 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;
|
||||
--
|
||||
2.39.2
|
||||
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
From db0fc617585073065afb1aff3c4e6f5c42748548 Mon Sep 17 00:00:00 2001
|
||||
From: Colin Watson <cjwatson@debian.org>
|
||||
Date: Thu, 28 Mar 2024 13:21:47 +0000
|
||||
Subject: [PATCH] Fix reference-counting in set_event_filter
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This previously resulted in the following test failure with Perl 5.38.2
|
||||
on Debian unstable (https://bugs.debian.org/1064761):
|
||||
|
||||
t/core_events.t ................. 1/? Can't use an undefined value as a subroutine reference during global destruction.
|
||||
t/core_events.t ................. Dubious, test returned 22 (wstat 5632, 0x1600)
|
||||
All 691 subtests passed
|
||||
(less 1 skipped subtest: 690 okay)
|
||||
|
||||
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
||||
---
|
||||
src/Core/Events.xs | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/Core/Events.xs b/src/Core/Events.xs
|
||||
index faa7cfe6..2da2adef 100644
|
||||
--- a/src/Core/Events.xs
|
||||
+++ b/src/Core/Events.xs
|
||||
@@ -102,7 +102,8 @@ void
|
||||
events_set_event_filter(callback)
|
||||
SV* callback
|
||||
CODE:
|
||||
- eventfiltersv = callback;
|
||||
+ SvREFCNT_dec(eventfiltersv);
|
||||
+ eventfiltersv = SvREFCNT_inc(callback);
|
||||
SDL_SetEventFilter((SDL_EventFilter) eventfilter_cb);
|
||||
|
||||
AV *
|
||||
--
|
||||
2.44.0
|
||||
|
||||
|
|
@ -1,62 +0,0 @@
|
|||
From 4cc57bf07c5ee60baac971e2b06c342851eeaff2 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
|
||||
Date: Tue, 7 Oct 2025 15:33:33 +0200
|
||||
Subject: [PATCH] Read-only t/core_rwops.t
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
t/core_rwops.t used to create a file in the current working directory
|
||||
and then test that SDL::RWOps can open it, seek in it and read it.
|
||||
I.e. the test did not perform any write operation, yet setting up the
|
||||
test required writing.
|
||||
|
||||
This unnecessary write prevented from running the tests from
|
||||
a read-only location.
|
||||
|
||||
This patch precreates the test file so that no write operation is
|
||||
needed when running the test.
|
||||
|
||||
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
||||
---
|
||||
t/core_rwops.t | 7 +------
|
||||
test/data/rwops | 1 +
|
||||
2 files changed, 2 insertions(+), 6 deletions(-)
|
||||
create mode 100644 test/data/rwops
|
||||
|
||||
diff --git a/t/core_rwops.t b/t/core_rwops.t
|
||||
index 5f40a82f..0c9d5628 100644
|
||||
--- a/t/core_rwops.t
|
||||
+++ b/t/core_rwops.t
|
||||
@@ -11,11 +11,7 @@ my @done = qw/
|
||||
/;
|
||||
can_ok( 'SDL::RWOps', @done );
|
||||
|
||||
-open FH, '>', '.rwops';
|
||||
-print FH 'rwops';
|
||||
-close FH;
|
||||
-
|
||||
-my $file = SDL::RWOps->new_file( '.rwops', 'rw' );
|
||||
+my $file = SDL::RWOps->new_file( 'test/data/rwops', 'r' );
|
||||
isa_ok( $file, 'SDL::RWOps', '[from_file] returns RWOps' );
|
||||
|
||||
#0 SEEK_SET
|
||||
@@ -35,7 +31,6 @@ SKIP:
|
||||
is( $blocks, 5, '[read] got ' . $char );
|
||||
}
|
||||
$file->close();
|
||||
-unlink '.rwops';
|
||||
my @left = qw/
|
||||
from_fp
|
||||
from_mem
|
||||
diff --git a/test/data/rwops b/test/data/rwops
|
||||
new file mode 100644
|
||||
index 00000000..d6380184
|
||||
--- /dev/null
|
||||
+++ b/test/data/rwops
|
||||
@@ -0,0 +1 @@
|
||||
+rwops
|
||||
\ No newline at end of file
|
||||
--
|
||||
2.51.0
|
||||
|
||||
|
|
@ -1,135 +0,0 @@
|
|||
From c90ae13b7bf611e2c28d04fd831d4fb8d65ad653 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com>
|
||||
Date: Fri, 10 Mar 2023 16:53:56 +0100
|
||||
Subject: [PATCH] Unbundle Gentium Book Basic regular font
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This replaces the bundled GenBasR.ttf font file with a path to
|
||||
a system-provided font. Deleting the font file is left to a spec file.
|
||||
|
||||
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
||||
---
|
||||
Build.PL | 4 ----
|
||||
MANIFEST | 1 -
|
||||
lib/SDLx/Text.pm | 3 +--
|
||||
t/sdlx_text.t | 3 +--
|
||||
t/ttf.t | 5 +----
|
||||
t/ttf_font.t | 5 +----
|
||||
6 files changed, 4 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/Build.PL b/Build.PL
|
||||
index 7c706fc..777c708 100644
|
||||
--- a/Build.PL
|
||||
+++ b/Build.PL
|
||||
@@ -571,7 +571,6 @@ my $build = $package->new(
|
||||
'ExtUtils::CBuilder' => '0.260301',
|
||||
'Alien::SDL' => '1.446',
|
||||
'File::Find' => '0',
|
||||
- 'File::ShareDir' => '1.0',
|
||||
'Tie::Simple' => '0',
|
||||
"Module::Build" => '0.40',
|
||||
'Capture::Tiny' => '0',
|
||||
@@ -582,18 +581,15 @@ my $build = $package->new(
|
||||
'Test::Most' => '0.21',
|
||||
'Alien::SDL' => '1.446',
|
||||
'File::Find' => '0',
|
||||
- 'File::ShareDir' => '1.0',
|
||||
'Tie::Simple' => '0',
|
||||
'Scalar::Util' => '0',
|
||||
},
|
||||
requires => {
|
||||
'Scalar::Util' => '0',
|
||||
'Tie::Simple' => '0',
|
||||
- 'File::ShareDir' => '1.0',
|
||||
'CPAN' => '1.92',
|
||||
'perl' => '5.008000',
|
||||
},
|
||||
- share_dir => 'share',
|
||||
|
||||
build_recommends => {
|
||||
'Pod::ToDemo' => '0.20',
|
||||
diff --git a/MANIFEST b/MANIFEST
|
||||
index 6f86b79..dfa4982 100644
|
||||
--- a/MANIFEST
|
||||
+++ b/MANIFEST
|
||||
@@ -193,7 +193,6 @@ scripts/MultiThreadPOC.pl
|
||||
scripts/sdl_const.pl
|
||||
scripts/sdl_module_maker.pl
|
||||
scripts/SDLpp.pl
|
||||
-share/GenBasR.ttf
|
||||
src/Core/Audio.xs
|
||||
src/Core/CDROM.xs
|
||||
src/Core/Events.xs
|
||||
diff --git a/lib/SDLx/Text.pm b/lib/SDLx/Text.pm
|
||||
index e29ccd9..8727cbb 100644
|
||||
--- a/lib/SDLx/Text.pm
|
||||
+++ b/lib/SDLx/Text.pm
|
||||
@@ -20,8 +20,7 @@ sub new {
|
||||
}
|
||||
my $file = $options{'font'};
|
||||
if (!$file) {
|
||||
- require File::ShareDir;
|
||||
- $file = File::ShareDir::dist_file('SDL', 'GenBasR.ttf');
|
||||
+ $file = '/usr/share/fonts/sil-gentium-basic-book-fonts/GenBkBasR.ttf';
|
||||
}
|
||||
|
||||
my $color = defined $options{'color'} ? $options{'color'} : [255, 255, 255];
|
||||
diff --git a/t/sdlx_text.t b/t/sdlx_text.t
|
||||
index 0727b79..1343860 100644
|
||||
--- a/t/sdlx_text.t
|
||||
+++ b/t/sdlx_text.t
|
||||
@@ -21,9 +21,8 @@ use_ok( 'SDLx::Text' );
|
||||
my $videodriver = $ENV{SDL_VIDEODRIVER};
|
||||
$ENV{SDL_VIDEODRIVER} = 'dummy' unless $ENV{SDL_RELEASE_TESTING};
|
||||
|
||||
-use File::Spec;
|
||||
my $score = SDLx::Text->new(
|
||||
- font => File::Spec->catfile($FindBin::Bin, '..', 'share', 'GenBasR.ttf')
|
||||
+ '/usr/share/fonts/sil-gentium-basic-book-fonts/GenBkBasR.ttf'
|
||||
);
|
||||
|
||||
isa_ok( $score, 'SDLx::Text');
|
||||
diff --git a/t/ttf.t b/t/ttf.t
|
||||
index 18bdca1..d6c7496 100644
|
||||
--- a/t/ttf.t
|
||||
+++ b/t/ttf.t
|
||||
@@ -27,10 +27,7 @@ use SDL::RWOps;
|
||||
use SDL::Version;
|
||||
use Encode;
|
||||
|
||||
-use File::Spec;
|
||||
-my $font_filename = File::Spec->catfile(
|
||||
- $FindBin::Bin, '..', 'share', 'GenBasR.ttf'
|
||||
-);
|
||||
+my $font_filename = '/usr/share/fonts/sil-gentium-basic-book-fonts/GenBkBasR.ttf';
|
||||
|
||||
my $videodriver = $ENV{SDL_VIDEODRIVER};
|
||||
$ENV{SDL_VIDEODRIVER} = 'dummy' unless $ENV{SDL_RELEASE_TESTING};
|
||||
diff --git a/t/ttf_font.t b/t/ttf_font.t
|
||||
index e5a05ca..dfabc9c 100644
|
||||
--- a/t/ttf_font.t
|
||||
+++ b/t/ttf_font.t
|
||||
@@ -6,7 +6,6 @@ use SDL::Config;
|
||||
|
||||
BEGIN {
|
||||
use FindBin;
|
||||
- use File::Spec;
|
||||
use Test::More;
|
||||
use lib 't/lib';
|
||||
use SDL::TestTool;
|
||||
@@ -19,9 +18,7 @@ BEGIN {
|
||||
use SDL::TTF;
|
||||
use SDL::TTF::Font;
|
||||
use SDL::Version;
|
||||
-my $font_filename = File::Spec->catfile(
|
||||
- $FindBin::Bin, '..', 'share', 'GenBasR.ttf'
|
||||
-);
|
||||
+my $font_filename = '/usr/share/fonts/sil-gentium-basic-book-fonts/GenBkBasR.ttf';
|
||||
|
||||
my $lv = SDL::TTF::linked_version();
|
||||
my $cv = SDL::TTF::compile_time_version();
|
||||
--
|
||||
2.39.2
|
||||
|
||||
|
|
@ -1,29 +0,0 @@
|
|||
From 39c0ab8fc0b2277ece593b9b50f79f6e1ccd1fc5 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Kamil Kozar <dkk089@gmail.com>
|
||||
Date: Thu, 12 Jun 2025 21:43:54 +0200
|
||||
Subject: [PATCH] core_surface.t: test/data/icon.bmp is really 4 bits per pixel
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
||||
---
|
||||
t/core_surface.t | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/t/core_surface.t b/t/core_surface.t
|
||||
index 897536b6..baa962aa 100644
|
||||
--- a/t/core_surface.t
|
||||
+++ b/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' );
|
||||
--
|
||||
2.50.1
|
||||
|
||||
16
gating.yaml
16
gating.yaml
|
|
@ -1,16 +0,0 @@
|
|||
--- !Policy
|
||||
product_versions:
|
||||
- fedora-rawhide
|
||||
decision_context: bodhi_update_push_stable
|
||||
subject_type: koji_build
|
||||
rules:
|
||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpmdeplint.functional}
|
||||
--- !Policy
|
||||
product_versions:
|
||||
- fedora-*
|
||||
decision_context: bodhi_update_push_stable
|
||||
subject_type: koji_build
|
||||
rules:
|
||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.installability.functional}
|
||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpminspect.static-analysis}
|
||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
|
||||
|
|
@ -1 +0,0 @@
|
|||
addFilter('-tests\.noarch: W: no-documentation')
|
||||
194
perl-SDL.spec
194
perl-SDL.spec
|
|
@ -1,72 +1,10 @@
|
|||
Name: perl-SDL
|
||||
Version: 2.548
|
||||
Release: 31%{?dist}
|
||||
Release: 15%{?dist}
|
||||
Summary: Simple DirectMedia Layer for Perl
|
||||
# COPYING: GPL-2.0 text
|
||||
# lib/pods/SDL.pod: GPL-1.0-or-later OR Artistic-1.0-Perl
|
||||
# lib/pods/SDL/Platform.pod: GPL-1.0-or-later OR Artistic-1.0-Perl
|
||||
# lib/pods/SDL/Tutorial.pod: GPL-1.0-or-later OR Artistic-1.0-Perl
|
||||
# lib/pods/SDL/Tutorial/Animation.pod: GPL-1.0-or-later OR Artistic-1.0-Perl
|
||||
# lib/pods/SDL/Tutorial/LunarLander.pod: GPL-1.0-or-later OR Artistic-1.0-Perl
|
||||
# lib/pods/SDLx/Layer.pod: GPL-1.0-or-later OR Artistic-1.0-Perl
|
||||
# lib/pods/SDLx/LayerManager.pod: GPL-1.0-or-later OR Artistic-1.0-Perl
|
||||
# lib/pods/SDLx/Music.pod: GPL-1.0-or-later OR Artistic-1.0-Perl
|
||||
# lib/pods/SDLx/Rect.pod: GPL-1.0-or-later OR Artistic-1.0-Perl
|
||||
# lib/pods/SDLx/SFont.pod: GPL-1.0-or-later OR Artistic-1.0-Perl
|
||||
# lib/pods/SDLx/Sound.pod: GPL-1.0-or-later OR Artistic-1.0-Perl
|
||||
# lib/pods/SDLx/Text.pod: GPL-1.0-or-later OR Artistic-1.0-Perl
|
||||
# lib/SDL.pm: LGPL-2.1-or-later
|
||||
# lib/SDL_perl.pm: LGPL-2.1-or-later
|
||||
# lib/SDL/SMPEG/Info.pm: LGPL-2.1-or-later
|
||||
# lib/SDL/TTFont.pm: LGPL-2.1-or-later
|
||||
# lib/SDL/Tutorial.pm: LGPL-2.1-or-later
|
||||
# lib/SDL/Tutorial/Animation.pm: LGPL-2.1-or-later
|
||||
# src/defines.h: LGPL-2.1-or-later
|
||||
# src/ppport.h: GPL-1.0-or-later OR Artistic-1.0-Perl
|
||||
# src/SDL.xs: LGPL-2.1-or-later
|
||||
# src/SDLx/SFont.h: LGPL-2.1-or-later
|
||||
# src/SDLx/SFont.xs: LGPL-2.1-or-later
|
||||
# test/data/5x7.fnt: LGPL-2.1-only (see test/data/README)
|
||||
# test/data/tribe_i.wav: GPL-3.0-only OR LGPL-2.0-only OR CC-BY-SA-3.0
|
||||
# (see test/data/README; there is a typo in the file
|
||||
# name)
|
||||
## Used at build-time, but not in any binary package
|
||||
# Build.PL: refers to LGPL
|
||||
# inc/My/Builder.pm: LGPL-2.1-or-later
|
||||
## Not in any binary package and not used
|
||||
# META.json: refers to LGPL-2.1
|
||||
# OFL.txt: OFL-1.1-RFN text
|
||||
## Unbundled:
|
||||
# share/GenBasR.ttf: OFL-1.1-RFN
|
||||
License: LGPL-2.1-or-later AND (GPL-1.0-or-later OR Artistic-1.0-Perl)
|
||||
SourceLicense: %{license} AND LGPL-2.1-only AND (GPL-3.0-only OR LGPL-2.0-only OR CC-BY-SA-3.0) AND OFL-1.1-RFN
|
||||
License: LGPLv2+
|
||||
URL: http://sdl.perl.org/
|
||||
Source0: https://cpan.metacpan.org/authors/id/F/FR/FROGGS/SDL-%{version}.tar.gz
|
||||
# Fix an implicit function declaration, in upstream after 2.548,
|
||||
# bug #2177189, <https://github.com/PerlGameDev/SDL/pull/299>.
|
||||
Patch0: SDL-2.548-Fix-implicit-declaration-of-_calc_offset.patch
|
||||
# Unbundle Gentium Book Basic font, not suitable for the upstream, the file is
|
||||
# deleted in %%prep section.
|
||||
Patch1: SDL-2.548-Unbundle-Gentium-Book-Basic-regular-font.patch
|
||||
# Adapt to perl 5.37.1, in upstream after 2.548,
|
||||
# <https://github.com/PerlGameDev/SDL/issues/303>
|
||||
Patch2: SDL-2.548-Adapt-to-perl-5.37.1.patch
|
||||
# Fix reference counting an event filter callback, bug #2272636,
|
||||
# in upstream after 2.548, <https://github.com/PerlGameDev/SDL/pull/308>
|
||||
Patch3: SDL-2.548-Fix-reference-counting-in-set_event_filter.patch
|
||||
# Adapt to GCC 15, bug #2341036,
|
||||
# <https://github.com/PerlGameDev/SDL/issues/294>, in upstream after 2.548,
|
||||
# <https://github.com/PerlGameDev/SDL/pull/309>
|
||||
Patch4: SDL-2.548-Fix-building-in-ISO-C23.patch
|
||||
# Adapt t/core_surface.t test to SDL3, incompatible with SDL2, bug #2341036,
|
||||
# proposed to upstream, <https://github.com/PerlGameDev/SDL/pull/310>
|
||||
Patch5: SDL-2.548-core_surface.t-test-data-icon.bmp-is-really-4-bits-p.patch
|
||||
# Adapt t/core.t test to SDL-3.2.24, bug #2401791, proposed upstream,
|
||||
# <https://github.com/PerlGameDev/SDL/pull/311>
|
||||
Patch6: SDL-2.548-Adapt-to-SDL-3.2.24.patch
|
||||
# Make the tests read-only, proposed upstream,
|
||||
# <https://github.com/PerlGameDev/SDL/pull/312>
|
||||
Patch7: SDL-2.548-Read-only-t-core_rwops.t.patch
|
||||
BuildRequires: coreutils
|
||||
BuildRequires: findutils
|
||||
BuildRequires: libGLU-devel
|
||||
|
|
@ -100,6 +38,7 @@ BuildRequires: perl(DynaLoader)
|
|||
BuildRequires: perl(Exporter)
|
||||
# ExtUtils::CBuilder::Base not used at tests
|
||||
BuildRequires: perl(File::Find)
|
||||
BuildRequires: perl(File::ShareDir) >= 1.0
|
||||
BuildRequires: perl(List::Util)
|
||||
BuildRequires: perl(overload)
|
||||
BuildRequires: perl(Scalar::Util)
|
||||
|
|
@ -107,7 +46,6 @@ BuildRequires: perl(Tie::Array)
|
|||
BuildRequires: perl(Tie::Simple)
|
||||
BuildRequires: perl(Time::HiRes)
|
||||
BuildRequires: perl(vars)
|
||||
BuildRequires: sil-gentium-basic-book-fonts
|
||||
# Tests:
|
||||
BuildRequires: perl(bytes)
|
||||
BuildRequires: perl(Capture::Tiny)
|
||||
|
|
@ -119,14 +57,11 @@ BuildRequires: perl(Test::More)
|
|||
BuildRequires: perl(Test::Most) >= 0.21
|
||||
BuildRequires: perl(threads)
|
||||
BuildRequires: perl(threads::shared)
|
||||
Requires: sil-gentium-basic-book-fonts
|
||||
Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
|
||||
Requires: perl(File::ShareDir) >= 1.0
|
||||
|
||||
%define _use_internal_dependency_generator 0
|
||||
%{?perl_default_filter}
|
||||
# Remove under-specified dependencies
|
||||
%global __requires_exclude %{?__requires_exclude:%{__requires_exclude}|}^perl\\(Test::Most\\)$
|
||||
# Hide private modules
|
||||
%global __requires_exclude %{?__requires_exclude:%{__requires_exclude}|}^perl\\(SDL::TestTool\\)
|
||||
%global __provides_exclude %{?__provides_exclude:%{__provides_exclude}|}^perl\\(SDL::TestTool\\)
|
||||
|
||||
%description
|
||||
SDL_perl is a package of Perl modules that provide both functional and
|
||||
|
|
@ -137,8 +72,8 @@ the spirit of both the SDL and Perl.
|
|||
|
||||
%package -n perl-Module-Build-SDL
|
||||
Summary: Module::Build subclass for building SDL applications
|
||||
License: LGPL-2.1-or-later
|
||||
Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
|
||||
Requires: perl(ExtUtils::CBuilder::Base)
|
||||
|
||||
%description -n perl-Module-Build-SDL
|
||||
|
|
@ -147,25 +82,8 @@ some tasks specific to SDL applications - e.g. packaging SDL
|
|||
application/game into PAR archive.
|
||||
|
||||
|
||||
%package tests
|
||||
Summary: Tests for %{name}
|
||||
License: LGPL-2.1-or-later AND (GPL-3.0-only OR LGPL-2.0-only OR CC-BY-SA-3.0)
|
||||
BuildArch: noarch
|
||||
Requires: %{name} = %{?epoch:%{epoch}:}%{version}-%{release}
|
||||
Requires: perl-Test-Harness
|
||||
Requires: perl(Test::Most) >= 0.21
|
||||
Requires: sil-gentium-basic-book-fonts
|
||||
|
||||
%description tests
|
||||
Tests from %{name}. Execute them
|
||||
with "%{_libexecdir}/%{name}/test".
|
||||
|
||||
|
||||
%prep
|
||||
%autosetup -p1 -n SDL-%{version}
|
||||
# Delete a bundled font file, code removed with
|
||||
# Unbundle-Gentium-Book-Basic-regular-font.patch.
|
||||
rm -r share
|
||||
%setup -q -n SDL-%{version}
|
||||
# Move the pod files directly to directory lib to have correctly generated
|
||||
# man pages without prefix pods::
|
||||
cd lib/pods
|
||||
|
|
@ -178,110 +96,32 @@ sed -i -e 's|lib/pods|lib|' MANIFEST
|
|||
# Disable the sdlx_controller_interface.t test, it hangs on arm
|
||||
rm t/sdlx_controller_interface.t
|
||||
sed -i -e '/t\/sdlx_controller_interface\.t/d' MANIFEST
|
||||
# Help generators to recognize Perl scripts
|
||||
for F in t/*.t; do
|
||||
perl -i -MConfig -ple 'print $Config{startperl} if $. == 1 && !s{\A#!\s*perl}{$Config{startperl}}' "$F"
|
||||
chmod +x "$F"
|
||||
done
|
||||
|
||||
%build
|
||||
perl Build.PL installdirs=vendor optimize="$RPM_OPT_FLAGS"
|
||||
./Build
|
||||
|
||||
%check
|
||||
export HARNESS_OPTIONS=j$(perl -e 'if ($ARGV[0] =~ /.*-j([0-9][0-9]*).*/) {print $1} else {print 1}' -- '%{?_smp_mflags}')
|
||||
./Build test
|
||||
|
||||
%install
|
||||
./Build install destdir=%{buildroot} create_packlist=0
|
||||
find %{buildroot} -type f -name '*.bs' -a -size 0 -delete
|
||||
%{_fixperms} %{buildroot}/*
|
||||
# Install tests
|
||||
mkdir -p %{buildroot}%{_libexecdir}/%{name}/upstream
|
||||
cp -a t test %{buildroot}%{_libexecdir}/%{name}/upstream
|
||||
cat > %{buildroot}%{_libexecdir}/%{name}/test << 'EOF'
|
||||
#!/bin/sh
|
||||
cd %{_libexecdir}/%{name}/upstream && exec prove -I . -j "$(getconf _NPROCESSORS_ONLN)"
|
||||
EOF
|
||||
chmod +x %{buildroot}%{_libexecdir}/%{name}/test
|
||||
./Build install destdir=$RPM_BUILD_ROOT create_packlist=0
|
||||
find $RPM_BUILD_ROOT -type f -name '*.bs' -a -size 0 -exec rm -f {} \;
|
||||
find $RPM_BUILD_ROOT -depth -type d -exec rmdir {} 2>/dev/null \;
|
||||
%{_fixperms} $RPM_BUILD_ROOT/*
|
||||
|
||||
%files
|
||||
%license COPYING
|
||||
%doc CHANGELOG TODO
|
||||
%{perl_vendorarch}/auto/SDL
|
||||
%{perl_vendorarch}/auto/SDL_perl
|
||||
%{perl_vendorarch}/auto/SDLx
|
||||
%{perl_vendorarch}/SDL
|
||||
%{perl_vendorarch}/SDL.pm
|
||||
%{perl_vendorarch}/SDL.pod
|
||||
%{perl_vendorarch}/SDL_perl.pm
|
||||
%{perl_vendorarch}/SDLx
|
||||
%{_mandir}/man3/SDL.*
|
||||
%{_mandir}/man3/SDL::*
|
||||
%{_mandir}/man3/SDLx::*
|
||||
%{perl_vendorarch}/auto/*
|
||||
%{perl_vendorarch}/SDL*
|
||||
%{_mandir}/man3/SDL*
|
||||
|
||||
%files -n perl-Module-Build-SDL
|
||||
%dir %{perl_vendorarch}/Module
|
||||
%dir %{perl_vendorarch}/Module/Build
|
||||
%{perl_vendorarch}/Module/Build/SDL.pm
|
||||
%{_mandir}/man3/Module::Build::SDL.*
|
||||
|
||||
%files tests
|
||||
%{_libexecdir}/%{name}
|
||||
%{perl_vendorarch}/Module*
|
||||
%{_mandir}/man3/Module::*
|
||||
|
||||
%changelog
|
||||
* Tue Oct 07 2025 Petr Pisar <ppisar@redhat.com> - 2.548-31
|
||||
- Adapt tests to SDL-3.2.24 (bug #2401791)
|
||||
- Package the tests
|
||||
|
||||
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2.548-30
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
|
||||
|
||||
* Fri Jul 11 2025 Petr Pisar <ppisar@redhat.com> - 2.548-29
|
||||
- Adapt t/core_surface.t test to SDL3 (bug #2341036)
|
||||
|
||||
* Mon Jul 07 2025 Jitka Plesnikova <jplesnik@redhat.com> - 2.548-28
|
||||
- Perl 5.42 rebuild
|
||||
|
||||
* Tue Feb 11 2025 Petr Pisar <ppisar@redhat.com> - 2.548-27
|
||||
- Adapt to GCC 15 (bug #2341036)
|
||||
|
||||
* Sat Jan 18 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2.548-26
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
|
||||
|
||||
* Fri Jul 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.548-25
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
|
||||
|
||||
* Mon Jun 10 2024 Jitka Plesnikova <jplesnik@redhat.com> - 2.548-24
|
||||
- Perl 5.40 rebuild
|
||||
|
||||
* Tue Apr 02 2024 Petr Pisar <ppisar@redhat.com> - 2.548-23
|
||||
- Fix reference counting an event filter callback (bug #2272636)
|
||||
|
||||
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.548-22
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.548-21
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
||||
|
||||
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.548-20
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||
|
||||
* Wed Jul 12 2023 Petr Pisar <ppisar@redhat.com> - 2.548-19
|
||||
- Adapt to perl 5.37.1 (upstream bug #303)
|
||||
|
||||
* Tue Jul 11 2023 Jitka Plesnikova <jplesnik@redhat.com> - 2.548-18
|
||||
- Perl 5.38 rebuild
|
||||
|
||||
* Fri Mar 10 2023 Petr Pisar <ppisar@redhat.com> - 2.548-17
|
||||
- Fix an implicit function declaration (bug #2177189)
|
||||
- Correct a license to "LGPL-2.1-or-later AND (GPL-1.0-or-later OR
|
||||
Artistic-1.0-Perl)"
|
||||
- Use a system-provided Gentium Book Basic font
|
||||
|
||||
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.548-16
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||
|
||||
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.548-15
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||
|
||||
|
|
|
|||
|
|
@ -1,4 +0,0 @@
|
|||
summary: Upstream tests
|
||||
component: perl-SDL
|
||||
require: perl-SDL-tests
|
||||
test: /usr/libexec/perl-SDL/test
|
||||
Loading…
Add table
Add a link
Reference in a new issue