Date: Wed, 14 Apr 2004 16:29:27 -0700 From: Kris Kennaway <kris@obsecurity.org> To: Robin Schoonover <end@endif.cjb.net> Cc: Martin <nakal@web.de> Subject: Re: Second "RFC" on pkg-data idea for ports Message-ID: <20040414232927.GA56961@xor.obsecurity.org> In-Reply-To: <20040414131949.3A56E43D31@mx1.FreeBSD.org> References: <p0602040cbca10a7dbe52@[128.113.24.47]> <20040413121925.GB29867@voodoo.oberon.net> <p0602041abca1e49dde40@[128.113.24.47]> <407C4035.8020609@ciam.ru> <p0602041fbca1ff481e60@[128.113.24.47]> <1081896823.772.58.camel@klotz.local> <xzp1xmq90gk.fsf@dwp.des.no> <20040414131949.3A56E43D31@mx1.FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--Kj7319i9nmIyA2yE Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable 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@web.de> 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. > >=20 > > make -V > >=20 >=20 > 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 bsd.port.mk). 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.=20 >=20 > 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 bsd.port.mk. 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 bsd.port.mk where they may be easily maintained, instead of being set in 10000 individual makefiles. Kris [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. --Kj7319i9nmIyA2yE Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.4 (FreeBSD) iD8DBQFAfclXWry0BWjoQKURAsFtAJ9v0Yv3HFQVTn/+e+Cxzc63+lKdYACgmezf 5wrh6+qWnYd+rXPmmTSUQn8= =f3ys -----END PGP SIGNATURE----- --Kj7319i9nmIyA2yE--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040414232927.GA56961>