Subject: [alpine-devel] [PATCH] main/ghostscript: upgrade to 9.04

From: Cameron Banta <[email-masked]>
Date: Fri, 28 Oct 2011 17:05:00 +0000

---
 main/ghostscript/APKBUILD                        |   25 +--
 main/ghostscript/ghostscript-png15.patch         |  196 ----------------------
 main/ghostscript/ghostscript-system-jasper.patch |   26 ---
 3 files changed, 9 insertions(+), 238 deletions(-)
 delete mode 100644 main/ghostscript/ghostscript-png15.patch
 delete mode 100644 main/ghostscript/ghostscript-system-jasper.patch

diff --git a/main/ghostscript/APKBUILD b/main/ghostscript/APKBUILD
index 95582ff..d6abc5c 100644
--- a/main/ghostscript/APKBUILD
+++ b/main/ghostscript/APKBUILD
@@ -1,27 +1,22 @@
 # Contributor: Cameron Banta <[email-masked]>
 # Maintainer: Cameron Banta <[email-masked]>
 pkgname=ghostscript
-pkgver=9.00
-pkgrel=2
+pkgver=9.04
+pkgrel=0
 pkgdesc="An interpreter for the PostScript language and for PDF"
 url="http://ghostscript.com/"
 arch="all"
-license="GPL"
-makedepends="autoconf automake jpeg-dev libpng-dev jasper-dev expat-dev zlib-dev tiff-dev libiconv-dev"
+license="GPL3"
+makedepends="autoconf automake jpeg-dev libpng-dev jasper-dev expat-dev zlib-dev tiff-dev 
+             freetype-dev libiconv-dev lcms-dev"
 subpackages="$pkgname-doc $pkgname-dev"
