Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 18 May 2001 18:09:34 +0300 (EEST)
From:      Maxim Sobolev <sobomax@FreeBSD.org>
To:        gnome@FreeBSD.org
Cc:        ports@FreeBSD.org
Subject:   Divorcing gdk-pixbuf and gnome-canvas
Message-ID:  <200105181509.f4IF9YQ01060@vega.vega.com>

next in thread | raw e-mail | index | archive | help

--%--multipart-mixed-boundary-1.907.990198574--%
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Hi folks,

To debug problems with new Mozilla on 4-STABLE I've set up
a virgin 4-STABLE box and found that I previously overlooked
one of the Mozilla dependencies - a gdk-pixbuf package. While
that missed dependency it is unlikely to be a source of
problems people having with 0.9 release, but this issue
should be addressed as well.

The problem with making Mozilla depend on gdk_pixbuf is that
gdk-pixbuf in its current state requires gnomelibs, which
in turn depends upon number of things (imlib, scrollkeeper
etc.) Thus, if we just automatically add gdk-pixbuf into
Mozilla's LIB_DEPENDS it will make already no a slim
package even more fat due to additional dependencies.

After pocking around I found that in fact gtk-pixbuf package
consists of two parts: one gdk-pixbuf itself, which doesn't
depend on gnomelibs, but only on gtk+ and number of graphics
libs, and another gnome-canvas - which actually requires
Gnome. Therefore we could split gdk-pixbuf into two ports -
gtk-pixbuf and gnome-canvas.

Attached please find patches that do the trick. I would like
to hear what do gnomers think about my proposal.

-Maxim

--%--multipart-mixed-boundary-1.907.990198574--%
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Description: ASCII English text
Content-Disposition: attachment; filename="gdk_pixbuf.diff"

Index: Makefile
===================================================================
RCS file: /home/ncvs/ports/graphics/Makefile,v
retrieving revision 1.308
diff -d -u -r1.308 Makefile
--- Makefile	2001/05/17 16:28:42	1.308
+++ Makefile	2001/05/18 15:07:59
@@ -66,6 +66,7 @@
     SUBDIR += gliv
     SUBDIR += gltk
     SUBDIR += gnofract4d
+    SUBDIR += gnomecanvas
     SUBDIR += gnomeiconedit
     SUBDIR += gozer
     SUBDIR += gpaint
Index: gdk-pixbuf/Makefile
===================================================================
RCS file: /home/ncvs/ports/graphics/gdk-pixbuf/Makefile,v
retrieving revision 1.18
diff -d -u -r1.18 Makefile
--- gdk-pixbuf/Makefile	2001/05/11 16:36:26	1.18
+++ gdk-pixbuf/Makefile	2001/05/18 15:07:59
@@ -5,25 +5,33 @@
 # $FreeBSD: ports/graphics/gdk-pixbuf/Makefile,v 1.18 2001/05/11 16:36:26 ade Exp $
 #
 
-PORTNAME=	gdk-pixbuf
+PORTNAME?=	gdk-pixbuf
 PORTVERSION=	0.11.0
-CATEGORIES=	graphics gnome
+CATEGORIES?=	graphics
 MASTER_SITES=	${MASTER_SITE_GNOME}
 MASTER_SITE_SUBDIR=	unstable/sources/gdk-pixbuf
+DISTNAME=	gdk-pixbuf-${PORTVERSION}
 
 MAINTAINER=	gnome@FreeBSD.org
 
+LIB_DEPENDS+=	png.4:${PORTSDIR}/graphics/png \
+		tiff.4:${PORTSDIR}/graphics/tiff \
+		jpeg.9:${PORTSDIR}/graphics/jpeg
+
 USE_GMAKE=	yes
 USE_X_PREFIX=	yes
-USE_GNOMELIBS=	yes
 USE_LIBTOOL=	yes
+USE_GTK=	yes
 INSTALLS_SHLIB=	yes
+CONFIGURE_ARGS=	--with-html-dir=${PREFIX}/share/doc
 CONFIGURE_ENV=	CPPFLAGS="-I${LOCALBASE}/include" \
