Date: Wed, 24 Dec 2014 13:12:16 +0000 (UTC) From: Baptiste Daroussin <bapt@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r375455 - in head/graphics/exact-image: . files Message-ID: <201412241312.sBODCGQd024301@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: bapt Date: Wed Dec 24 13:12:15 2014 New Revision: 375455 URL: https://svnweb.freebsd.org/changeset/ports/375455 QAT: https://qat.redports.org/buildarchive/r375455/ Log: Properly support png 1.5 Obtained from: Gentoo Added: head/graphics/exact-image/files/patch-libpng14 (contents, props changed) head/graphics/exact-image/files/patch-libpng15 (contents, props changed) Deleted: head/graphics/exact-image/files/patch-codecs__png.cc Modified: head/graphics/exact-image/Makefile Modified: head/graphics/exact-image/Makefile ============================================================================== --- head/graphics/exact-image/Makefile Wed Dec 24 13:08:54 2014 (r375454) +++ head/graphics/exact-image/Makefile Wed Dec 24 13:12:15 2014 (r375455) @@ -16,7 +16,7 @@ BUILD_DEPENDS= swig:${PORTSDIR}/devel/sw LIB_DEPENDS= libagg.so:${PORTSDIR}/graphics/agg \ libjpeg.so:${PORTSDIR}/graphics/jpeg \ libtiff.so:${PORTSDIR}/graphics/tiff \ - libpng15.so:${PORTSDIR}/graphics/png \ + libpng.so:${PORTSDIR}/graphics/png \ libgif.so:${PORTSDIR}/graphics/giflib \ libjasper.so:${PORTSDIR}/graphics/jasper \ libIlmImf.so:${PORTSDIR}/graphics/OpenEXR \ @@ -26,7 +26,7 @@ LIB_DEPENDS= libagg.so:${PORTSDIR}/graph #hack to get custom exactcode configure script to enable tiff support with #broken headers on c++ in base system: -CPPFLAGS+= -fpermissive -I${LOCALBASE}/include -I${LOCALBASE}/include/libpng15 +CPPFLAGS+= -fpermissive -I${LOCALBASE}/include USES= gmake perl5 pkgconfig python tar:bzip2 USE_XORG= x11 HAS_CONFIGURE= yes Added: head/graphics/exact-image/files/patch-libpng14 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/graphics/exact-image/files/patch-libpng14 Wed Dec 24 13:12:15 2014 (r375455) @@ -0,0 +1,69 @@ +--- codecs/png.cc ++++ codecs/png.cc +@@ -71,7 +71,7 @@ + /* Allocate/initialize the memory for image information. REQUIRED. */ + info_ptr = png_create_info_struct(png_ptr); + if (info_ptr == NULL) { +- png_destroy_read_struct(&png_ptr, png_infopp_NULL, png_infopp_NULL); ++ png_destroy_read_struct(&png_ptr, NULL, NULL); + return 0; + } + +@@ -82,7 +82,7 @@ + + if (setjmp(png_jmpbuf(png_ptr))) { + /* Free all of the memory associated with the png_ptr and info_ptr */ +- png_destroy_read_struct(&png_ptr, &info_ptr, png_infopp_NULL); ++ png_destroy_read_struct(&png_ptr, &info_ptr, NULL); + /* If we get here, we had a problem reading the file */ + return 0; + } +@@ -99,7 +99,7 @@ + png_read_info (png_ptr, info_ptr); + + png_get_IHDR (png_ptr, info_ptr, &width, &height, &bit_depth, &color_type, +- &interlace_type, int_p_NULL, int_p_NULL); ++ &interlace_type, NULL, NULL); + + image.w = width; + image.h = height; +@@ -132,7 +132,7 @@ + #if 0 // no longer needed + /* Expand grayscale images to the full 8 bits from 2, or 4 bits/pixel */ + if (color_type == PNG_COLOR_TYPE_GRAY && bit_depth > 1 && bit_depth < 8) { +- png_set_gray_1_2_4_to_8(png_ptr); ++ png_set_expand_gray_1_2_4_to_8(png_ptr); + image.bps = 8; + } + #endif +@@ -196,11 +196,11 @@ + for (int pass = 0; pass < number_passes; ++pass) + for (unsigned int y = 0; y < height; ++y) { + row_pointers[0] = image.getRawData() + y * stride; +- png_read_rows(png_ptr, row_pointers, png_bytepp_NULL, 1); ++ png_read_rows(png_ptr, row_pointers, NULL, 1); + } + + /* clean up after the read, and free any memory allocated - REQUIRED */ +- png_destroy_read_struct(&png_ptr, &info_ptr, png_infopp_NULL); ++ png_destroy_read_struct(&png_ptr, &info_ptr, NULL); + + /* that's it */ + return true; +@@ -224,7 +224,7 @@ + /* Allocate/initialize the memory for image information. REQUIRED. */ + info_ptr = png_create_info_struct(png_ptr); + if (info_ptr == NULL) { +- png_destroy_write_struct(&png_ptr, png_infopp_NULL); ++ png_destroy_write_struct(&png_ptr, NULL); + return false; + } + +@@ -244,7 +244,6 @@ + else if (quality > Z_BEST_COMPRESSION) quality = Z_BEST_COMPRESSION; + png_set_compression_level(png_ptr, quality); + +- png_info_init (info_ptr); + + /* Set up our STL stream output control */ + png_set_write_fn (png_ptr, stream, &stdstream_write_data, &stdstream_flush_data); Added: head/graphics/exact-image/files/patch-libpng15 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/graphics/exact-image/files/patch-libpng15 Wed Dec 24 13:12:15 2014 (r375455) @@ -0,0 +1,34 @@ +--- codecs/png.cc ++++ codecs/png.cc +@@ -16,6 +16,7 @@ + */ + + #include <stdlib.h> ++#include <zlib.h> + #include <png.h> + + #include <iostream> +@@ -104,7 +105,7 @@ + image.w = width; + image.h = height; + image.bps = bit_depth; +- image.spp = info_ptr->channels; ++ image.spp = png_get_channels(png_ptr, info_ptr); + + png_uint_32 res_x, res_y; + res_x = png_get_x_pixels_per_meter(png_ptr, info_ptr); +@@ -120,10 +121,13 @@ + // png_set_packswap(png_ptr); + + /* Expand paletted colors into true RGB triplets */ ++ ++ int num_trans; ++ + if (color_type == PNG_COLOR_TYPE_PALETTE) { + png_set_palette_to_rgb(png_ptr); + image.bps = 8; +- if (info_ptr->num_trans) ++ if (num_trans) + image.spp = 4; + else + image.spp = 3;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201412241312.sBODCGQd024301>