textproc/libxslt depending on libxml >= 2.6.15

Adam Weinberger adamw at FreeBSD.org
Fri Jan 14 12:03:40 PST 2005


Linus Nordberg wrote:
> Adam Weinberger <adamw at FreeBSD.org> wrote
> Fri, 14 Jan 2005 11:01:31 -0500:
> 
> |  > I was under the impression that the ports system handles these kind
> |  > of
> |  > dependencies through LIB_DEPENDS in the Makefiles.  How is portupgrade
> |  > supposed to solve this in the case where you don't have libxslt
> |  > installed to begin with?
> |  
> |  Because libxslt can't install until libxml2 is upgraded. Running
> |  'portupgrade -a' will ensure that all your ports are up-to-date. At
> |  the very least, 'portupgrade libxml2' should fix your libxslt build
> |  problem.
> 
> My build problem is fixed, thanks.
> 
> But I'd still like to understand how portupgrade can fix anything if
> the dependencies given in the Makefiles isn't correct.  Does
> portupgrade have any other sources of information than
> /var/db/pkg/pkdgb.db, built from the information in the directories
> under /var/db/pkg, which in turn comes from make install under
> /usr/ports?

The dependencies ARE correct. When you upgrade individual ports, 
portupgrade only attempts to upgrade the ports you specify. When you run 
'portupgrade -a' -- which is how you should be administering your 
installed ports -- it upgrades everything in the correct order. 
portupgrade it a pretty intelligent tool, but if you tell it to only 
perform certain operations (e.g., portupgrade libxslt), it will not be 
using its full power (e.g., realizing that libxml2 needs to be upgraded 
first).

> In the specific case, how would make in textproc/libxslt (Makefile
> 1.69) know that libxml2 should be installed before building?

Because of the line
USE_GNOME?=	gnomehack gnometarget libxml2

The effect of that line is to register a dependency upon libxml2.

# Adam


-- 
Adam Weinberger
adamw at magnesium.net || adamw at FreeBSD.org
adamw at vectors.cx    ||   adamw at gnome.org
http://www.vectors.cx


More information about the freebsd-gnome mailing list