diff --git a/backport-avoid-random-test-failure.patch b/backport-avoid-random-test-failure.patch new file mode 100644 index 0000000000000000000000000000000000000000..335e04999bfaaf3db83885b5a3d8fde6ea61427d --- /dev/null +++ b/backport-avoid-random-test-failure.patch @@ -0,0 +1,100 @@ +From 72fa126446460347a504f3d9b90f24aed1365595 Mon Sep 17 00:00:00 2001 +From: Cosmin Truta +Date: Sun, 21 Apr 2019 00:30:14 -0400 +Subject: [PATCH] Avoid random test failures by running pngtest sequentially + only + +It is unreliable to run pngtest in parallel, due to competing writes +to the same intermediate/output file ("pngout.png"). + +Customization of this output file name should be possible, but it is +currently broken. +--- + Makefile.am | 3 +-- + Makefile.in | 16 ++++------------ + tests/pngtest | 2 -- + tests/{pngtest-badpngs => pngtest-all} | 6 +++++- + 4 files changed, 10 insertions(+), 17 deletions(-) + rename tests/{pngtest-badpngs => pngtest-all} (80%) + +diff --git a/Makefile.am b/Makefile.am +index 4f621aa..f21107e 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -59,8 +59,7 @@ pngcp_LDADD = libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@.la + # Generally these are single line shell scripts to run a test with a particular + # set of parameters: + TESTS =\ +- tests/pngtest\ +- tests/pngtest-badpngs\ ++ tests/pngtest-all\ + tests/pngvalid-gamma-16-to-8 tests/pngvalid-gamma-alpha-mode\ + tests/pngvalid-gamma-background tests/pngvalid-gamma-expand16-alpha-mode\ + tests/pngvalid-gamma-expand16-background\ +diff --git a/Makefile.in b/Makefile.in +index 81ac1c8..31a82d2 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -736,8 +736,7 @@ pngcp_LDADD = libpng@PNGLIB_MAJOR@@PNGLIB_MINOR@.la + # Generally these are single line shell scripts to run a test with a particular + # set of parameters: + TESTS = \ +- tests/pngtest\ +- tests/pngtest-badpngs\ ++ tests/pngtest-all\ + tests/pngvalid-gamma-16-to-8 tests/pngvalid-gamma-alpha-mode\ + tests/pngvalid-gamma-background tests/pngvalid-gamma-expand16-alpha-mode\ + tests/pngvalid-gamma-expand16-background\ +@@ -1578,16 +1577,9 @@ recheck: all $(check_PROGRAMS) + am__force_recheck=am--force-recheck \ + TEST_LOGS="$$log_list"; \ + exit $$? +-tests/pngtest.log: tests/pngtest +- @p='tests/pngtest'; \ +- b='tests/pngtest'; \ +- $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ +- --log-file $$b.log --trs-file $$b.trs \ +- $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ +- "$$tst" $(AM_TESTS_FD_REDIRECT) +-tests/pngtest-badpngs.log: tests/pngtest-badpngs +- @p='tests/pngtest-badpngs'; \ +- b='tests/pngtest-badpngs'; \ ++tests/pngtest-all.log: tests/pngtest-all ++ @p='tests/pngtest-all'; \ ++ b='tests/pngtest-all'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ +diff --git a/tests/pngtest b/tests/pngtest +index 813973b..e69de29 100755 +--- a/tests/pngtest ++++ b/tests/pngtest +@@ -1,2 +0,0 @@ +-#!/bin/sh +-exec ./pngtest --strict ${srcdir}/pngtest.png +diff --git a/tests/pngtest-badpngs b/tests/pngtest-all +similarity index 80% +rename from tests/pngtest-badpngs +rename to tests/pngtest-all +index 7777523..a491ba5 100755 +--- a/tests/pngtest-badpngs ++++ b/tests/pngtest-all +@@ -1,5 +1,9 @@ + #!/bin/sh + ++# normal execution ++ ++./pngtest --strict ${srcdir}/pngtest.png ++ + # various crashers + # using --relaxed because some come from fuzzers that don't maintain CRC's + +@@ -10,4 +14,4 @@ + ./pngtest --xfail ${srcdir}/contrib/testpngs/crashers/huge_*_chunk.png \ + ${srcdir}/contrib/testpngs/crashers/huge_*safe_to_copy.png + +-exec ./pngtest --xfail ${srcdir}/contrib/testpngs/crashers/huge_IDAT.png ++./pngtest --xfail ${srcdir}/contrib/testpngs/crashers/huge_IDAT.png +-- +2.27.0 + diff --git a/libpng.spec b/libpng.spec index 8af57ad2afde7181af8ea611467069ace11b9f45..0358db46a17fcccced07c05ac96500651769724c 100644 --- a/libpng.spec +++ b/libpng.spec @@ -1,7 +1,7 @@ Name: libpng Epoch: 2 Version: 1.6.37 -Release: 2 +Release: 3 Summary: A library of functions for manipulating PNG image format files License: zlib URL: http://www.libpng.org/pub/png/libpng.html @@ -11,6 +11,7 @@ Source1: pngusr.dfa Patch0: libpng-multilib.patch Patch1: libpng-fix-arm-neon.patch Patch2: CVE-2019-6129.patch +Patch6000: backport-avoid-random-test-failure.patch BuildRequires: zlib-devel autoconf automake libtool @@ -63,9 +64,7 @@ autoreconf -vif rm -f %{buildroot}%{_libdir}/*.la %check -%if %{?_with_check:1}%{!?_with_check:0} make check -%endif %ldconfig_post %ldconfig_postun @@ -91,6 +90,9 @@ make check %{_mandir}/man*/* %changelog +* Tue Mar 29 2022 liuyumeng - 1.6.37-3 +- enable test and fix failed tests + * Sat Dec 25 2021 hanhui - 1.6.37-2 - DESC:split tools and static packages