-		LIBS="-L${LOCALBASE}/lib"
+		LIBS="-L${LOCALBASE}/lib" \
+		BUILD_CANVAS="${BUILD_CANVAS}"
 
+BUILD_CANVAS?=	no
+
 pre-patch:
 	@find ${WRKSRC} -name "Makefile.in" | xargs ${PERL} -pi -e \
-		's|\$$\(datadir\)/gnome/|\$$\(datadir\)/|g ; \
-		 s|\$$\(datadir\)/aclocal|\$$\(prefix\)/share/aclocal|g'
+		's|\$$\(datadir\)/aclocal|\$$\(prefix\)/share/aclocal|g'
 
 .include <bsd.port.mk>
Index: gdk-pixbuf/pkg-comment
===================================================================
RCS file: /home/ncvs/ports/graphics/gdk-pixbuf/pkg-comment,v
retrieving revision 1.1.1.1
diff -d -u -r1.1.1.1 pkg-comment
--- gdk-pixbuf/pkg-comment	1999/10/14 05:00:14	1.1.1.1
+++ gdk-pixbuf/pkg-comment	2001/05/18 15:07:59
@@ -1 +1 @@
-A graphic library for GNOME
+A graphic library for GTK+
Index: gdk-pixbuf/pkg-plist
===================================================================
RCS file: /home/ncvs/ports/graphics/gdk-pixbuf/pkg-plist,v
retrieving revision 1.12
diff -d -u -r1.12 pkg-plist
--- gdk-pixbuf/pkg-plist	2001/05/04 21:39:36	1.12
+++ gdk-pixbuf/pkg-plist	2001/05/18 15:07:59
@@ -1,13 +1,11 @@
 bin/gdk-pixbuf-config
 etc/gdk_pixbufConf.sh
 etc/gdk_pixbuf_xlibConf.sh
-etc/gnomecanvaspixbufConf.sh
 include/gdk-pixbuf/gdk-pixbuf-features.h
 include/gdk-pixbuf/gdk-pixbuf-loader.h
 include/gdk-pixbuf/gdk-pixbuf-xlib.h
 include/gdk-pixbuf/gdk-pixbuf-xlibrgb.h
 include/gdk-pixbuf/gdk-pixbuf.h
-include/gdk-pixbuf/gnome-canvas-pixbuf.h
 lib/gdk-pixbuf/loaders/libpixbufloader-bmp.so
 lib/gdk-pixbuf/loaders/libpixbufloader-gif.so
 lib/gdk-pixbuf/loaders/libpixbufloader-ico.so
@@ -24,49 +22,46 @@
 lib/libgdk_pixbuf_xlib.a
 lib/libgdk_pixbuf_xlib.so
 lib/libgdk_pixbuf_xlib.so.2
-lib/libgnomecanvaspixbuf.a
-lib/libgnomecanvaspixbuf.so
-lib/libgnomecanvaspixbuf.so.1
 share/aclocal/gdk-pixbuf.m4
