Second "RFC" on pkg-data idea for ports

Kris Kennaway kris at
Wed Apr 14 16:29:38 PDT 2004

On Wed, Apr 14, 2004 at 07:19:47AM -0600, Robin Schoonover wrote:
> On Wed, 14 Apr 2004 15:02:35 +0200, Dag-Erling Sm?rgrav wrote:
> > Martin <nakal at> writes:
> > > I would personally like it to use XML. I'm developing a small
> > > application which is a kind of GUI for ports (works like a
> > > browser). It is very difficult to parse the Makefiles to find
> > > out which version number and which dependencies it has. Some
> > > versions (like KDE3) are just variables and I don't have an
> > > idea how to fetch them yet.
> > 
> > make -V
> > 
> I use make -V a lot, and it's slow (every time you run it, make has to
> reread all the bsd.*.mk files, such as  The speed isn't much
> of an issue when you only do one or two ports, but when you are examining
> the entire ports collection, you notice. 
> That said, I'd still rather use a makefile based ports system anyway.

Necessarily, *any* file format you choose will need to parse
auxilliary files analogous to  There's just no getting
around the fact that ports rely on a lot of infrastructure and
conditional evaluation to set their variables (although it can be
optimized relative to what we have in CVS today [1]).

Note that it's intentional that a lot of things are centralized in where they may be easily maintained, instead of being set
in 10000 individual makefiles.


[1] As a test, I recently was able to cut index build times by 60%
from 5 to a little over 2 minutes on test box with fast disks, by
stripping out (almost) everything non-essential from the 'make
describe' code path.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url :

More information about the freebsd-current mailing list