ports/115870: [DEPS] graphics/cairo reduce X dependencies
Alexander Leidinger
Alexander at Leidinger.net
Tue Sep 4 02:22:16 PDT 2007
Quoting Pav Lucistnik <pav at FreeBSD.org> (Tue, 04 Sep 2007 10:22:51 +0200):
> Alexander Leidinger píše v út 04. 09. 2007 v 00:07 +0200:
> > Quoting pav at FreeBSD.org (Mon, 3 Sep 2007 21:01:52 GMT):
> >
> > > Synopsis: [DEPS] graphics/cairo reduce X dependencies
> > >
> > > Responsible-Changed-From-To: gnome->pav
> > > Responsible-Changed-By: pav
> > > Responsible-Changed-When: Mon Sep 3 21:01:41 UTC 2007
> > > Responsible-Changed-Why:
> > > I'll give these a workout on pointyhat
> >
> > I expect some fallout of this (feel lucky if there isn't any). ATM I'm
> > working on adding some explicit dependencies to all my installed ports.
> > With /usr/ports/Tools/scripts/explicit_lib_depends.sh this is very
> > easy (you can copy&paste and need only a small amount of work by hand),
> > but time consuming.
> >
> > I found several ports which contain a reference to cairo, pango and
> > various Xorg libs in its binaries, but no dependency in the port
> > Makefile.
>
> That's probably fine if they depend on gtk20 - sounds like an usual set
> of indirect deps to me.
Yes.
> What do you mean by 'explicit' depends? I don't want to list every
> single each lib in every single each port, when I can rely on indirect
> dependencies via ports like gtk20.
Explicit dependencies makes it more easy to just rebuild those ports
which use a specific lib which just had an ABI change. Our users want
this. And the script mentioned above makes this very easy. Install the
port you maintain, run the script and copy&paste. It's more reliable
than what we have now (making more or less educated guesses yourself).
If we have had this some years ago, we wouldn't had to write a gnome
update script. We just would have needed to run the above script over
an installed gnome to get the lib dependencies right.
I have some minor improvements for the script in progress, but as it is
now it is already very usable.
Here's the output of a run for epiphany so you can get an idea about
its dependencies (I collapse the += parts in my patches, collapsing
them in the script is on the TODO list, but correctness is more
important ATM):
---snip---
USE_GETTEXT=yes
USE_GNOME+=atk
USE_GNOME+=esound
USE_GNOME+=gconf2
USE_GNOME+=glib20
USE_GNOME+=gnomedesktop
USE_GNOME+=gnomevfs2
USE_GNOME+=gtk20
USE_GNOME+=libartlgpl2
USE_GNOME+=libbonobo
USE_GNOME+=libbonoboui
USE_GNOME+=libglade2
USE_GNOME+=libgnome
USE_GNOME+=libgnomecanvas
USE_GNOME+=libgnomeui
USE_GNOME+=libxml2
USE_GNOME+=libxslt
USE_GNOME+=orbit2
USE_GNOME+=pango
USE_ICONV=yes
USE_XORG+=ice
USE_XORG+=sm
USE_XORG+=x11
USE_XORG+=xau
USE_XORG+=xcursor
USE_XORG+=xdmcp
USE_XORG+=xext
USE_XORG+=xfixes
USE_XORG+=xi
USE_XORG+=xinerama
USE_XORG+=xrandr
USE_XORG+=xrender
audiofile:${PORTSDIR}/audio/libaudiofile
avahi-client:${PORTSDIR}/net/avahi
avahi-common:${PORTSDIR}/net/avahi
avahi-glib:${PORTSDIR}/net/avahi
cairo:${PORTSDIR}/graphics/cairo
dbus-1:${PORTSDIR}/devel/dbus
dbus-glib-1:${PORTSDIR}/devel/dbus-glib
expat:${PORTSDIR}/textproc/expat2
fontconfig:${PORTSDIR}/x11-fonts/fontconfig
freetype:${PORTSDIR}/print/freetype2
gnome-keyring:${PORTSDIR}/security/gnome-keyring
gtkembedmoz:${PORTSDIR}/unknown
jpeg:${PORTSDIR}/graphics/jpeg
mozjs:${PORTSDIR}/unknown
nspr4:${PORTSDIR}/devel/nspr
plc4:${PORTSDIR}/devel/nspr
plds4:${PORTSDIR}/devel/nspr
png:${PORTSDIR}/graphics/png
popt:${PORTSDIR}/devel/popt
python2.5:${PORTSDIR}/lang/python25
startup-notification-1:${PORTSDIR}/x11/startup-notification
xpcom:${PORTSDIR}/unknown
xpcom_core:${PORTSDIR}/unknown
---snip---
I know what the reason for the "unknown" ones is and I already have an
idea how to fix the problem in some cases (I'm not sure we can fix it
in all cases). This problem appears just for a few ports (one problem
case is e.g. those ports which make use of LD_LIBRARY_PATH in scripts
instead of adding the path with ldconfig).
> > When I finish with adding the dependencies, I try a tinderbox run and
> > provide the patch to gnome@ afterwards.
>
> You might want to hold this off after GNOME 2.20 hits the tree - it will
> be a massive change that would almost certainly invalidate your work.
Ok, I skip the GNOME ports then.
Bye,
Alexander.
--
Is he the MAGIC INCA carrying a FROG on his shoulders?? Is the FROG
his GUIDELIGHT?? It is curious that a DOG runs already on the
ESCALATOR ...
http://www.Leidinger.net Alexander @ Leidinger.net: PGP ID = B0063FE7
http://www.FreeBSD.org netchild @ FreeBSD.org : PGP ID = 72077137
More information about the freebsd-gnome
mailing list