-source="http://ghostscript.com/releases/$pkgname-$pkgver.tar.gz
-	ghostscript-system-jasper.patch
-	ghostscript-png15.patch"
+source="http://downloads.ghostscript.com/public/$pkgname-$pkgver.tar.gz"
 
 prepare() {
 	cd "$srcdir/$pkgname-$pkgver"
 
 	# force it to use system-libs
-	rm -rf jpeg libpng jasper expat tiff zlib
-
-	# fix build with systems jasper
-	patch -Np1 -i "${srcdir}"/ghostscript-system-jasper.patch || return 1
-	patch -Np0 -i "${srcdir}"/ghostscript-png15.patch || return 1
+	rm -rf jpeg libpng zlib jasper expat tiff lcms
 
 	# fix parallel builds
 	sed -i -e 's/ECHO_XE/ECHOGS_XE/g' \
@@ -41,7 +36,7 @@ prepare() {
 		--without-omni \
 		--with-drivers=FILES \
 		--with-fontpath=/usr/share/fonts/Type1:/usr/share/fonts \
-		--disable-cups --disable-gtk --disable-cairo \
+		--disable-cups --disable-gtk \
 		--disable-compile-inits # needed for linking with system-zlib
 }
 
@@ -70,6 +65,4 @@ package() {
 	mv "$pkgdir/usr/share/$pkgname/$pkgver/examples" "$pkgdir/usr/share/doc/$pkgname"
 }
 
-md5sums="a402462478b4cdda3e1816899227b845  ghostscript-9.00.tar.gz
-f5bc029b0ed05ac8d602bff0e1c021bd  ghostscript-system-jasper.patch
-020ebbd97bb3dd226660bc03ce08293c  ghostscript-png15.patch"
+md5sums="9c2fb4af1eb609d09dba5bb0fa76173a  ghostscript-9.04.tar.gz"
diff --git a/main/ghostscript/ghostscript-png15.patch b/main/ghostscript/ghostscript-png15.patch
deleted file mode 100644
index dca4f07..0000000
--- a/main/ghostscript/ghostscript-png15.patch
+++ /dev/null
@@ -1,196 +0,0 @@
-$NetBSD: patch-ak,v 1.5 2011/01/15 14:08:10 wiz Exp $
-
-Fix build with png-1.5. From John Bowler.
-
---- base/gdevpng.c.orig	2008-07-17 02:34:01.000000000 +0000
-+++ base/gdevpng.c
-@@ -36,12 +36,14 @@
- #include "gdevpccm.h"
- #include "gscdefs.h"
- 
--#define PNG_INTERNAL
- /*
-  * libpng versions 1.0.3 and later allow disabling access to the stdxxx
-  * files while retaining support for FILE * I/O.
-+ *
-+ * This is a misunderstanding - this is a build time option for libpng,
-+ * it has no effect on a user of libpng.
-  */
--#define PNG_NO_CONSOLE_IO
-+/*#define PNG_NO_CONSOLE_IO*/
- /*
-  * Earlier libpng versions require disabling FILE * I/O altogether.
-  * This produces a compiler warning about no prototype for png_init_io.
-@@ -280,7 +282,7 @@ png_print_page(gx_device_printer * pdev,
- 	goto done;
-     }
-     /* set error handling */
--    if (setjmp(png_ptr->jmpbuf)) {
-+    if (setjmp(png_jmpbuf(png_ptr))) {
- 	/* If we get here, we had a problem reading the file */
- 	code = gs_note_error(gs_error_VMerror);
- 	goto done;
-@@ -290,19 +292,12 @@ png_print_page(gx_device_printer * pdev,
-     png_init_io(png_ptr, file);
- 
-     /* set the file information here */
--    info_ptr->width = pdev->width;
--    info_ptr->height = pdev->height;
--    /* resolution is in pixels per meter vs. dpi */
--    info_ptr->x_pixels_per_unit =
--	(png_uint_32) (pdev->HWResolution[0] * (100.0 / 2.54));
--    info_ptr->y_pixels_per_unit =
--	(png_uint_32) (pdev->HWResolution[1] * (100.0 / 2.54));
--    info_ptr->phys_unit_type = PNG_RESOLUTION_METER;
--    info_ptr->valid |= PNG_INFO_pHYs;
-     switch (depth) {
- 	case 32:
--	    info_ptr->bit_depth = 8;
--	    info_ptr->color_type = PNG_COLOR_TYPE_RGB_ALPHA;
-+	    png_set_IHDR(png_ptr, info_ptr, pdev->width, pdev->height,
-+	    	8, PNG_COLOR_TYPE_RGB_ALPHA,
-+		PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT,
-+		PNG_FILTER_TYPE_DEFAULT);
- 	    png_set_invert_alpha(png_ptr);
- 	    {   gx_device_pngalpha *ppdev = (gx_device_pngalpha *)pdev;
- 		png_color_16 background;
-@@ -315,57 +310,69 @@ png_print_page(gx_device_printer * pdev,
- 	    }
- 	    break;
- 	case 48:
--	    info_ptr->bit_depth = 16;
--	    info_ptr->color_type = PNG_COLOR_TYPE_RGB;
-+	    png_set_IHDR(png_ptr, info_ptr, pdev->width, pdev->height,
-+	    	16, PNG_COLOR_TYPE_RGB,
-+		PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT,
-+		PNG_FILTER_TYPE_DEFAULT);
- #if defined(ARCH_IS_BIG_ENDIAN) && (!ARCH_IS_BIG_ENDIAN) 
- 	    png_set_swap(png_ptr);
- #endif
- 	    break;
- 	case 24:
--	    info_ptr->bit_depth = 8;
--	    info_ptr->color_type = PNG_COLOR_TYPE_RGB;
-+	    png_set_IHDR(png_ptr, info_ptr, pdev->width, pdev->height,
-+	    	8, PNG_COLOR_TYPE_RGB,
-+		PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT,
-+		PNG_FILTER_TYPE_DEFAULT);
- 	    break;
- 	case 8:
--	    info_ptr->bit_depth = 8;
--	    if (gx_device_has_color(pdev))
--		info_ptr->color_type = PNG_COLOR_TYPE_PALETTE;
--	    else
--		info_ptr->color_type = PNG_COLOR_TYPE_GRAY;
-+	    png_set_IHDR(png_ptr, info_ptr, pdev->width, pdev->height,
-+	    	8, gx_device_has_color(pdev) ?
-+			PNG_COLOR_TYPE_PALETTE : PNG_COLOR_TYPE_GRAY,
-+		PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT,
-+		PNG_FILTER_TYPE_DEFAULT);
- 	    break;
- 	case 4:
--	    info_ptr->bit_depth = 4;
--	    info_ptr->color_type = PNG_COLOR_TYPE_PALETTE;
-+	    png_set_IHDR(png_ptr, info_ptr, pdev->width, pdev->height,
-+	    	4, PNG_COLOR_TYPE_PALETTE,
-+		PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT,
-+		PNG_FILTER_TYPE_DEFAULT);
- 	    break;
- 	case 1:
--	    info_ptr->bit_depth = 1;
--	    info_ptr->color_type = PNG_COLOR_TYPE_GRAY;
-+	    png_set_IHDR(png_ptr, info_ptr, pdev->width, pdev->height,
-+	    	1, PNG_COLOR_TYPE_GRAY,
-+		PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT,
-+		PNG_FILTER_TYPE_DEFAULT);
- 	    /* invert monocrome pixels */
- 	    png_set_invert_mono(png_ptr);
- 	    break;
-+	default:
-+	    png_error(png_ptr, "invalid bit depth");
-     }
- 
-+    /* resolution is in pixels per meter vs. dpi */
-+    png_set_pHYs(png_ptr, info_ptr, 
-+	(png_uint_32) (pdev->HWResolution[0] * (100.0 / 2.54)),
-+	(png_uint_32) (pdev->HWResolution[1] * (100.0 / 2.54)),
-+	PNG_RESOLUTION_METER);
-+
-     /* set the palette if there is one */
--    if (info_ptr->color_type == PNG_COLOR_TYPE_PALETTE) {
-+    if (png_get_color_type(png_ptr, info_ptr)  == PNG_COLOR_TYPE_PALETTE) {
- 	int i;
- 	int num_colors = 1 << depth;
- 	gx_color_value rgb[3];
-+	png_color palette[256];
-+
-+	if (num_colors > 256)
-+	    num_colors = 256;
- 
--	info_ptr->palette =
--	    (void *)gs_alloc_bytes(mem, 256 * sizeof(png_color),
--				   "png palette");
--	if (info_ptr->palette == 0) {
--	    code = gs_note_error(gs_error_VMerror);
--	    goto done;
--	}
--	info_ptr->num_palette = num_colors;
--	info_ptr->valid |= PNG_INFO_PLTE;
- 	for (i = 0; i < num_colors; i++) {
- 	    (*dev_proc(pdev, map_color_rgb)) ((gx_device *) pdev,
- 					      (gx_color_index) i, rgb);
--	    info_ptr->palette[i].red = gx_color_value_to_byte(rgb[0]);
--	    info_ptr->palette[i].green = gx_color_value_to_byte(rgb[1]);
--	    info_ptr->palette[i].blue = gx_color_value_to_byte(rgb[2]);
-+	    palette[i].red = gx_color_value_to_byte(rgb[0]);
-+	    palette[i].green = gx_color_value_to_byte(rgb[1]);
-+	    palette[i].blue = gx_color_value_to_byte(rgb[2]);
- 	}
-+	png_set_PLTE(png_ptr, info_ptr, palette, num_colors);
-     }
-     /* add comment */
-     strncpy(software_key, "Software", sizeof(software_key));
-@@ -375,15 +382,14 @@ png_print_page(gx_device_printer * pdev,
-     text_png.key = software_key;
-     text_png.text = software_text;
-     text_png.text_length = strlen(software_text);
--    info_ptr->text = &text_png;
--    info_ptr->num_text = 1;
-+    png_set_text(png_ptr, info_ptr, &text_png, 1);
- 
-     /* write the file information */
-     png_write_info(png_ptr, info_ptr);
- 
-     /* don't write the comments twice */
--    info_ptr->num_text = 0;
--    info_ptr->text = NULL;
-+    /*info_ptr->num_text = 0;*/
-+    /*info_ptr->text = NULL;*/
- 
-     /* Write the contents of the image. */
-     for (y = 0; y < height; y++) {
-@@ -395,7 +401,7 @@ png_print_page(gx_device_printer * pdev,
-     png_write_end(png_ptr, info_ptr);
- 
-     /* if you alloced the palette, free it here */
--    gs_free_object(mem, info_ptr->palette, "png palette");
-+    /*gs_free_object(mem, info_ptr->palette, "png palette");*/
- 
-   done:
-     /* free the structures */
-@@ -405,6 +411,7 @@ png_print_page(gx_device_printer * pdev,
-     return code;
- }
- 
-+#if 0 /* not required in 1.5 */
- /*
-  * Patch around a static reference to a never-used procedure.
-  * This could be avoided if we were willing to edit pngconf.h to
-@@ -422,6 +429,7 @@ png_push_fill_buffer(png_structp png_ptr
- {
- }
- #endif
-+#endif
- 
- static int
- pngalpha_open(gx_device * pdev)
diff --git a/main/ghostscript/ghostscript-system-jasper.patch b/main/ghostscript/ghostscript-system-jasper.patch
deleted file mode 100644
index dc70446..0000000
--- a/main/ghostscript/ghostscript-system-jasper.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff -up ghostscript-9.00/base/sjpx.c.system-jasper ghostscript-9.00/base/sjpx.c
---- ghostscript-9.00/base/sjpx.c.system-jasper	2010-08-17 15:31:58.000000000 +0100
-+++ ghostscript-9.00/base/sjpx.c	2010-09-23 09:59:46.747467642 +0100
-@@ -33,14 +33,6 @@ static void s_jpxd_set_defaults(stream_s
- private_st_jpxd_state(); /* creates a gc object for our state,
-                             defined in sjpx.h */
- 
--/* error reporting callback for the jpx library */
--static void
--s_jpx_jas_error_cb(jas_error_t err, char *msg)
--{
--  dprintf2("jasper (code %d) %s", (int)err, msg);
--}
--
--
- /* initialize the steam.
-    this involves allocating the stream and image structures, and
-    initializing the decoder.
-@@ -56,7 +48,6 @@ s_jpxd_init(stream_state * ss)
-     }
- 
-     status = jas_init();
--    jas_set_error_cb(s_jpx_jas_error_cb);
- #ifdef JPX_DEBUG
-     /* raise the error reporting threshold from the default (0) */
-     jas_setdbglevel(1);
-- 
1.7.6.1

---
Unsubscribe:  [email-masked]
Help:         [email-masked]
---