perl540Packages.SDL: fix build

Grimmauld 308a79da f58d6d12

Changed files
+19
pkgs
development
top-level
+16
pkgs/development/perl-modules/sdl-compat-bit-depth.patch
···
+
diff --git a/t/core_surface.t b/t/core_surface.t
+
index 897536b6..03efa859 100644
+
--- a/t/core_surface.t
+
+++ b/t/core_surface.t
+
@@ -51,7 +51,10 @@ is( $image->h, 32, 'image has height' );
+
+
my $pixel_format = $image->format;
+
isa_ok( $pixel_format, 'SDL::PixelFormat' );
+
-is( $pixel_format->BitsPerPixel, 8, ' BitsPerPixel' );
+
+# the bitmap has a bitdepth of 4
+
+# SDL_classic could not allocate less than full bytes per pixel
+
+# sdl12-compat returns the actual bit depth of the image here
+
+is( $pixel_format->BitsPerPixel, 4, ' BitsPerPixel' );
+
is( $pixel_format->BytesPerPixel, 1, ' BytesPerPixel' );
+
is( $pixel_format->Rloss, 8, ' Rloss' );
+
is( $pixel_format->Gloss, 8, ' Gloss' );
+3
pkgs/top-level/perl-packages.nix
···
patches = [
# https://github.com/PerlGameDev/SDL/pull/304
../development/perl-modules/sdl-modern-perl.patch
+
# sdl-compat correctly reports the bit depth of the test image,
+
# while SDL_classic rounded to the next byte
+
../development/perl-modules/sdl-compat-bit-depth.patch
(fetchpatch {
url = "https://aur.archlinux.org/cgit/aur.git/plain/surface-xs-declare-calc-offset-earlier.diff?h=perl-sdl&id=d4b6da86d33046cde0e84fa2cd6eaccff1667cab";
hash = "sha256-dQ2O4dO18diSAilSZrZj6II+mBuKKI3cx9fR1SJqUvo=";