-share/gnome/html/gdk-pixbuf/a2605.html
-share/gnome/html/gdk-pixbuf/a3640.html
-share/gnome/html/gdk-pixbuf/a3652.html
-share/gnome/html/gdk-pixbuf/a3694.html
-share/gnome/html/gdk-pixbuf/a3716.html
-share/gnome/html/gdk-pixbuf/book1.html
-share/gnome/html/gdk-pixbuf/compiling.html
-share/gnome/html/gdk-pixbuf/extra-configuration-options.html
-share/gnome/html/gdk-pixbuf/gdk-pixbuf-animation.html
-share/gnome/html/gdk-pixbuf/gdk-pixbuf-creating.html
-share/gnome/html/gdk-pixbuf/gdk-pixbuf-file-loading.html
-share/gnome/html/gdk-pixbuf/gdk-pixbuf-from-drawables.html
-share/gnome/html/gdk-pixbuf/gdk-pixbuf-gdk-pixbuf-xlib-from-drawables.html
-share/gnome/html/gdk-pixbuf/gdk-pixbuf-gdk-pixbuf-xlib-init.html
-share/gnome/html/gdk-pixbuf/gdk-pixbuf-gdk-pixbuf-xlib-rendering.html
-share/gnome/html/gdk-pixbuf/gdk-pixbuf-gdk-pixbuf-xlib-rgb.html
-share/gnome/html/gdk-pixbuf/gdk-pixbuf-gdk-pixbuf.html
-share/gnome/html/gdk-pixbuf/gdk-pixbuf-refcounting.html
-share/gnome/html/gdk-pixbuf/gdk-pixbuf-rendering.html
-share/gnome/html/gdk-pixbuf/gdk-pixbuf-scaling.html
-share/gnome/html/gdk-pixbuf/gdk-pixbuf-util.html
-share/gnome/html/gdk-pixbuf/gdkpixbufloader.html
-share/gnome/html/gdk-pixbuf/gnomecanvaspixbuf.html
-share/gnome/html/gdk-pixbuf/index.html
-share/gnome/html/gdk-pixbuf/index.sgml
-share/gnome/html/gdk-pixbuf/license.html
-share/gnome/html/gdk-pixbuf/r15.html
-share/gnome/html/gdk-pixbuf/r27.html
-share/gnome/html/gdk-pixbuf/x2624.html
-share/gnome/html/gdk-pixbuf/x2676.html
-share/gnome/html/gdk-pixbuf/x3659.html
-share/gnome/html/gdk-pixbuf/x3671.html
-share/gnome/html/gdk-pixbuf/x3711.html
-share/gnome/html/gdk-pixbuf/x3713.html
-share/gnome/html/gdk-pixbuf/x3723.html
-share/gnome/html/gdk-pixbuf/x3735.html
-share/gnome/html/gdk-pixbuf/x3765.html
-share/gnome/html/gdk-pixbuf/x3787.html
-@dirrm share/gnome/html/gdk-pixbuf
+share/doc/gdk-pixbuf/a2605.html
+share/doc/gdk-pixbuf/a3640.html
+share/doc/gdk-pixbuf/a3652.html
+share/doc/gdk-pixbuf/a3694.html
+share/doc/gdk-pixbuf/a3716.html
+share/doc/gdk-pixbuf/book1.html
+share/doc/gdk-pixbuf/compiling.html
+share/doc/gdk-pixbuf/extra-configuration-options.html
+share/doc/gdk-pixbuf/gdk-pixbuf-animation.html
+share/doc/gdk-pixbuf/gdk-pixbuf-creating.html
+share/doc/gdk-pixbuf/gdk-pixbuf-file-loading.html
+share/doc/gdk-pixbuf/gdk-pixbuf-from-drawables.html
+share/doc/gdk-pixbuf/gdk-pixbuf-gdk-pixbuf-xlib-from-drawables.html
+share/doc/gdk-pixbuf/gdk-pixbuf-gdk-pixbuf-xlib-init.html
+share/doc/gdk-pixbuf/gdk-pixbuf-gdk-pixbuf-xlib-rendering.html
+share/doc/gdk-pixbuf/gdk-pixbuf-gdk-pixbuf-xlib-rgb.html
+share/doc/gdk-pixbuf/gdk-pixbuf-gdk-pixbuf.html
+share/doc/gdk-pixbuf/gdk-pixbuf-refcounting.html
+share/doc/gdk-pixbuf/gdk-pixbuf-rendering.html
+share/doc/gdk-pixbuf/gdk-pixbuf-scaling.html
+share/doc/gdk-pixbuf/gdk-pixbuf-util.html
+share/doc/gdk-pixbuf/gdkpixbufloader.html
+share/doc/gdk-pixbuf/gnomecanvaspixbuf.html
+share/doc/gdk-pixbuf/index.html
+share/doc/gdk-pixbuf/index.sgml
+share/doc/gdk-pixbuf/license.html
+share/doc/gdk-pixbuf/r15.html
+share/doc/gdk-pixbuf/r27.html
+share/doc/gdk-pixbuf/x2624.html
+share/doc/gdk-pixbuf/x2676.html
+share/doc/gdk-pixbuf/x3659.html
+share/doc/gdk-pixbuf/x3671.html
+share/doc/gdk-pixbuf/x3711.html
+share/doc/gdk-pixbuf/x3713.html
+share/doc/gdk-pixbuf/x3723.html
+share/doc/gdk-pixbuf/x3735.html
+share/doc/gdk-pixbuf/x3765.html
+share/doc/gdk-pixbuf/x3787.html
+@dirrm share/doc/gdk-pixbuf
 @dirrm lib/gdk-pixbuf/loaders
 @dirrm lib/gdk-pixbuf
 @dirrm include/gdk-pixbuf
