[PATCHES] Makefile.common speedups

Dennis Gilmore dennis at ausil.us
Wed Jul 30 17:44:38 UTC 2008


On Wednesday 30 July 2008, Adam Jackson wrote:
> Attached are two (orthogonal) patches to make evaluation of
> Makefile.common a bit faster.
>
> The first one is possibly contentious.  Currently, early-branching works
> by checking for the existence of the other branch, by using 'cvs rlog'.
> That kinda sucks, because it means you can't do 'make local' while
> disconnected, and even when connected it's not fast.  The patch changes
> it to look for the package's name in a new file,
> common/early-branched-packages.  By keeping that file together with
> Makefile.common we get pretty much the behaviour we're used to: when
> build targets change, you have to update common/.  Note that if we apply
> this patch we will also need to create that (empty) file.
>
> This would change the cvsadmin procedure for early branching, but
> hopefully not by a burdensome amount.
>
> The second one is just a refactoring to only ask rpm for %VERSION and
> %RELEASE once.  In principle, for packages that overrode both VERSION
> and RELEASE in their Makefile, this would actually make things slower,
> since now you'd be forcing rpm to run.  According to my pkgcvs checkout,
> no such packages exist.
>
> Tested locally on a 3.2GHz P4.  'time make' baseline was 1.3 seconds.
> First patch dropped that to about 0.6 seconds.  Second patch on top of
> that dropped down to about 0.38 seconds.
>
> - ajax
ive applied the second patch.

I think id rather us comment out the early branching check all together when 
we don't need it.  we probably should add some checks to make build and tag  
so that it does a cvs up on the common dir.  as it can be an issue when they 
are out of date.


-- 
Dennis Gilmore

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part.
URL: <http://listman.redhat.com/archives/fedora-buildsys-list/attachments/20080730/251e7266/attachment.sig>


More information about the Fedora-buildsys-list mailing list