Looking for speed increases in "make index" and pkg_version for ports

Stephen Montgomery-Smith stephen at math.missouri.edu
Mon May 28 16:34:26 UTC 2007


Jeremy Chadwick wrote:
> On Sun, May 27, 2007 at 03:52:16PM -0500, Stephen Montgomery-Smith wrote:
>>  I have been thinking a lot about looking for speed increases for "make 
>>  index" and pkg_version and things like that.  So for example, in 
>>  pkg_version, it calls "make -V PKGNAME" for every installed package. Now 
>>  "make -V PKGNAME" should be a speedy operation, but the make has to load in 
>>  and analyze bsd.port.mk, a quite complicated file with about 200,000 
>>  characters in it, when all it is needing to do is to figure out the value of 
>>  the variable PKGNAME.
> 
> I have a related question, pertaining to "make all-depends-list" and the
> utter atrocity that is the make variable ALL-DEPENDS-LIST.  If you don't
> know what it is, look for ^ALL-DEPENDS-LIST around line 5175, in
> bsd.ports.mk.

I posted this to ports at freebsd.org, but now I am realizing that it is 
hackers at freebsd.org that gets more responses.  Anyway, here is a 
multithreaded program "all-depends-list" that can get you double the 
speed on dual processor systems, and even some small speed gains on 
single processor systems.  E.g.

all-depends-list /usr/ports/x11/xorg

http://www.math.missouri.edu/~stephen/all-depends-list.c



More information about the freebsd-hackers mailing list