Index: gdk-pixbuf/files/patch-aa
===================================================================
RCS file: /home/ncvs/ports/graphics/gdk-pixbuf/files/patch-aa,v
retrieving revision 1.5
diff -d -u -r1.5 patch-aa
--- gdk-pixbuf/files/patch-aa	2001/05/04 21:39:37	1.5
+++ gdk-pixbuf/files/patch-aa	2001/05/18 15:08:00
@@ -1,14 +1,45 @@
---- configure.orig	Thu Apr 26 18:41:47 2001
-+++ configure	Fri Apr 27 16:39:52 2001
-@@ -3593,4 +3593,4 @@
+
+$FreeBSD$
+
+--- configure.orig	Fri Apr 27 02:41:47 2001
++++ configure	Fri May 18 16:03:47 2001
+@@ -3443,6 +3443,8 @@
+         INSIDE_GNOME=yes
+ 	BUILD_CANVAS=yes
+ else
++
++if [ x"$BUILD_CANVAS" != x"no" ]; then
+         
+         # Extract the first word of "gnome-config", so it can be a program name with args.
+ set dummy gnome-config; ac_word=$2
+@@ -3474,6 +3476,10 @@
+ esac
+ fi
+ GNOME_CONFIG="$ac_cv_path_GNOME_CONFIG"
++else
++GNOME_CONFIG="no"
++fi
++
+ if test -n "$GNOME_CONFIG"; then
+   echo "$ac_t""$GNOME_CONFIG" 1>&6
+ else
+@@ -3591,8 +3597,8 @@
+ #define USE_GMODULE 1
+ EOF
  
 -   GMODULE_LIBS="`glib-config --libs gmodule`"
 -   GMODULE_FLAGS="`glib-config --cflags gmodule`"
 +   GMODULE_LIBS="`$GLIB_CONFIG --libs gmodule`"
 +   GMODULE_FLAGS="`$GLIB_CONFIG --cflags gmodule`"
     
-@@ -4470,3 +4470,3 @@
+    
+    echo "$ac_t""yes" 1>&6
+@@ -4468,7 +4474,7 @@
+ 
+ 
  if test "x$with_html_dir" = "x" ; then
 -  HTML_DIR='${datadir}/gnome/html'
 +  HTML_DIR='${datadir}/html'
  else
+   HTML_DIR=$with_html_dir
+ fi
Index: gdk-pixbuf/files/patch-ab
===================================================================
RCS file: /home/ncvs/ports/graphics/gdk-pixbuf/files/patch-ab,v
retrieving revision 1.2
diff -d -u -r1.2 patch-ab
--- gdk-pixbuf/files/patch-ab	2000/08/28 18:10:38	1.2
+++ gdk-pixbuf/files/patch-ab	2001/05/18 15:08:00
@@ -1,7 +1,20 @@
---- Makefile.in.orig	Sun Aug 27 18:48:23 2000
-+++ Makefile.in	Mon Aug 28 10:14:58 2000
-@@ -109,3 +109,3 @@
+
+$FreeBSD$
+
+--- Makefile.in.orig	Fri May 18 16:16:44 2001
++++ Makefile.in	Fri May 18 16:20:28 2001
+@@ -111,11 +111,11 @@
+ 
+ bin_SCRIPTS = gdk-pixbuf-config
  
 -confexecdir = $(libdir)
+-confexec_DATA =  	gdk_pixbufConf.sh			gdk_pixbuf_xlibConf.sh			gnomecanvaspixbufConf.sh
 +confexecdir = $(sysconfdir)
