Package: release.debian.org Severity: normal Tags: bookworm User: release.debian....@packages.debian.org Usertags: pu X-Debbugs-Cc: gregor herrmann <gre...@debian.org> Control: affects -1 + src:libimage-imlib2-perl
[ Reason ] Rebuilding libimage-imlib2-perl would create a broken package. This is caused by libimlib2-dev dropping imlib2-config. The package currently in bookworm is not yet broken as the last binNMU happened before the imlib2 change. [ Impact ] No immediate problems, but after libimage-imlib2-perl gets binNMUed for whatever reason in stable. [ Tests ] Package contents are complete again. (No differences between 2.03-1.1+b2 and 2.03-1.2~deb12u1.) [ Risks ] Low. [ Checklist ] [*] *all* changes are documented in the d/changelog [*] I reviewed all changes and I approve them [*] attach debdiff against the package in (old)stable [*] the issue is verified as fixed in unstable [ Changes ] +libimage-imlib2-perl (2.03-1.2~deb12u1) bookworm; urgency=medium + + * Non-maintainer upload. + * Rebuild for bookworm. + + -- Andreas Beckmann <a...@debian.org> Wed, 19 Jun 2024 17:34:53 +0200 + +libimage-imlib2-perl (2.03-1.2) unstable; urgency=medium + + * Non-maintainer upload. + * Fix "Creates empty package on bookworm upwards": + `imlib2-config' went missing from libimlib2-dev, so use pkgconfig (new + patch pkg-config.diff and build dependency on libextutils-pkgconfig-perl) + (Closes: #1040223) + * Add patch 0001-Work-around-an-imlib2-bug-with-alpha-channel-cloning.patch + from Niko Tyni to work around an imlib2 bug with alpha channel cloning + which makes a test fail. + + -- gregor herrmann <gre...@debian.org> Sat, 29 Jul 2023 16:09:32 +0200 [ Other info ] n/a Andreas
diff -Nru libimage-imlib2-perl-2.03/debian/changelog libimage-imlib2-perl-2.03/debian/changelog --- libimage-imlib2-perl-2.03/debian/changelog 2022-10-06 18:56:50.000000000 +0200 +++ libimage-imlib2-perl-2.03/debian/changelog 2024-06-19 17:34:53.000000000 +0200 @@ -1,3 +1,23 @@ +libimage-imlib2-perl (2.03-1.2~deb12u1) bookworm; urgency=medium + + * Non-maintainer upload. + * Rebuild for bookworm. + + -- Andreas Beckmann <a...@debian.org> Wed, 19 Jun 2024 17:34:53 +0200 + +libimage-imlib2-perl (2.03-1.2) unstable; urgency=medium + + * Non-maintainer upload. + * Fix "Creates empty package on bookworm upwards": + `imlib2-config' went missing from libimlib2-dev, so use pkgconfig (new + patch pkg-config.diff and build dependency on libextutils-pkgconfig-perl) + (Closes: #1040223) + * Add patch 0001-Work-around-an-imlib2-bug-with-alpha-channel-cloning.patch + from Niko Tyni to work around an imlib2 bug with alpha channel cloning + which makes a test fail. + + -- gregor herrmann <gre...@debian.org> Sat, 29 Jul 2023 16:09:32 +0200 + libimage-imlib2-perl (2.03-1.1) unstable; urgency=medium * Non-maintainer upload. diff -Nru libimage-imlib2-perl-2.03/debian/control libimage-imlib2-perl-2.03/debian/control --- libimage-imlib2-perl-2.03/debian/control 2011-10-16 02:28:18.000000000 +0200 +++ libimage-imlib2-perl-2.03/debian/control 2023-07-29 16:00:08.000000000 +0200 @@ -3,7 +3,7 @@ Priority: extra Section: perl Standards-Version: 3.9.2 -Build-Depends: debhelper (>= 8), libmodule-build-perl, libimlib2-dev, libtest-simple-perl, quilt +Build-Depends: debhelper (>= 8), libmodule-build-perl, libimlib2-dev, libtest-simple-perl, quilt, libextutils-pkgconfig-perl Package: libimage-imlib2-perl Architecture: any diff -Nru libimage-imlib2-perl-2.03/debian/patches/0001-Work-around-an-imlib2-bug-with-alpha-channel-cloning.patch libimage-imlib2-perl-2.03/debian/patches/0001-Work-around-an-imlib2-bug-with-alpha-channel-cloning.patch --- libimage-imlib2-perl-2.03/debian/patches/0001-Work-around-an-imlib2-bug-with-alpha-channel-cloning.patch 1970-01-01 01:00:00.000000000 +0100 +++ libimage-imlib2-perl-2.03/debian/patches/0001-Work-around-an-imlib2-bug-with-alpha-channel-cloning.patch 2023-07-29 16:01:50.000000000 +0200 @@ -0,0 +1,49 @@ +From c2d646b9fa925ac2a91cb6cfb3fe6dad430c7927 Mon Sep 17 00:00:00 2001 +From: Niko Tyni <nt...@debian.org> +Date: Tue, 18 Jul 2023 15:16:21 +0100 +Subject: [PATCH] Work around an imlib2 bug with alpha channel cloning + +As discussed in https://bugs.debian.org/1041406 imlib2 1.10.0 introduced +a bug where imlib_clone_image() no longer copies the alpha flag. This +breaks test 12 of t/simple.t : + + # Failed test at t/simple.t line 68. + # got: '0' + # expected: '1' + +Work around this on our side by checking for any difference after +cloning and copying the alpha flag if necessary. + +Bug-Debian: https://bugs.debian.org/1040223 +--- + lib/Image/Imlib2.xs | 11 +++++++++++ + 1 file changed, 11 insertions(+) + +diff --git a/lib/Image/Imlib2.xs b/lib/Image/Imlib2.xs +index f48d4ec..cc54d2b 100644 +--- a/lib/Image/Imlib2.xs ++++ b/lib/Image/Imlib2.xs +@@ -931,9 +931,20 @@ Imlib2_clone(image) + CODE: + { + Imlib_Image cloned; ++ char alpha_orig; ++ char alpha_cloned; + + imlib_context_set_image(image); + cloned = imlib_clone_image(); ++ ++ /* imlib2 no longer clones the alpha flag since 1.10 */ ++ alpha_orig = imlib_image_has_alpha(); ++ imlib_context_set_image(cloned); ++ alpha_cloned = imlib_image_has_alpha(); ++ if (alpha_orig != alpha_cloned) { ++ imlib_image_set_has_alpha(alpha_orig); ++ } ++ imlib_context_set_image(image); + + RETVAL = cloned; + } +-- +2.39.1 + diff -Nru libimage-imlib2-perl-2.03/debian/patches/pkg-config.diff libimage-imlib2-perl-2.03/debian/patches/pkg-config.diff --- libimage-imlib2-perl-2.03/debian/patches/pkg-config.diff 1970-01-01 01:00:00.000000000 +0100 +++ libimage-imlib2-perl-2.03/debian/patches/pkg-config.diff 2023-07-29 16:01:16.000000000 +0200 @@ -0,0 +1,43 @@ +Description: use pkgconfig instead of the discontinued imlib2-config +Origin: vendor +Bug-Debian: https://bugs.debian.org/1040223 +Author: gregor herrmann <gre...@debian.org> +Last-Update: 2023-07-29 + +--- a/Build.PL ++++ b/Build.PL +@@ -1,11 +1,14 @@ + use Module::Build; + use strict; + use Cwd; ++use ExtUtils::PkgConfig ; + +-# We need to find imlib2-config +-my $CONFIG = "imlib2-config"; ++my $pkg = 'imlib2'; ++my %info = ExtUtils::PkgConfig->find ($pkg) ; ++my $version = $info{modversion} ; ++my $libs = $info{libs} ; ++my $cflags = $info{cflags} ; + +-my $version = `$CONFIG --version`; + if (!$version) { + warn 'You must install the imlib2 library before you can install + Image::Imlib2. You can obtain imlib2 from +@@ -15,13 +18,12 @@ + still will not work, modify the $CONFIG variable inside Build.PL to + point to the imlib2-config program that provides. + '; +- exit 0; ++ exit 1; + } else { +- print "Found imlib2 $version"; ++ print "Found imlib2 $version\n"; + } + +-my $libs = `$CONFIG --libs`; +-my $cflags = "-DX_DISPLAY_MISSING " . `$CONFIG --cflags` . "-ffile-prefix-map=" . getcwd() . "=." ; ++$cflags = "-DX_DISPLAY_MISSING " . $cflags . "-ffile-prefix-map=" . getcwd() . "=." ; + + my $build = Module::Build->new( + c_source => './lib/Image', diff -Nru libimage-imlib2-perl-2.03/debian/patches/series libimage-imlib2-perl-2.03/debian/patches/series --- libimage-imlib2-perl-2.03/debian/patches/series 2022-10-06 18:56:50.000000000 +0200 +++ libimage-imlib2-perl-2.03/debian/patches/series 2023-07-29 16:01:50.000000000 +0200 @@ -1,2 +1,4 @@ add_more_error_reporting.diff reproducible_build.diff +pkg-config.diff +0001-Work-around-an-imlib2-bug-with-alpha-channel-cloning.patch