ports/63851: [patch] enable devel/libgsf to be built without gnome

Sybolt de Boer sybolt at xs4all.nl
Tue Mar 9 16:00:40 PST 2004


The following reply was made to PR ports/63851; it has been noted by GNATS.

From: Sybolt de Boer <sybolt at xs4all.nl>
To: freebsd-gnats-submit at FreeBSD.org
Cc:  
Subject: Re: ports/63851: [patch] enable devel/libgsf to be built without gnome
Date: Wed, 10 Mar 2004 00:57:31 +0100

 --Boundary-00=_rnlTALMOmhohfY8
 Content-Type: text/plain;
   charset="iso-8859-1"
 Content-Transfer-Encoding: 7bit
 Content-Disposition: inline
 
 On Tuesday 09 March 2004 01:05, you wrote:
 > On Monday 08 March 2004 14:32, you wrote:
 > > I can see one problem with proposed patch. At the moment main library
 > > consumers are ports from gnome land. This patch will change package
 > > configuration built on bento. And we get libgsf package incompatible
 > > with ports I mentioned before. Pehaps better aproach in this case will
 > > be creation of slave libgsf-gnome port.
 > > Just for the record what is the reason you want this option? This list
 > > will also be usefull for precise dependency targetting if we go the way
 > > I said.
 > > Thanks.
 
 <...>
 
 > Conclusion: of all the ports *explicitly* depending on libgsf, only
 > gnumeric actually links with the gnome part (libgsf-gnome-1.so), and
 > gnumeric doesn't need it to build (it does need libgsf-1.so.9).
 >
 > Now only if things were so simple! from Mk/bsd.gnome.mk I learned that
 > USE_GNOME+=libgsf is implied by USE_GNOME+=librsvg2, which is implied by
 > USE_GNOME+=*who knows what*. Since my computer isn't exactly build-cluster
 > material, I don't have time/resources to build every single gnome port to
 > check whether they somehow cheat and link against libgsf-gnome-1.so.
 >
 > There are a number of things we can do:
 > 1) leave things the way they are (back to local patching :)
 > 2) apply the patch
 > 3) make a slave port (devel/libgsf-gnome?)
 > 4) make a new port (devel/libgsf-gnome?) depending on devel/libgsf
 >
 > I'll send a patch for option 3 if this is the preferred way. :)
 
 I lied. Here are patches for option 4. :) I think it's more correct than 
 option 3. BTW, this is also the way the debian people handle this. Although 
 most ports which use USE_GNOME+=libgsf don't need libgsf-gnome, the patch to  
 bsd.gnome.mk is there for consistency and POLA. The net result of this is:
 
 1) USE_GNOME+=libgsf wroks exactly like it did before
 2) ports that only need libgsf can just LIB_DEPENDS on it, without building
 large parts of gnome.
 
 
 sybolt
 
 --Boundary-00=_rnlTALMOmhohfY8
 Content-Type: text/x-diff;
   charset="iso-8859-1";
   name="bsd.gnome.mk.patch"
 Content-Transfer-Encoding: 7bit
 Content-Disposition: attachment;
 	filename="bsd.gnome.mk.patch"
 
 --- bsd.gnome.mk.orig	Wed Feb  4 02:23:40 2004
 +++ bsd.gnome.mk	Wed Mar 10 00:36:08 2004
 @@ -380,7 +380,7 @@
  pkgconfig_DETECT=			${LOCALBASE}/bin/pkg-config
  pkgconfig_RUN_DEPENDS=		pkg-config:${PORTSDIR}/devel/pkgconfig
  
 -libgsf_LIB_DEPENDS=			gsf-1.9:${PORTSDIR}/devel/libgsf
 +libgsf_LIB_DEPENDS=			gsf-1.9:${PORTSDIR}/devel/libgsf-gnome
  libgsf_DETECT=				${LOCALBASE}/libdata/pkgconfig/libgsf-gnome-1.pc
  libgsf_USE_GNOME_IMPL=		gnomevfs2 libbonobo
  
 
 --Boundary-00=_rnlTALMOmhohfY8
 Content-Type: text/x-diff;
   charset="iso-8859-1";
   name="libgsf.patch"
 Content-Transfer-Encoding: 7bit
 Content-Disposition: attachment;
 	filename="libgsf.patch"
 
 diff -ruN libgsf.orig/Makefile libgsf/Makefile
 --- libgsf.orig/Makefile	Sat Mar  6 20:38:46 2004
 +++ libgsf/Makefile	Wed Mar 10 00:29:02 2004
 @@ -8,7 +8,7 @@
  PORTNAME=	libgsf
  PORTVERSION=	1.8.2
  PORTREVISION=	1
 -CATEGORIES=	devel gnome
 +CATEGORIES=	devel
  MASTER_SITES=	${MASTER_SITE_GNOME}
  MASTER_SITE_SUBDIR=	sources/${PORTNAME}/1.8
  DIST_SUBDIR=	gnome2
 @@ -23,10 +23,10 @@
  USE_BZIP2=	yes
  USE_GMAKE=	yes
  INSTALLS_SHLIB=	yes
 -USE_GNOME=	gnomehack libbonobo gnomevfs2
 +USE_GNOME=	gnomehack glib20 libxml2
  USE_LIBTOOL=	yes
  CONFIGURE_ARGS=	--with-html-dir=${PREFIX}/share/doc/gsf \
 -		--disable-gtk-doc --with-gnome --with-bz2
 +		--disable-gtk-doc --with-bz2 --without-gnome
  CONFIGURE_ENV=	CPPFLAGS="-I${LOCALBASE}/include" \
  		LDFLAGS="-L${LOCALBASE}/lib"
  
 diff -ruN libgsf.orig/pkg-plist libgsf/pkg-plist
 --- libgsf.orig/pkg-plist	Sat Mar  6 20:38:46 2004
 +++ libgsf/pkg-plist	Wed Mar 10 00:29:02 2004
 @@ -1,8 +1,3 @@
 -include/libgsf-1/gsf-gnome/gsf-input-bonobo.h
 -include/libgsf-1/gsf-gnome/gsf-input-gnomevfs.h
 -include/libgsf-1/gsf-gnome/gsf-output-bonobo.h
 -include/libgsf-1/gsf-gnome/gsf-output-gnomevfs.h
 -include/libgsf-1/gsf-gnome/gsf-shared-bonobo-stream.h
  include/libgsf-1/gsf/gsf-doc-meta-data.h
  include/libgsf-1/gsf/gsf-impl-utils.h
  include/libgsf-1/gsf/gsf-infile-msole.h
 @@ -34,11 +29,7 @@
  lib/libgsf-1.a
  lib/libgsf-1.so
  lib/libgsf-1.so.9
 -lib/libgsf-gnome-1.a
 -lib/libgsf-gnome-1.so
 -lib/libgsf-gnome-1.so.9
  libdata/pkgconfig/libgsf-1.pc
 -libdata/pkgconfig/libgsf-gnome-1.pc
  share/doc/gsf/gsf-gsf-impl-utils.html
  share/doc/gsf/gsf-gsf-infile-msole.html
  share/doc/gsf/gsf-gsf-infile-zip.html
 @@ -86,6 +77,5 @@
  share/doc/gsf/right.png
  share/doc/gsf/up.png
  @dirrm share/doc/gsf
 - at dirrm include/libgsf-1/gsf-gnome
  @dirrm include/libgsf-1/gsf
  @dirrm include/libgsf-1
 
 --Boundary-00=_rnlTALMOmhohfY8
 Content-Type: text/plain;
   charset="iso-8859-1";
   name="libgsf-gnome.shar"
 Content-Transfer-Encoding: 7bit
 Content-Disposition: attachment;
 	filename="libgsf-gnome.shar"
 
 # This is a shell archive.  Save it in a file, remove anything before
 # this line, and then unpack it by entering "sh file".  Note, it may
 # create directories; files and directories will be owned by you and
 # have default permissions.
 #
 # This archive contains:
 #
 #	libgsf-gnome
 #	libgsf-gnome/files
 #	libgsf-gnome/files/patch-configure
 #	libgsf-gnome/files/patch-gsf-gnome_Makefile.in
 #	libgsf-gnome/pkg-plist
 #	libgsf-gnome/pkg-descr
 #	libgsf-gnome/distinfo
 #	libgsf-gnome/Makefile
 #
 echo c - libgsf-gnome
 mkdir -p libgsf-gnome > /dev/null 2>&1
 echo c - libgsf-gnome/files
 mkdir -p libgsf-gnome/files > /dev/null 2>&1
 echo x - libgsf-gnome/files/patch-configure
 sed 's/^X//' >libgsf-gnome/files/patch-configure << 'END-of-libgsf-gnome/files/patch-configure'
 X--- configure.orig	Tue Dec 10 17:56:28 2002
 X+++ configure	Wed Dec 25 03:03:11 2002
 X@@ -7565,6 +7565,7 @@
 X 
 X # This can be used to rebuild libtool when needed
 X LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh"
 X+$ac_aux_dir/ltconfig $LIBTOOL_DEPS
 X 
 X # Always use our own libtool.
 X LIBTOOL='$(SHELL) $(top_builddir)/libtool'
 END-of-libgsf-gnome/files/patch-configure
 echo x - libgsf-gnome/files/patch-gsf-gnome_Makefile.in
 sed 's/^X//' >libgsf-gnome/files/patch-gsf-gnome_Makefile.in << 'END-of-libgsf-gnome/files/patch-gsf-gnome_Makefile.in'
 X--- gsf-gnome/Makefile.in.orig	Sat Sep 13 06:00:30 2003
 X+++ gsf-gnome/Makefile.in	Tue Mar  9 17:16:01 2004
 X@@ -108,7 +108,7 @@
 X 
 X lib_LTLIBRARIES = $(target_libgsf_gnome)
 X 
 X-libgsf_gnome_1_la_LIBADD = $(top_builddir)/gsf/libgsf-1.la $(LIBGSF_GNOME_LIBS)
 X+libgsf_gnome_1_la_LIBADD = $(LIBGSF_GNOME_LIBS)
 X libgsf_gnome_1_la_LDFLAGS = -version-info $(VERSION_INFO)
 X libgsf_gnome_1_la_SOURCES =  	gsf-input-gnomevfs.c 		gsf-output-gnomevfs.c		gsf-input-bonobo.c		gsf-output-bonobo.c		gsf-shared-bonobo-stream.c
 X 
 X@@ -130,7 +130,7 @@
 X CPPFLAGS = @CPPFLAGS@
 X LDFLAGS = @LDFLAGS@
 X LIBS = @LIBS@
 X-libgsf_gnome_1_la_DEPENDENCIES =  $(top_builddir)/gsf/libgsf-1.la
 X+libgsf_gnome_1_la_DEPENDENCIES = 
 X libgsf_gnome_1_la_OBJECTS =  gsf-input-gnomevfs.lo \
 X gsf-output-gnomevfs.lo gsf-input-bonobo.lo gsf-output-bonobo.lo \
 X gsf-shared-bonobo-stream.lo
 END-of-libgsf-gnome/files/patch-gsf-gnome_Makefile.in
 echo x - libgsf-gnome/pkg-plist
 sed 's/^X//' >libgsf-gnome/pkg-plist << 'END-of-libgsf-gnome/pkg-plist'
 Xinclude/libgsf-1/gsf-gnome/gsf-input-bonobo.h
 Xinclude/libgsf-1/gsf-gnome/gsf-input-gnomevfs.h
 Xinclude/libgsf-1/gsf-gnome/gsf-output-bonobo.h
 Xinclude/libgsf-1/gsf-gnome/gsf-output-gnomevfs.h
 Xinclude/libgsf-1/gsf-gnome/gsf-shared-bonobo-stream.h
 Xlib/libgsf-gnome-1.a
 Xlib/libgsf-gnome-1.so
 Xlib/libgsf-gnome-1.so.9
 Xlibdata/pkgconfig/libgsf-gnome-1.pc
 X at dirrm include/libgsf-1/gsf-gnome
 END-of-libgsf-gnome/pkg-plist
 echo x - libgsf-gnome/pkg-descr
 sed 's/^X//' >libgsf-gnome/pkg-descr << 'END-of-libgsf-gnome/pkg-descr'
 XThe library is a bonobo and gnomevfs wrapper for libgsf, providing a high level
 XAPI for gnome applications to access and exchange various structured file
 Xformats.
 END-of-libgsf-gnome/pkg-descr
 echo x - libgsf-gnome/distinfo
 sed 's/^X//' >libgsf-gnome/distinfo << 'END-of-libgsf-gnome/distinfo'
 XMD5 (gnome2/libgsf-1.8.2.tar.bz2) = 3a575469f9a2880d8ca78a70ddb93e78
 END-of-libgsf-gnome/distinfo
 echo x - libgsf-gnome/Makefile
 sed 's/^X//' >libgsf-gnome/Makefile << 'END-of-libgsf-gnome/Makefile'
 X# New ports collection makefile for:	libgsf
 X# Date created:				11 September 2002
 X# Whom:					Maxim Sobolev <sobomax at FreeBSD.org>
 X#
 X# $FreeBSD: ports/devel/libgsf/Makefile,v 1.13 2004/02/04 05:19:38 marcus Exp $
 X#
 X
 XPORTNAME=	libgsf-gnome
 XPORTVERSION=	1.8.2
 XPORTREVISION=	1
 XDISTNAME=	libgsf-${PORTVERSION}
 XCATEGORIES=	devel gnome
 XMASTER_SITES=	${MASTER_SITE_GNOME}
 XMASTER_SITE_SUBDIR=	sources/${PORTNAME}/1.8
 XDIST_SUBDIR=	gnome2
 X
 XMAINTAINER=	gnome at FreeBSD.org
 XCOMMENT=	A gnome wrapper for libgsf
 X
 XLIB_DEPENDS=	gsf-1.9:${PORTSDIR}/devel/libgsf
 X
 XUSE_BZIP2=	yes
 XUSE_GMAKE=	yes
 XINSTALLS_SHLIB=	yes
 XUSE_GNOME=	gnomehack libbonobo gnomevfs2
 XUSE_LIBTOOL=	yes
 XCONFIGURE_ARGS=	--with-html-dir=${PREFIX}/share/doc/gsf \
 X		--disable-gtk-doc --with-bz2 --with-gnome
 XCONFIGURE_ENV=	CPPFLAGS="-I${LOCALBASE}/include" \
 X		LDFLAGS="-L${LOCALBASE}/lib -lgsf-1"
 X
 Xdo-build:
 X		@cd ${WRKSRC}/gsf-gnome && ${MAKE}
 X
 Xdo-install:
 X		@cd ${WRKSRC}/gsf-gnome && ${MAKE} install
 X		@${INSTALL_DATA} ${WRKSRC}/libgsf-gnome-1.pc \
 X			${LOCALBASE}/libdata/pkgconfig
 X
 X.include <bsd.port.mk>
 END-of-libgsf-gnome/Makefile
 exit
 
 
 --Boundary-00=_rnlTALMOmhohfY8--


More information about the freebsd-gnome mailing list