<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>[RFC PATCH] Mock multi-config build patch -- prepare</TITLE>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.3790.418" name=GENERATOR></HEAD>
<BODY>
<DIV dir=ltr align=left><SPAN class=772280222-10052006><FONT face=Arial
color=#0000ff size=2>And here is the multi-srpm, multi-config patch, built on
top of the previous two. The changes are relatively minor, just re-indenting the
last part of main(), no significant code changes except changing options.chroot
to an array and adding a loop.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=772280222-10052006><FONT face=Arial
color=#0000ff size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=772280222-10052006><FONT face=Arial
color=#0000ff size=2>Please let me know what you think.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=772280222-10052006><FONT face=Arial
color=#0000ff size=2>--</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=772280222-10052006><FONT face=Arial
color=#0000ff size=2>Michael</FONT></SPAN></DIV><BR>
<BLOCKQUOTE dir=ltr
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #0000ff 2px solid; MARGIN-RIGHT: 0px">
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B> fedora-buildsys-list-bounces@redhat.com
[mailto:fedora-buildsys-list-bounces@redhat.com] <B>On Behalf Of
</B>Michael_E_Brown@Dell.com<BR><B>Sent:</B> Wednesday, May 10, 2006 4:21
PM<BR><B>To:</B> fedora-buildsys-list@redhat.com<BR><B>Subject:</B> [RFC
PATCH] Mock multi-config build patch -- prepare<BR></FONT><BR></DIV>
<DIV></DIV><!-- Converted from text/rtf format -->
<P><FONT face=Arial size=2>All,</FONT>
<BR> <FONT face=Arial size=2>Here is
stage one of a patch series to implement multi-config builds with mock. I
believe this patch stands on its own, so I am sending it separately. It is
applied on top of the earlier patch today to do multi-srpm builds.</FONT></P>
<P> <FONT face=Arial size=2>The
patch simply re-arranges main() by taking and putting several sections into
their own function. For example, the clean and prep sections were very similar
and have been factored into their own function. The setting of defaults for
config_opts is moved into its own function.</FONT></P>
<P> <FONT face=Arial size=2>The
result is no functional change to the operation of mock, but it makes the next
patch in my series much easier, which is the addition of multiple config
builds, like this:</FONT></P>
<P> <FONT face=Arial size=2>$ mock
-r CFG1 -r CFG2 -r CFG3 -r CFG4 … srpm1 srpm2 srpm3 …</FONT> </P>
<P> <FONT face=Arial size=2>The next
patch in the series will be a straightforward patch to implement the above on
top of this patch. The last patch I would like to send would be to be able to
run the prep() sections for the different configs in parallel (simple, via
fork()) to reduce setup time.</FONT></P>
<P><FONT face=Arial size=2>Comments welcome.</FONT> <BR><FONT face=Arial
size=2>--</FONT> <BR><FONT face=Arial size=2>Michael</FONT> </P><BR>
<P><FONT face=Arial color=#000000 size=2><<mock-multicfg.patch>>
</FONT></P></BLOCKQUOTE></BODY></HTML>