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>
index | next in thread | previous in thread | raw e-mail
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
home |
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4652FFB4.8060107>
