[packages/libharu] - updated to 2.3.0 - removed obsolete libpng15 patch

qboosh qboosh at pld-linux.org
Tue Jul 21 21:30:52 CEST 2015


commit 20e8a1b4b99f4ebd607bd66d294ce7a271aed47d
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Tue Jul 21 21:32:15 2015 +0200

    - updated to 2.3.0
    - removed obsolete libpng15 patch

 libharu-libpng15.patch | 344 -------------------------------------------------
 libharu.spec           |  18 +--
 2 files changed, 10 insertions(+), 352 deletions(-)
---
diff --git a/libharu.spec b/libharu.spec
index 558787f..37de878 100644
--- a/libharu.spec
+++ b/libharu.spec
@@ -1,14 +1,14 @@
 Summary:	Library for generating PDF documents
 Summary(pl.UTF-8):	Biblioteka do generowania dokumentów PDF
 Name:		libharu
-Version:	2.2.1
-Release:	5
+Version:	2.3.0
+%define	tagver	RELEASE_%(echo %{version} | tr . _)
+Release:	1
 License:	MIT-like
 Group:		Libraries
-Source0:	http://libharu.org/files/%{name}-%{version}.tar.bz2
-# Source0-md5:	4febd7e677b1c5d54db59a608b84e79f
+Source0:	https://github.com/libharu/libharu/archive/%{tagver}/%{name}-%{version}.tar.gz
+# Source0-md5:	4f916aa49c3069b3a10850013c507460
 Patch0:		%{name}-libdir.patch
-Patch1:		%{name}-libpng15.patch
 URL:		http://libharu.org/
 BuildRequires:	autoconf >= 2.60
 BuildRequires:	automake
@@ -70,9 +70,8 @@ Static Haru PDF library.
 Statyczna biblioteka Haru PDF.
 
 %prep
-%setup -q
+%setup -q -n %{name}-%{tagver}
 %patch0 -p1
-%patch1 -p1
 
 %build
 %{__libtoolize}
@@ -80,7 +79,10 @@ Statyczna biblioteka Haru PDF.
 %{__autoconf}
 %{__autoheader}
 %{__automake}
-%configure
+# avoid detection of libpng14 and libpng12, use just libpng to get system default version
+%configure \
+	ac_cv_lib_png14_png_init_io=no \
+	ac_cv_lib_png12_png_init_io=no
 
 %{__make}
 
