Date: Tue, 22 May 2007 09:35:32 -0500 From: Stephen Montgomery-Smith <stephen@math.missouri.edu> To: Kris Kennaway <kris@obsecurity.org> Cc: gnome@freebsd.org, freebsd-ports@freebsd.org Subject: Re: More speed increases for make-ing ports Message-ID: <4652FFB4.8060107@math.missouri.edu> In-Reply-To: <20070522071941.GB59910@xor.obsecurity.org> References: <465291FB.4010901@math.missouri.edu> <20070522071941.GB59910@xor.obsecurity.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Kris Kennaway wrote: > On Tue, May 22, 2007 at 01:47:23AM -0500, Stephen Montgomery-Smith wrote: > >> This small modification cuts off about 25% off pkg_version on my system. >> >> Basically bsd.gnome.mk recursively finds all the dependencies, but many >> of them are listed many times. This makes make work extra hard when it >> doesn't have to. I simply weed out the repeated entries. >> >> > > >> --- bsd.gnome.mk-orig Tue May 22 01:29:08 2007 >> +++ bsd.gnome.mk Tue May 22 01:29:22 2007 >> @@ -655,6 +655,8 @@ >> _USE_GNOME+= ${${component}_USE_GNOME_IMPL} ${component} >> . endfor >> >> +_USE_GNOME!=(for i in ${_USE_GNOME}; do ${ECHO_CMD} $$i; done) | sort -u >> + >> # Setup the GTK+ API version for pixbuf loaders, input method modules, >> # and theme engines. >> PLIST_SUB+= GTK2_VERSION="${GTK2_VERSION}" >> > > Be careful, != assignments may add thousands of process invocations to > large targets like 'make index' and can slow it down dramatically. > > Kris > > > Thanks for the warnings. It turns out that this can be done without "!=", but even if this were not the case, I think that in this situation the savings would definitely outweigh the costs. For example, this dramatically improves the time for invocations of "make -V PKGNAME" for deskutils/alacarte (on my system from about 1.5 seconds to .3 seconds). It only affects a few ports, but enough, I think, to increase the speed of "make index" noticeably albeit not dramatically. Stephen
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4652FFB4.8060107>