[121425] trunk/dports/gnome/gnome-libs
devans at macports.org
devans at macports.org
Tue Jun 24 21:05:55 PDT 2014
Revision: 121425
https://trac.macports.org/changeset/121425
Author: devans at macports.org
Date: 2014-06-24 21:05:55 -0700 (Tue, 24 Jun 2014)
Log Message:
-----------
gnome-libs: configure to build with db46 +compat185 and patch for API compatibility with libpng16, add missing dependencies (#44039).
Modified Paths:
--------------
trunk/dports/gnome/gnome-libs/Portfile
trunk/dports/gnome/gnome-libs/files/patch_configure
Added Paths:
-----------
trunk/dports/gnome/gnome-libs/files/patch-gtk-xmhtml-readPNG.c.diff
trunk/dports/gnome/gnome-libs/files/patch-libgnome-Makefile.in.diff
trunk/dports/gnome/gnome-libs/files/patch-tools-convertrgb-loadpng.c.diff
Modified: trunk/dports/gnome/gnome-libs/Portfile
===================================================================
--- trunk/dports/gnome/gnome-libs/Portfile 2014-06-25 03:23:06 UTC (rev 121424)
+++ trunk/dports/gnome/gnome-libs/Portfile 2014-06-25 04:05:55 UTC (rev 121425)
@@ -2,6 +2,7 @@
# $Id$
PortSystem 1.0
+PortGroup active_variants 1.1
name gnome-libs
version 1.4.2
@@ -24,8 +25,17 @@
depends_lib port:oaf \
port:gtk1 \
port:libghttp \
- port:imlib
+ port:imlib \
+ port:db46 \
+ port:esound \
+ port:tiff \
+ port:jpeg \
+ port:libpng \
+ port:giflib \
+ port:xpm
+require_active_variants db46 compat185
+
# imlib is not universal
universal_variant no
@@ -34,13 +44,18 @@
patch-XmHTMLP.h \
patch-XmHTMLI.h \
install.diff \
- patch-libart_lgpl_libart.m4
+ patch-libart_lgpl_libart.m4 \
+ patch-tools-convertrgb-loadpng.c.diff \
+ patch-libgnome-Makefile.in.diff \
+ patch-gtk-xmhtml-readPNG.c.diff
configure.args --mandir=${prefix}/share/man \
--disable-gtk-doc \
--disable-test-gnome
-configure.cppflags-append "-L${prefix}/lib"
+configure.env-append CPP="${configure.cc} -E"
+configure.cppflags-append "-I${prefix}/include/db46"
+configure.ldflags-append "-L${prefix}/lib/db46"
configure.cflags-append "-fstrict-aliasing -funroll-loops"
post-configure {
Added: trunk/dports/gnome/gnome-libs/files/patch-gtk-xmhtml-readPNG.c.diff
===================================================================
--- trunk/dports/gnome/gnome-libs/files/patch-gtk-xmhtml-readPNG.c.diff (rev 0)
+++ trunk/dports/gnome/gnome-libs/files/patch-gtk-xmhtml-readPNG.c.diff 2014-06-25 04:05:55 UTC (rev 121425)
@@ -0,0 +1,168 @@
+--- gtk-xmhtml/readPNG.c.orig 2002-08-06 14:25:46.000000000 -0700
++++ gtk-xmhtml/readPNG.c 2014-06-19 08:34:04.000000000 -0700
+@@ -208,7 +208,7 @@
+
+ _XmHTMLWarning(__WFUNC__(NULL, "png_error"),
+ "libpng error on image %s: %s", ib->file, msg);
+- longjmp(png_ptr->jmpbuf, 1);
++ longjmp(png_jmpbuf(png_ptr), 1);
+ }
+
+ /*****
+@@ -256,11 +256,12 @@
+ {
+ png_structp png_ptr;
+ png_infop info_ptr;
++ png_colorp palette;
+ Byte *data;
+ int i, idx, npass;
+ int width, height, color_type;
+ int ncolors, max_colors;
+- float gamma, fg_gamma;
++ double gamma, fg_gamma;
+ Boolean has_alpha = False, has_cmap = False, do_gamma = True;
+ png_bytep *row_ptrs;
+ char msg[128];
+@@ -308,7 +309,7 @@
+ return((XmHTMLRawImageData*)NULL);
+ }
+ /* now set error handler */
+- if(setjmp(png_ptr->jmpbuf))
++ if(setjmp(png_jmpbuf(png_ptr)))
+ {
+ /*
+ * PNG signalled an error. Destroy image data, free any allocated
+@@ -342,17 +343,18 @@
+ ResetRawImage(img_data);
+
+ /* save width & height */
+- width = img_data->width = info_ptr->width;
+- height = img_data->height = info_ptr->height;
++ width = img_data->width = png_get_image_width(png_ptr, info_ptr);
++ height = img_data->height = png_get_image_height(png_ptr, info_ptr);
+
+ /* image depth */
+- ib->depth = info_ptr->bit_depth;
++ ib->depth = png_get_bit_depth(png_ptr, info_ptr);
+
+ /* no of colors */
+- ncolors = img_data->cmapsize = info_ptr->num_palette;
++ png_get_PLTE(png_ptr, info_ptr, &palette, &ncolors);
++ img_data->cmapsize = ncolors;
+
+ /* type of image */
+- color_type = info_ptr->color_type;
++ color_type = png_get_color_type(png_ptr, info_ptr);
+
+ /*
+ * The fun stuff. This is based on readPNG by Greg Roelofs as found
+@@ -383,7 +385,7 @@
+ * Actual image creation is postponed until the image is
+ * needed.
+ */
+- if(info_ptr->valid & PNG_INFO_tRNS)
++ if(png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS))
+ {
+ _XmHTMLDebug(15, ("readPNG.c: tRNS chunk present\n"));
+ png_set_expand(png_ptr);
+@@ -396,9 +398,9 @@
+ AllocRawImageCmap(img_data, ncolors);
+ for(i = 0; i < ncolors; i++)
+ {
+- img_data->cmap[i].red = info_ptr->palette[i].red;
+- img_data->cmap[i].green = info_ptr->palette[i].green;
+- img_data->cmap[i].blue = info_ptr->palette[i].blue;
++ img_data->cmap[i].red = palette[i].red;
++ img_data->cmap[i].green = palette[i].green;
++ img_data->cmap[i].blue = palette[i].blue;
+ }
+ has_cmap = True;
+ data = (Byte*)malloc(width*height*sizeof(Byte));
+@@ -432,7 +434,7 @@
+ * grayscale with transparency is expanded to RGB with alpha
+ * channel.
+ */
+- if(info_ptr->valid & PNG_INFO_tRNS)
++ if(png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS))
+ {
+ _XmHTMLDebug(15, ("readPNG.c: tRNS chunk present\n"));
+ png_set_gray_to_rgb(png_ptr);
+@@ -511,7 +513,7 @@
+ break;
+ default:
+ sprintf(msg, "bad PNG image: unknown color type (%d)",
+- info_ptr->color_type);
++ png_get_color_type(png_ptr, info_ptr));
+ my_png_error(png_ptr, msg);
+ break;
+ }
+@@ -521,16 +523,18 @@
+ * Doing that for alpha channel images would change the colortype of the
+ * current image, leading to weird results.
+ */
+- if(!has_alpha && info_ptr->valid & PNG_INFO_bKGD)
++ if(!has_alpha && png_get_valid(png_ptr, info_ptr, PNG_INFO_bKGD))
+ {
+- png_set_background(png_ptr, &(info_ptr->background),
++ png_color_16p background;
++ png_get_bKGD(png_ptr, info_ptr, &background);
++ png_set_background(png_ptr, background,
+ PNG_BACKGROUND_GAMMA_FILE, 1, 1.0);
+- img_data->bg = info_ptr->background.index;
++ img_data->bg = background->index;
+ }
+
+ /* handle gamma correction */
+- if(info_ptr->valid & PNG_INFO_gAMA)
+- fg_gamma = info_ptr->gamma;
++ if(png_get_valid(png_ptr, info_ptr, PNG_INFO_gAMA))
++ png_get_gAMA(png_ptr, info_ptr, &fg_gamma);
+ else
+ fg_gamma = 0.45;
+
+@@ -541,20 +545,20 @@
+ /* dithering gets handled by caller */
+
+ /* one byte per pixel */
+- if(info_ptr->bit_depth < 8)
++ if(png_get_bit_depth(png_ptr, info_ptr) < 8)
+ png_set_packing(png_ptr);
+
+ /* no tRNS chunk handling, we've expanded it to an alpha channel. */
+
+ /* handle interlacing */
+- if(info_ptr->interlace_type)
++ if(png_get_interlace_type(png_ptr, info_ptr))
+ npass = png_set_interlace_handling(png_ptr);
+
+ /* and now update everything */
+ png_read_update_info(png_ptr, info_ptr);
+
+ /* has possibly changed if we have promoted GrayScale or tRNS chunks */
+- color_type = info_ptr->color_type;
++ color_type = png_get_color_type(png_ptr, info_ptr);
+
+ /* new color_type? */
+ if(color_type == PNG_COLOR_TYPE_RGB_ALPHA)
+@@ -574,10 +578,10 @@
+ * will call doAlphaChannel to do the actual image creation.
+ */
+ row_ptrs = (png_bytep*)malloc(height*sizeof(png_bytep));
+- png_data = (png_bytep)malloc(height*info_ptr->rowbytes);
++ png_data = (png_bytep)malloc(height*png_get_rowbytes(png_ptr, info_ptr));
+
+ for(i = 0; i < height; i++)
+- row_ptrs[i] = (png_bytep)png_data + i*info_ptr->rowbytes;
++ row_ptrs[i] = (png_bytep)png_data + i*png_get_rowbytes(png_ptr, info_ptr);
+
+ /* read it */
+ png_read_image(png_ptr, row_ptrs);
+@@ -606,7 +610,7 @@
+ row_ptrs = (png_bytep*)malloc(height*sizeof(png_bytep));
+
+ for(i = 0; i < height; ++i)
+- row_ptrs[i] = (png_bytep)data + i*info_ptr->rowbytes;
++ row_ptrs[i] = (png_bytep)data + i*png_get_rowbytes(png_ptr, info_ptr);
+
+ /* read it */
+ png_read_image(png_ptr, row_ptrs);
Added: trunk/dports/gnome/gnome-libs/files/patch-libgnome-Makefile.in.diff
===================================================================
--- trunk/dports/gnome/gnome-libs/files/patch-libgnome-Makefile.in.diff (rev 0)
+++ trunk/dports/gnome/gnome-libs/files/patch-libgnome-Makefile.in.diff 2014-06-25 04:05:55 UTC (rev 121425)
@@ -0,0 +1,11 @@
+--- libgnome/Makefile.in.orig 2014-06-18 11:34:06.000000000 -0700
++++ libgnome/Makefile.in 2014-06-18 11:35:16.000000000 -0700
+@@ -251,7 +251,7 @@
+ gnome_dump_metadata_LDADD = libgnome.la $(LIBSUPPORT) \
+ $(LIBGNOME_LIBS) $(INTLLIBS)
+
+-gnome_dump_metadata_LDFLAGS = $(GLIB_LIBS)
++gnome_dump_metadata_LDFLAGS = $(GLIB_LIBS) -ldb
+
+ gnome_moz_remote_SOURCES = gnome-moz-remote.c vroot.h
+ gnome_moz_remote_LDADD = libgnome.la $(LIBSUPPORT) $(LIBGNOME_LIBS) \
Added: trunk/dports/gnome/gnome-libs/files/patch-tools-convertrgb-loadpng.c.diff
===================================================================
--- trunk/dports/gnome/gnome-libs/files/patch-tools-convertrgb-loadpng.c.diff (rev 0)
+++ trunk/dports/gnome/gnome-libs/files/patch-tools-convertrgb-loadpng.c.diff 2014-06-25 04:05:55 UTC (rev 121425)
@@ -0,0 +1,18 @@
+--- tools/convertrgb/loadpng.c.orig 2014-06-18 09:31:06.000000000 -0700
++++ tools/convertrgb/loadpng.c 2014-06-18 09:37:08.000000000 -0700
+@@ -29,13 +29,13 @@
+ return NULL;
+ }
+
+- if (setjmp(png_ptr->jmpbuf))
++ if (setjmp(png_jmpbuf(png_ptr)))
+ {
+ png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
+ return NULL;
+ }
+
+- if (info_ptr->color_type == PNG_COLOR_TYPE_RGB_ALPHA)
++ if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_RGB_ALPHA)
+ {
+ png_destroy_read_struct(&png_ptr, &info_ptr, NULL);
+ return NULL;
Modified: trunk/dports/gnome/gnome-libs/files/patch_configure
===================================================================
--- trunk/dports/gnome/gnome-libs/files/patch_configure 2014-06-25 03:23:06 UTC (rev 121424)
+++ trunk/dports/gnome/gnome-libs/files/patch_configure 2014-06-25 04:05:55 UTC (rev 121425)
@@ -22,7 +22,7 @@
darwin* | rhapsody*)
- allow_undefined_flag='-undefined suppress'
-+ allow_undefined_flag='-flat_namespace -undefined suppress'
++ allow_undefined_flag=''
# FIXME: Relying on posixy $() will cause problems for
# cross-compilation, but unfortunately the echo tests do not
# yet detect zsh echo's removal of \ escapes.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20140624/b9f7dd69/attachment.html>
More information about the macports-changes
mailing list