<!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 Thu, 2010-11-25 at 22:54 -0500, zt.tmzt@gmail.com wrote:
<BLOCKQUOTE TYPE=CITE>
<PRE>
On Thu, Nov 25, 2010 at 10:11 PM, Peter Hutterer
&lt;<A HREF="mailto:peter.hutterer@who-t.net">peter.hutterer@who-t.net</A>&gt; wrote:
&gt; On Thu, Nov 25, 2010 at 09:59:38PM -0500, <A HREF="mailto:zt.tmzt@gmail.com">zt.tmzt@gmail.com</A> wrote:
&gt;&gt; &gt; Can you give us your opinion on this:
&gt;&gt; &gt;
&gt;&gt; &gt; $ util/modular/build.sh -L &gt; modlist.txt
&gt;&gt; &gt;
&gt;&gt; &gt; [edit modlist.txt: either delete lines or comment them out with a hash '#']
&gt;&gt; &gt; $ util/modular/build.sh $PREFIX --modfile modlist.txt
&gt;&gt;
&gt;&gt; Sure, I've been working more with this is in the last few days. &nbsp;I
&gt;&gt; think it would be more useful if there was a quick way to build all
&gt;&gt; server prereqs, but not drivers and input. &nbsp;Something like -o lib
&gt;&gt; would work, except the script doesn't appear to have an internal list
&gt;&gt; of the components belonging to that set. &nbsp;jhbuild is more complicated
&gt;&gt; to setup and not much better for cross compiling.
&gt;
&gt; each module has a number of configure flags, so there is no simple list for
&gt; &quot;build all server prereqs&quot;. especially in your case, which is rather far
&gt; from the default.
&gt; e.g.: if you're only building the Xorg DDX, then you don't need libX11. If
&gt; you build Xdmx, you need libX11 but (until recently) a configure flag
&gt; allowed you to then add/remove the dependency for libxcb. which in turn
&gt; requires xcb-proto and pthread-stubs, etc, etc.
&gt;
</PRE>
</BLOCKQUOTE>
Not to mention mesa. This reminds me there are 85 configure options in the server!
<BLOCKQUOTE TYPE=CITE>
<PRE>

You are correct about that, I'm a little absorbed in what I'm doing so
I'm not quite getting the general case correct here.  I have a script
in my DDX directory that disables most of that stuff (dmx, etc.).

Yeah, the XCB option is still in build.sh for some reason, I was
pretty sure you couldn't build without that.

So I guess a more general solution, such as the module lists is
needed, but short of a full build environment.  If this was to be done
with a configure script in the util/modular directory, which would in
turn call the xserver's it would know which options to use, for
instance, it could parse --disable-dmx and not build libX11.  This
seems like a heavy solution for a small problem though.

Of course, is xserver configure complained correctly when things were
missing, it could at least suggest using build.sh -o lib/libX11 or
dmx-prereqs instead of xf86-prereqs, these would be sourced from a
scripts.d in the util/modular and ${!} expanded. build_dmx_prereqs,
build_xf86_prereqs, etc.  All DDXs except for Xephyr, Xnest and Xdmx
only need the simpler set right, not libX11/libxcb?  Also, those three
can use system provided libX11 when building natively, and don't need
libX11 to be in the /opt tree, which is mostly for providing newer
version of direct server libraries (meaning the ones that have to be
built from git when testing a prerelease server) as long as /usr/lib
is in the library path.   So even in the common use case

./util/modular/build.sh -o xf86-prereqs would be useful


&gt; I think that having users keep their own module lists if they don't
&gt; want to build everything is the only maintainable approach in the long run.
&gt;
&gt; Cheers,
&gt; &nbsp;Peter
&gt;

</PRE>
</BLOCKQUOTE>
As a starter, can we replace &quot;lib only&quot; option (which seems not to be useful as is) with a<BR>
module list containing xserver + dependencies required for default configuration (no --enable or --with)?<BR>
We will most likely learn a thing or two from that exercise. <BR>
<BR>
<BLOCKQUOTE TYPE=CITE>
<PRE>
--
Timothy Meade &lt;<A HREF="mailto:zt.tmzt@gmail.com">zt.tmzt@gmail.com</A>&gt;
tmzt on freenode
_______________________________________________
<A HREF="mailto:xorg-devel@lists.x.org">xorg-devel@lists.x.org</A>: X.Org development
Archives: <A HREF="http://lists.x.org/archives/xorg-devel">http://lists.x.org/archives/xorg-devel</A>
Info: <A HREF="http://lists.x.org/mailman/listinfo/xorg-devel">http://lists.x.org/mailman/listinfo/xorg-devel</A>
</PRE>
</BLOCKQUOTE>
</BODY>
</HTML>