<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
  <META NAME="GENERATOR" CONTENT="GtkHTML/3.26.0">
</HEAD>
<BODY>
On Fri, 2010-09-24 at 11:23 -0400, Trevor Woerner wrote:<BR>
<BLOCKQUOTE TYPE=CITE>
    <TT><FONT COLOR="#1a1a1a">I understand that people want to create their own list(s), but my</FONT></TT><BR>
    <TT><FONT COLOR="#1a1a1a">understanding is that whatever the user selects must be built in a</FONT></TT><BR>
    <TT><FONT COLOR="#1a1a1a">specific order, otherwise their build will not succeed.</FONT></TT><BR>
</BLOCKQUOTE>
Correct. You need to know what you are doing when creating a new list.<BR>
For example, it could be a list for modules going into 7..6.<BR>
<BLOCKQUOTE TYPE=CITE>
    <TT><FONT COLOR="#1a1a1a"> I thought the</FONT></TT><BR>
    <TT><FONT COLOR="#1a1a1a">list returned by &quot;build.sh -L&quot; was a list of all possible modules xorg</FONT></TT><BR>
    <TT><FONT COLOR="#1a1a1a">has to offer, listed in the order they must be built in order to have</FONT></TT><BR>
    <TT><FONT COLOR="#1a1a1a">a successful build.</FONT></TT><BR>
</BLOCKQUOTE>
99% correct. That list (in build.sh) is result of what the developers/maintainers<BR>
think is useful. It tends to be &quot;more&quot; rather than &quot;less&quot;. Last year a number of protocol<BR>
extensions were removed, but the code is still there in the repo and most likely still in use<BR>
on some system.<BR>
<BLOCKQUOTE TYPE=CITE>
    <TT><FONT COLOR="#1a1a1a"> So my future patch to allow the user to specify an</FONT></TT><BR>
    <TT><FONT COLOR="#1a1a1a">arbitrary list has logic to compare the user-supplied list to the</FONT></TT><BR>
    <TT><FONT COLOR="#1a1a1a">&quot;build.sh -L&quot; list so that it can build the arbitrary list in the</FONT></TT><BR>
    <TT><FONT COLOR="#1a1a1a">correct order.</FONT></TT><BR>
</BLOCKQUOTE>
Not at all. The user-supplied list must be in the correct order.<BR>
You won't start from scratch here. Take the big list and trim it. (See below)<BR>
<BR>
<BLOCKQUOTE TYPE=CITE>
    <TT><FONT COLOR="#1a1a1a">So I was wondering if having an in-order list of all possible xorg</FONT></TT><BR>
    <TT><FONT COLOR="#1a1a1a">modules (which is what I assumed &quot;build.sh -L&quot; was providing) might be</FONT></TT><BR>
    <TT><FONT COLOR="#1a1a1a">of some use to tools outside build.sh.</FONT></TT><BR>
</BLOCKQUOTE>
Absolutely. As an implementation detail, build.sh may contain a hard-coded default list<BR>
which is exported through the -L option. A user can then customize the list, say, <BR>
remove a pile of video drivers, and use it back with build.sh as a user defined list.<BR>
<BR>
<BLOCKQUOTE TYPE=CITE>
    <BR>
    <TT><FONT COLOR="#737373">&gt; I'll have a look at your patch later today.</FONT></TT><BR>
    <BR>
    <TT><FONT COLOR="#1a1a1a">The most recent patch I provided is the patch to allow a user to</FONT></TT><BR>
    <TT><FONT COLOR="#1a1a1a">perform arbitrary git or make commands over the components they're</FONT></TT><BR>
    <TT><FONT COLOR="#1a1a1a">processing. I was hoping that patch would go through first, then a</FONT></TT><BR>
    <TT><FONT COLOR="#1a1a1a">cleanup for &quot;no-quit&quot;, then the &quot;arbitrary list&quot; patch. I was then</FONT></TT><BR>
    <TT><FONT COLOR="#1a1a1a">hoping further cleanups and features would also be considered.</FONT></TT><BR>
</BLOCKQUOTE>
Sounds like a plan.<BR>
<BLOCKQUOTE TYPE=CITE>
    <BR>
    <TT><FONT COLOR="#1a1a1a">As we've already seen, a patch I provided a couple days ago has</FONT></TT><BR>
    <TT><FONT COLOR="#1a1a1a">already needed to be rebased. Had I provided all the patches at once</FONT></TT><BR>
    <TT><FONT COLOR="#1a1a1a">it just would have meant more work. I'd also like to see a cleanup go</FONT></TT><BR>
    <TT><FONT COLOR="#1a1a1a">in before the &quot;arbitrary list&quot; patch since it would reduce the size of</FONT></TT><BR>
    <TT><FONT COLOR="#1a1a1a">any future work/patches.</FONT></TT><BR>
    <BR>
</BLOCKQUOTE>
It's a pain, isn't? All you need is timing and luck.<BR>
<BR>
<BR>
With those 2 features, any-list and any-cmd, it will make build.sh a powerful script,<BR>
not to mention other scripts that can written using &quot;any-list&quot;.<BR>
<BR>
<BR>
</BODY>
</HTML>