portmaster's root and leaf ports

B Briggs rcbdyndns at bellsouth.net
Sun Sep 10 13:21:18 PDT 2006

Peter Jeremy wrote:
> On Sun, 2006-Sep-10 19:55:36 +0200, Hans Lambermont wrote:
>> What's going on here ? Aren't these all dependencies that should have
>> been tracked ? (shouldn't they be in the Trunk or Branch sections ?)
> A port can have six different dependency types (extract, patch, fetch,
> build, run, lib).  Of these, lib is a subset of run and only run
> dependencies are listed in the package information.
> Most of the root and leaf ports you list fairly clearly fall into one
> of the non-run dependencies: eg nasm is only needed to compile some
> assembler in one of the other ports, bison is only needed to compile
> some grammar files.  The ones I don't recognize as falling into this
> category are libassuan, gnupg-devel, libdts and teTeX-base.  Someone
> else may be able to expain these.

xorg and kde3 are metaports; I don't use kde3, but I removed xorg-6.9.0 
after it's 'dependencies' were installed.

libdts is also just a build dependency for me. It's just installed and 
then statically linked (in my case, mplayer).

It's funny that this came up today, because today I just wrote a utility 
that sorts the dependency tree (in order of how they should be installed 
or reinstalled from first to last). It includes the build dependencies 
in addition to the run dependencies, so it might give a different 
picture of what a leaf, branch, trunk, or root is.

portmaster just looks to see if there is or is not a +REQUIRED_BY file, 
and if in the +CONTENTS, if there is or is not a @pkgdep statement. 4 
combinations determine the leaf, branch, trunk, or root status.

B Briggs

More information about the freebsd-ports mailing list