On Sat, Aug 11, 2018 at 02:58:44PM +0100, Stuart Henderson wrote:
> On 2018/08/11 00:43, Solene Rapenne wrote:
> > this patch updates libpng to 1.6.35, the new version changelog is the
> > following:
> > 
> > Changes since the last public release (1.6.34):
> > 
> >   Restored 21 of the contrib/pngsuite/i*.png, which do not cause test
> >     failures. Placed the remainder in contrib/pngsuite/interlaced/i*.png.
> >   Added calls to png_set_*() transforms commonly used by browsers to
> >     the fuzzer.
> >   Removed some unnecessary brackets in pngrtran.c
> >   Fixed miscellaneous typos (Patch by github user "luzpaz").
> >   Change "ASM C" to "C ASM" in CMakeLists.txt
> >   Fixed incorrect handling of bKGD chunk in sub-8-bit files (Cosmin)
> >   Added hardware optimization directories to zip and 7z distributions.
> >   Fixed incorrect bitmask for options.
> >   Fixed many spelling typos.
> >   Make png_get_iCCP consistent with man page (allow compression-type 
> > argument
> >     to be NULL, bug report by Lenard Szolnoki).
> >   Replaced the remaining uses of png_size_t with size_t (Cosmin)
> >   Fixed the calculation of row_factor in png_check_chunk_length
> >     (reported by Thuan Pham in SourceForge issue #278)
> >   Added missing parentheses to a macro definition
> >     (suggested by "irwir" in GitHub issue #216)
> > 
> > 
> > It compiles fine and the test pass 100%, maybe a bulk build is required?
> 
> I've read through a diff of old and new source, I don't think a bulk
> build is necessary.  OK with me though I wouldn't mind another pair of
> eyes on it as it's high in the dependency chain and the release approaches.

FWIW: I looked through the diff as well and couldn't spot anything
worrisome. I'm also ok with this.

There's one build warning:

/usr/ports/pobj/png-1.6.35/libpng-1.6.35/contrib/libtests/pngvalid.c:11661:4:
warning: implicit declaration of function 'feenableexcept' is invalid in C99 
[-Wimplicit-function-declaration]
         feenableexcept(FE_DIVBYZERO | FE_INVALID | FE_OVERFLOW);
            ^

due to the fact that feenableexcept() is guarded by __BSD_VISIBLE, which
is set to 0 if _POSIX_SOURCE is defined without _BSD_SOURCE being defined.

Patch below would fix this. Tests still pass.

If a more experienced porter agrees with this, please include it with
your diff.

Index: patches/patch-contrib_libtests_pngvalid_c
===================================================================
RCS file: patches/patch-contrib_libtests_pngvalid_c
diff -N patches/patch-contrib_libtests_pngvalid_c
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-contrib_libtests_pngvalid_c   11 Aug 2018 15:43:41 -0000
@@ -0,0 +1,16 @@
+$OpenBSD$
+
+Avoid implicit declaration of feenableexcept(3).
+
+Index: contrib/libtests/pngvalid.c
+--- contrib/libtests/pngvalid.c.orig
++++ contrib/libtests/pngvalid.c
+@@ -20,7 +20,7 @@
+ 
+ #define _POSIX_SOURCE 1
+ #define _ISOC99_SOURCE 1 /* For floating point */
+-#define _GNU_SOURCE 1 /* For the floating point exception extension */
++#define _BSD_SOURCE 1 /* For the floating point exception extension */
+ 
+ #include <signal.h>
+ #include <stdio.h>

Reply via email to