- confexec_DATA =  	gdk_pixbufConf.sh			gdk_pixbuf_xlibConf.sh			gnomecanvaspixbufConf.sh
++confexec_DATA =  	gdk_pixbufConf.sh			gdk_pixbuf_xlibConf.sh			@BUILD_CANVAS_ITEM_TRUE@gnomecanvaspixbufConf.sh
+ 
+ 
+-EXTRA_DIST =  	gdk_pixbufConf.sh.in			gdk_pixbuf_xlibConf.sh.in		gnomecanvaspixbufConf.sh.in		gdk-pixbuf-config.in			gdk-pixbuf.m4				gdk-pixbuf.spec				gdk-pixbuf.spec.in
++EXTRA_DIST =  	gdk_pixbufConf.sh.in			gdk_pixbuf_xlibConf.sh.in			gdk-pixbuf-config.in			gdk-pixbuf.m4				gdk-pixbuf.spec				gdk-pixbuf.spec.in	@BUILD_CANVAS_ITEM_TRUE@gnomecanvaspixbufConf.sh.in
+ 
+ 
+ m4datadir = $(prefix)/share/aclocal
Index: gnomecanvas/Makefile
===================================================================
RCS file: Makefile
diff -N Makefile
--- /dev/null	Fri May 18 08:07:01 2001
+++ Makefile	Fri May 18 08:08:00 2001
@@ -0,0 +1,33 @@
+# New ports collection makefile for:	gnomecanvas
+# Date created:				18 May 2001
+# Whom:					Maxim Sobolev <sobomax@FreeBSD.org>
+#
+# $FreeBSD$
+#
+
+PORTNAME=	gnomecanvas
+CATEGORIES=	graphics gnome
+
+LIB_DEPENDS=	gdk_pixbuf.2:${PORTSDIR}/graphics/gdk-pixbuf
+
+MASTERDIR=	${.CURDIR}/../gdk-pixbuf
+
+COMMENT=	${.CURDIR}/pkg-comment
+DESCR=		${.CURDIR}/pkg-descr
+PLIST=		${.CURDIR}/pkg-plist
+
+USE_GNOMELIBS=	yes
+
+BUILD_CANVAS=	yes
+
+NAME=	gnomecanvaspixbuf
+
+do-install:
+	${INSTALL_DATA} ${WRKSRC}/${NAME}Conf.sh ${PREFIX}/etc
+	cd ${WRKSRC}/gdk-pixbuf/.libs && \
+		${INSTALL_DATA} ../gnome-canvas-pixbuf.h ${PREFIX}/include && \
+		${INSTALL_DATA} lib${NAME}.a ${PREFIX}/lib && \
+		${INSTALL_PROGRAM} lib${NAME}.so.1 ${PREFIX}/lib && \
+		${LN} -sf lib${NAME}.so.1 ${PREFIX}/lib/lib${NAME}.so
+
+.include "${MASTERDIR}/Makefile"
Index: gnomecanvas/pkg-comment
===================================================================
RCS file: pkg-comment
diff -N pkg-comment
--- /dev/null	Fri May 18 08:07:01 2001
+++ pkg-comment	Fri May 18 08:08:00 2001
@@ -0,0 +1 @@
+A graphic library for GNOME
Index: gnomecanvas/pkg-descr
===================================================================
RCS file: pkg-descr
diff -N pkg-descr
--- /dev/null	Fri May 18 08:07:01 2001
+++ pkg-descr	Fri May 18 08:08:00 2001
@@ -0,0 +1,6 @@
+The GNOMECanvas library provides a number of features:
+
+	- Image loading facilities.
+	- Rendering of a GdkPixBuf into various formats:
+	  drawables (windows, pixmaps), GdkRGB buffers.
+	- A cache interface
Index: gnomecanvas/pkg-plist
===================================================================
RCS file: pkg-plist
diff -N pkg-plist
--- /dev/null	Fri May 18 08:07:01 2001
+++ pkg-plist	Fri May 18 08:08:00 2001
@@ -0,0 +1,5 @@
+etc/gnomecanvaspixbufConf.sh
+include/gdk-pixbuf/gnome-canvas-pixbuf.h
+lib/libgnomecanvaspixbuf.a
+lib/libgnomecanvaspixbuf.so
+lib/libgnomecanvaspixbuf.so.1

--%--multipart-mixed-boundary-1.907.990198574--%--

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200105181509.f4IF9YQ01060>