Hello community,

here is the log from the commit of package libpng16 for openSUSE:Factory 
checked in at 2019-02-04 21:24:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libpng16 (Old)
 and      /work/SRC/openSUSE:Factory/.libpng16.new.28833 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libpng16"

Mon Feb  4 21:24:19 2019 rev:41 rq:669458 version:1.6.36

Changes:
--------
--- /work/SRC/openSUSE:Factory/libpng16/libpng16.changes        2019-01-03 
18:05:25.760204290 +0100
+++ /work/SRC/openSUSE:Factory/.libpng16.new.28833/libpng16.changes     
2019-02-04 21:24:21.295611170 +0100
@@ -1,0 +2,12 @@
+Mon Jan 28 11:43:05 UTC 2019 - Petr Gajdos <[email protected]>
+
+- fix arm build [bsc#1121829]
+  + libpng-arm-free.patch
+
+-------------------------------------------------------------------
+Mon Jan 14 13:11:39 UTC 2019 - Petr Gajdos <[email protected]>
+
+- asan_build: build ASAN included
+- debug_build: build more suitable for debugging, install pngcp
+
+-------------------------------------------------------------------

New:
----
  libpng-arm-free.patch

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

Other differences:
------------------
++++++ libpng16.spec ++++++
--- /var/tmp/diff_new_pack.s4g5Jz/_old  2019-02-04 21:24:21.919611016 +0100
+++ /var/tmp/diff_new_pack.s4g5Jz/_new  2019-02-04 21:24:21.919611016 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package libpng16
 #
-# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -16,7 +16,9 @@
 #
 
 
-#
+%define debug_build 0
+%define asan_build  0
+
 %define major   1
 %define minor   6
 %define micro   36
@@ -30,6 +32,7 @@
 License:        Zlib
 Group:          Development/Libraries/C and C++
 Url:            http://www.libpng.org/pub/png/libpng.html
+Patch0:         libpng-arm-free.patch
 Source0:        
http://prdownloads.sourceforge.net/libpng/libpng-%{version}.tar.xz
 Source2:        libpng16.keyring
 Source3:        rpm-macros.libpng-tools
@@ -95,17 +98,28 @@
 
 %prep
 %setup -q -n libpng-%{version}
+%patch0 -p1
 
 %build
 # PNG_SAFE_LIMITS_SUPPORTED: 
http://www.openwall.com/lists/oss-security/2015/01/10/1
 export CFLAGS="%{optflags} -O3 -DPNG_SAFE_LIMITS_SUPPORTED 
-DPNG_SKIP_SETJMP_CHECK $(getconf LFS_CFLAGS)"
 export LDFLAGS="-Wl,-z,relro,-z,now"
-
+%if %{debug_build}
+export CFLAGS="$CFLAGS -Og"
+%endif
 %configure \
               --disable-static
+%if %{asan_build}
+sed -i -e 's/^\(CFLAGS.*\)$/\1 -fsanitize=address/' \
+       -e 's/\(^LIBS =.*\)/\1 -lasan/' Makefile
+%endif
 make %{?_smp_mflags}
 
 %check
+%if %{asan_build}
+# ASAN needs /proc to be mounted
+exit 0
+%endif
 make -j1 check
 
 %install
@@ -114,6 +128,9 @@
 mkdir -p %{buildroot}%{_sysconfdir}/rpm
 cp -a %{SOURCE3} \
       %{buildroot}%{_sysconfdir}/rpm/macros.libpng-tools
+%if %{debug_build} ||%{asan_build}
+install -m755 .libs/pngcp %{buildroot}/%{_bindir}
+%endif
 
 %post -n %{libname} -p /sbin/ldconfig
 %postun -n %{libname} -p /sbin/ldconfig
@@ -140,6 +157,9 @@
 %files tools
 %{_bindir}/png-fix-itxt
 %{_bindir}/pngfix
+%if %{debug_build} || %{asan_build}
+%{_bindir}/pngcp
+%endif
 %{_sysconfdir}/rpm/macros.libpng-tools
 
 %changelog

++++++ libpng-arm-free.patch ++++++
Index: libpng-1.6.36/pngread.c
===================================================================
--- libpng-1.6.36.orig/pngread.c        2018-12-01 15:36:00.000000000 +0100
+++ libpng-1.6.36/pngread.c     2019-01-28 12:41:14.044709070 +0100
@@ -994,6 +994,11 @@ png_read_destroy(png_structrp png_ptr)
    png_ptr->chunk_list = NULL;
 #endif
 
+#if PNG_ARM_NEON_IMPLEMENTATION == 1
+   png_free(png_ptr, png_ptr->riffled_palette);
+   png_ptr->riffled_palette = NULL;
+#endif
+
    /* NOTE: the 'setjmp' buffer may still be allocated and the memory and error
     * callbacks are still set at this point.  They are required to complete the
     * destruction of the png_struct itself.


Reply via email to