Installing/Distributing Binaries After Modular Build

R.L. Horn lists at
Thu Jan 18 13:31:22 PST 2007

On Thu, 18 Jan 2007, Barry Scott wrote:

> Each component uses the header files from /usr. You cannot, to my 
> knowledge, tell configure where you are staging the kits so that you 
> leave /usr untouched.

You almost certainly can, but it involves running a wrapper around 
pkg-config and isn't very elegant.  I've written a paper on the subject, 
but it's never gotten beyond first draft as I'm just not all that 
interested in testing it with a full build.  Anyone who wants it, feel 
free to email me.

> This means that after building each component you must install it into 
> /usr.

But you shouldn't.  There are some serious problems with throwing X in 
with the general population, particularly where Mesa is concerned. 
"/opt/X11R7" is probably the sexiest install location, but "/usr/X11R6," 
"/usr/X11R7," "/opt/X11R6," etc. are all good.

That there are distributors actually throwing X into /usr really shocked 
me (it probably shouldn't have: I got so POd at Red Hat that I swore off 
linux distributions nine years ago).

Further complicating things is the fact that a lot of what ends up in 
lib/X11 and share/X11 often needs relocating to /etc/X11 (with appropriate 

>  You can also use DESTDIR to make a kit for a single component.

My build scripts did two installs for each module.  A DESTDIR install to 
pick up a manifest ("find $DESTDIR -not -type d -printf '/%P\n'") and the 
install proper.  This was a complete build to a new directory, however.  I 
haven't decided how I'm going to handle incremental upgrades yet.

I've been threatening to rewrite the Developers' Guide since August.  I've 
been putting it off for R7.2, but maybe that was a mistake...

More information about the xorg mailing list