diff --git a/libharu-libpng15.patch b/libharu-libpng15.patch
deleted file mode 100644
index d59f78f..0000000
--- a/libharu-libpng15.patch
+++ /dev/null
@@ -1,344 +0,0 @@
-diff --git a/src/hpdf_image_png.c b/src/hpdf_image_png.c
-index b8f831e..85bd29f 100644
---- a/src/hpdf_image_png.c
-+++ b/src/hpdf_image_png.c
-@@ -109,14 +109,15 @@ ReadPngData_Interlaced  (HPDF_Dict    image,
-                          png_infop    info_ptr)
- {
-     png_uint_32 len = png_get_rowbytes(png_ptr, info_ptr);
-+    png_uint_32 height = png_get_image_height(png_ptr, info_ptr);
-     png_bytep* row_pointers = HPDF_GetMem (image->mmgr,
--                info_ptr->height * sizeof (png_bytep));
-+                height * sizeof (png_bytep));
- 
-     if (row_pointers) {
-         HPDF_UINT i;
- 
--        HPDF_MemSet (row_pointers, 0, info_ptr->height * sizeof (png_bytep));
--        for (i = 0; i < (HPDF_UINT)info_ptr->height; i++) {
-+        HPDF_MemSet (row_pointers, 0, height * sizeof (png_bytep));
-+        for (i = 0; i < (HPDF_UINT)height; i++) {
-             row_pointers[i] = HPDF_GetMem (image->mmgr, len);
- 
-             if (image->error->error_no != HPDF_OK)
-@@ -126,7 +127,7 @@ ReadPngData_Interlaced  (HPDF_Dict    image,
-         if (image->error->error_no == HPDF_OK) {
-             png_read_image(png_ptr, row_pointers);
-             if (image->error->error_no == HPDF_OK) {       /* add this line */
--                for (i = 0; i < (HPDF_UINT)info_ptr->height; i++) {
-+                for (i = 0; i < (HPDF_UINT)height; i++) {
-                     if (HPDF_Stream_Write (image->stream, row_pointers[i], len) !=
-                             HPDF_OK)
-                         break;
-@@ -135,7 +136,7 @@ ReadPngData_Interlaced  (HPDF_Dict    image,
-         }
- 
-         /* clean up */
--        for (i = 0; i < (HPDF_UINT)info_ptr->height; i++) {
-+        for (i = 0; i < (HPDF_UINT)height; i++) {
-             HPDF_FreeMem (image->mmgr, row_pointers[i]);
-         }
- 
-@@ -151,12 +152,13 @@ ReadPngData  (HPDF_Dict    image,
-               png_infop    info_ptr)
- {
-     png_uint_32 len = png_get_rowbytes(png_ptr, info_ptr);
-+    png_uint_32 height = png_get_image_height(png_ptr, info_ptr);
-     png_bytep buf_ptr = HPDF_GetMem (image->mmgr, len);
- 
-     if (buf_ptr) {
-         HPDF_UINT i;
- 
--        for (i = 0; i < (HPDF_UINT)info_ptr->height; i++) {
-+        for (i = 0; i < (HPDF_UINT)height; i++) {
-             png_read_rows(png_ptr, (png_byte**)&buf_ptr, NULL, 1);
-             if (image->error->error_no != HPDF_OK)
-                 break;
-@@ -182,17 +184,19 @@ ReadTransparentPaletteData  (HPDF_Dict    image,
- 	HPDF_STATUS ret = HPDF_OK;
- 	HPDF_UINT i, j;
- 	png_bytep *row_ptr;
-+	png_uint_32 height = png_get_image_height(png_ptr, info_ptr);
-+	png_uint_32 width = png_get_image_width(png_ptr, info_ptr);
- 
--	row_ptr = HPDF_GetMem (image->mmgr, info_ptr->height * sizeof(png_bytep));
-+	row_ptr = HPDF_GetMem (image->mmgr, height * sizeof(png_bytep));
- 	if (!row_ptr) {
- 		return HPDF_FAILD_TO_ALLOC_MEM;
- 	} else {
- 		png_uint_32 len = png_get_rowbytes(png_ptr, info_ptr);
- 
--		for (i = 0; i < (HPDF_UINT)info_ptr->height; i++) {
-+		for (i = 0; i < (HPDF_UINT)height; i++) {
- 			row_ptr[i] = HPDF_GetMem(image->mmgr, len);
- 			if (!row_ptr[i]) {
--				for (; i >= 0; i--) {
-+				for (; i > 0; i--) {
- 					HPDF_FreeMem (image->mmgr, row_ptr[i]);
- 				}
- 				HPDF_FreeMem (image->mmgr, row_ptr);
-@@ -207,19 +211,19 @@ ReadTransparentPaletteData  (HPDF_Dict    image,
- 		goto Error;
- 	}
- 
--	for (j = 0; j < info_ptr->height; j++) {
--		for (i = 0; i < info_ptr->width; i++) {
--			smask_data[info_ptr->width * j + i] = (row_ptr[j][i] < num_trans) ? trans[row_ptr[j][i]] : 0xFF;
-+	for (j = 0; j < height; j++) {
-+		for (i = 0; i < width; i++) {
-+			smask_data[width * j + i] = (row_ptr[j][i] < num_trans) ? trans[row_ptr[j][i]] : 0xFF;
- 		}
- 
--		if (HPDF_Stream_Write (image->stream, row_ptr[j], info_ptr->width) != HPDF_OK) {
-+		if (HPDF_Stream_Write (image->stream, row_ptr[j], width) != HPDF_OK) {
- 			ret = HPDF_FILE_IO_ERROR;
- 			goto Error;
- 		}
- 	}
- 
- Error:
--	for (i = 0; i < (HPDF_UINT)info_ptr->height; i++) {
-+	for (i = 0; i < (HPDF_UINT)height; i++) {
- 		HPDF_FreeMem (image->mmgr, row_ptr[i]);
- 	}
- 
-@@ -238,6 +242,8 @@ ReadTransparentPngData  (HPDF_Dict    image,
- 	HPDF_UINT i, j;
- 	png_bytep *row_ptr, row;
- 	png_byte color_type;
-+	png_uint_32 height = png_get_image_height(png_ptr, info_ptr);
-+	png_uint_32 width = png_get_image_width(png_ptr, info_ptr);
- 
- 	color_type = png_get_color_type(png_ptr, info_ptr);
- 
-@@ -245,16 +251,16 @@ ReadTransparentPngData  (HPDF_Dict    image,
- 		return HPDF_INVALID_PNG_IMAGE;
- 	}
- 
--	row_ptr = HPDF_GetMem (image->mmgr, info_ptr->height * sizeof(png_bytep));
-+	row_ptr = HPDF_GetMem (image->mmgr, height * sizeof(png_bytep));
- 	if (!row_ptr) {
- 		return HPDF_FAILD_TO_ALLOC_MEM;
- 	} else {
- 		png_uint_32 len = png_get_rowbytes(png_ptr, info_ptr);
- 
--		for (i = 0; i < (HPDF_UINT)info_ptr->height; i++) {
-+		for (i = 0; i < (HPDF_UINT)height; i++) {
- 			row_ptr[i] = HPDF_GetMem(image->mmgr, len);
- 			if (!row_ptr[i]) {
--				for (; i >= 0; i--) {
-+				for (; i > 0; i--) {
- 					HPDF_FreeMem (image->mmgr, row_ptr[i]);
- 				}
- 				HPDF_FreeMem (image->mmgr, row_ptr);
-@@ -271,12 +277,12 @@ ReadTransparentPngData  (HPDF_Dict    image,
- 
- 	switch (color_type) {
- 		case PNG_COLOR_TYPE_RGB_ALPHA:
--			row_len = 3 * info_ptr->width * sizeof(png_byte);
--			for (j = 0; j < info_ptr->height; j++) {
--				for (i = 0; i < info_ptr->width; i++) {
-+			row_len = 3 * width * sizeof(png_byte);
-+			for (j = 0; j < height; j++) {
-+				for (i = 0; i < width; i++) {
- 					row = row_ptr[j];
- 					memmove(row + (3 * i), row + (4*i), 3);
--					smask_data[info_ptr->width * j + i] = row[4 * i + 3];
-+					smask_data[width * j + i] = row[4 * i + 3];
- 				}
- 
- 				if (HPDF_Stream_Write (image->stream, row, row_len) != HPDF_OK) {
-@@ -286,12 +292,12 @@ ReadTransparentPngData  (HPDF_Dict    image,
- 			}
- 			break;
- 		case PNG_COLOR_TYPE_GRAY_ALPHA:
--			row_len = info_ptr->width * sizeof(png_byte);
--			for (j = 0; j < info_ptr->height; j++) {
--				for (i = 0; i < info_ptr->width; i++) {
-+			row_len = width * sizeof(png_byte);
-+			for (j = 0; j < height; j++) {
-+				for (i = 0; i < width; i++) {
- 					row = row_ptr[j];
- 					row[i] = row[2 * i];
--					smask_data[info_ptr->width * j + i] = row[2 * i + 1];
-+					smask_data[width * j + i] = row[2 * i + 1];
- 				}
- 
- 				if (HPDF_Stream_Write (image->stream, row, row_len) != HPDF_OK) {
-@@ -306,7 +312,7 @@ ReadTransparentPngData  (HPDF_Dict    image,
- 	}
- 
- Error:
--	for (i = 0; i < (HPDF_UINT)info_ptr->height; i++) {
-+	for (i = 0; i < (HPDF_UINT)height; i++) {
- 		HPDF_FreeMem (image->mmgr, row_ptr[i]);
- 	}
- 
-@@ -415,7 +421,8 @@ LoadPngData  (HPDF_Dict     image,
- 
- {
- 	HPDF_STATUS ret = HPDF_OK;
--
-+	png_uint_32 width, height;
-+	int bit_depth, color_type;
- 	png_structp png_ptr = NULL;
- 	png_infop info_ptr = NULL;
- 
-@@ -447,8 +454,10 @@ LoadPngData  (HPDF_Dict     image,
- 		goto Exit;
- 	}
- 
-+	png_get_IHDR(png_ptr, info_ptr, &width, &height, &bit_depth, &color_type, NULL, NULL, NULL);
-+
- 	/* 16bit images are not supported. */
--	if (info_ptr->bit_depth == 16) {
-+	if (bit_depth == 16) {
- 		png_set_strip_16(png_ptr);
- 	}
- 
-@@ -458,7 +467,7 @@ LoadPngData  (HPDF_Dict     image,
- 	}
- 
- 	/* check palette-based images for transparent areas and load them immediately if found */
--	if (xref && PNG_COLOR_TYPE_PALETTE & info_ptr->color_type) {
-+	if (xref && PNG_COLOR_TYPE_PALETTE & color_type) {
- 		png_bytep trans;
- 		int num_trans;
- 		HPDF_Dict smask;
-@@ -478,10 +487,10 @@ LoadPngData  (HPDF_Dict     image,
- 		smask->header.obj_class |= HPDF_OSUBCLASS_XOBJECT;
- 		ret = HPDF_Dict_AddName (smask, "Type", "XObject");
- 		ret += HPDF_Dict_AddName (smask, "Subtype", "Image");
--		ret += HPDF_Dict_AddNumber (smask, "Width", (HPDF_UINT)info_ptr->width);
--		ret += HPDF_Dict_AddNumber (smask, "Height", (HPDF_UINT)info_ptr->height);
-+		ret += HPDF_Dict_AddNumber (smask, "Width", (HPDF_UINT)width);
-+		ret += HPDF_Dict_AddNumber (smask, "Height", (HPDF_UINT)height);
- 		ret += HPDF_Dict_AddName (smask, "ColorSpace", "DeviceGray");
--		ret += HPDF_Dict_AddNumber (smask, "BitsPerComponent", (HPDF_UINT)info_ptr->bit_depth);
-+		ret += HPDF_Dict_AddNumber (smask, "BitsPerComponent", (HPDF_UINT)bit_depth);
- 
- 		if (ret != HPDF_OK) {
- 			HPDF_Dict_Free(smask);
-@@ -489,7 +498,7 @@ LoadPngData  (HPDF_Dict     image,
- 			goto Exit;
- 		}
- 
--		smask_data = HPDF_GetMem(image->mmgr, info_ptr->width * info_ptr->height);
-+		smask_data = HPDF_GetMem(image->mmgr, width * height);
- 		if (!smask_data) {
- 			HPDF_Dict_Free(smask);
- 			ret = HPDF_FAILD_TO_ALLOC_MEM;
-@@ -503,7 +512,7 @@ LoadPngData  (HPDF_Dict     image,
- 			goto Exit;
- 		}
- 
--		if (HPDF_Stream_Write(smask->stream, smask_data, info_ptr->width * info_ptr->height) != HPDF_OK) {
-+		if (HPDF_Stream_Write(smask->stream, smask_data, width * height) != HPDF_OK) {
- 			HPDF_FreeMem(image->mmgr, smask_data);
- 			HPDF_Dict_Free(smask);
- 			ret = HPDF_FILE_IO_ERROR;
-@@ -513,9 +522,9 @@ LoadPngData  (HPDF_Dict     image,
- 
- 
- 		ret += CreatePallet(image, png_ptr, info_ptr);
--		ret += HPDF_Dict_AddNumber (image, "Width", (HPDF_UINT)info_ptr->width);
--		ret += HPDF_Dict_AddNumber (image, "Height", (HPDF_UINT)info_ptr->height);
--		ret += HPDF_Dict_AddNumber (image, "BitsPerComponent",	(HPDF_UINT)info_ptr->bit_depth);
-+		ret += HPDF_Dict_AddNumber (image, "Width", (HPDF_UINT)width);
-+		ret += HPDF_Dict_AddNumber (image, "Height", (HPDF_UINT)height);
-+		ret += HPDF_Dict_AddNumber (image, "BitsPerComponent",	(HPDF_UINT)bit_depth);
- 		ret += HPDF_Dict_Add (image, "SMask", smask);
- 
- 		png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
-@@ -526,7 +535,7 @@ no_transparent_color_in_palette:
- 
- 	/* read images with alpha channel right away 
- 	   we have to do this because image transparent mask must be added to the Xref */
--	if (xref && PNG_COLOR_MASK_ALPHA & info_ptr->color_type) {
-+	if (xref && PNG_COLOR_MASK_ALPHA & color_type) {
- 		HPDF_Dict smask;
- 		png_bytep smask_data;
- 
-@@ -539,10 +548,10 @@ no_transparent_color_in_palette:
- 		smask->header.obj_class |= HPDF_OSUBCLASS_XOBJECT;
- 		ret = HPDF_Dict_AddName (smask, "Type", "XObject");
- 		ret += HPDF_Dict_AddName (smask, "Subtype", "Image");
--		ret += HPDF_Dict_AddNumber (smask, "Width", (HPDF_UINT)info_ptr->width);
--		ret += HPDF_Dict_AddNumber (smask, "Height", (HPDF_UINT)info_ptr->height);
-+		ret += HPDF_Dict_AddNumber (smask, "Width", (HPDF_UINT)width);
-+		ret += HPDF_Dict_AddNumber (smask, "Height", (HPDF_UINT)height);
- 		ret += HPDF_Dict_AddName (smask, "ColorSpace", "DeviceGray");
--		ret += HPDF_Dict_AddNumber (smask, "BitsPerComponent", (HPDF_UINT)info_ptr->bit_depth);
-+		ret += HPDF_Dict_AddNumber (smask, "BitsPerComponent", (HPDF_UINT)bit_depth);
- 
- 		if (ret != HPDF_OK) {
- 			HPDF_Dict_Free(smask);
-@@ -550,7 +559,7 @@ no_transparent_color_in_palette:
- 			goto Exit;
- 		}
- 
--		smask_data = HPDF_GetMem(image->mmgr, info_ptr->width * info_ptr->height);
-+		smask_data = HPDF_GetMem(image->mmgr, width * height);
- 		if (!smask_data) {
- 			HPDF_Dict_Free(smask);
- 			ret = HPDF_FAILD_TO_ALLOC_MEM;
-@@ -564,7 +573,7 @@ no_transparent_color_in_palette:
- 			goto Exit;
- 		}
- 
--		if (HPDF_Stream_Write(smask->stream, smask_data, info_ptr->width * info_ptr->height) != HPDF_OK) {
-+		if (HPDF_Stream_Write(smask->stream, smask_data, width * height) != HPDF_OK) {
- 			HPDF_FreeMem(image->mmgr, smask_data);
- 			HPDF_Dict_Free(smask);
- 			ret = HPDF_FILE_IO_ERROR;
-@@ -572,14 +581,14 @@ no_transparent_color_in_palette:
- 		}
- 		HPDF_FreeMem(image->mmgr, smask_data);
- 
--		if (info_ptr->color_type == PNG_COLOR_TYPE_GRAY_ALPHA) {
-+		if (color_type == PNG_COLOR_TYPE_GRAY_ALPHA) {
- 			ret += HPDF_Dict_AddName (image, "ColorSpace", "DeviceGray");
- 		} else {
- 			ret += HPDF_Dict_AddName (image, "ColorSpace", "DeviceRGB");
- 		}
--		ret += HPDF_Dict_AddNumber (image, "Width", (HPDF_UINT)info_ptr->width);
--		ret += HPDF_Dict_AddNumber (image, "Height", (HPDF_UINT)info_ptr->height);
--		ret += HPDF_Dict_AddNumber (image, "BitsPerComponent",	(HPDF_UINT)info_ptr->bit_depth);
-+		ret += HPDF_Dict_AddNumber (image, "Width", (HPDF_UINT)width);
-+		ret += HPDF_Dict_AddNumber (image, "Height", (HPDF_UINT)height);
-+		ret += HPDF_Dict_AddNumber (image, "BitsPerComponent",	(HPDF_UINT)bit_depth);
- 		ret += HPDF_Dict_Add (image, "SMask", smask);
- 
- 		png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
-@@ -589,9 +598,9 @@ no_transparent_color_in_palette:
- 	/* if the image has color palette, copy the pallet of the image to
- 	 * create color map.
- 	 */
--	if (info_ptr->color_type == PNG_COLOR_TYPE_PALETTE)
-+	if (color_type == PNG_COLOR_TYPE_PALETTE)
- 		ret = CreatePallet(image, png_ptr, info_ptr);
--	else if (info_ptr->color_type == PNG_COLOR_TYPE_GRAY)
-+	else if (color_type == PNG_COLOR_TYPE_GRAY)
- 		ret = HPDF_Dict_AddName (image, "ColorSpace", "DeviceGray");
- 	else
- 		ret = HPDF_Dict_AddName (image, "ColorSpace", "DeviceRGB");
-@@ -617,16 +626,16 @@ no_transparent_color_in_palette:
- 	}
- 
- 	/* setting the info of the image. */
--	if (HPDF_Dict_AddNumber (image, "Width", (HPDF_UINT)info_ptr->width)
-+	if (HPDF_Dict_AddNumber (image, "Width", (HPDF_UINT)width)
- 			!= HPDF_OK)
- 		goto Exit;
- 
--	if (HPDF_Dict_AddNumber (image, "Height", (HPDF_UINT)info_ptr->height)
-+	if (HPDF_Dict_AddNumber (image, "Height", (HPDF_UINT)height)
- 			!= HPDF_OK)
- 		goto Exit;
- 
- 	if (HPDF_Dict_AddNumber (image, "BitsPerComponent",
--				(HPDF_UINT)info_ptr->bit_depth) != HPDF_OK)
-+				(HPDF_UINT)bit_depth) != HPDF_OK)
- 		goto Exit;
- 
- 	/* clean up */
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/libharu.git/commitdiff/20e8a1b4b99f4ebd607bd66d294ce7a271aed47d



More information about the pld-cvs-commit mailing list