Installing/Distributing Binaries After Modular Build
R.L. Horn
lists at eastcheap.org
Fri Jan 19 02:15:16 PST 2007
On Fri, 19 Jan 2007, Daniel Stone wrote:
> On Thu, Jan 18, 2007 at 03:31:22PM -0600, R.L. Horn wrote:
>> 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...
>
> If you do, please explain why /usr is such a hideous idea beforehand,
> given that the overwhelmingly prevailing view is that /usr is fine.
/usr and /usr/local were a dodgy idea in the first place. It's a jumbled
up mess, it doesn't allow for fine control of shared filesystems, etc.,
etc., etc.
Don't get me wrong, I'm at least as guilty as anyone:
[usr]$ find bin include info lib libexec man sbin share \
-not -type d | wc
19135 19135 540121
No way I'm throwing X's 8000+ files (8801 in my current, incomplete,
installation) into that hodgepodge as well. My life is complicated enough
already. Besides, the convention has _never_ been to root X in /usr.
/usr/X11R? is traditional, and there are really strong arguments for
/opt/X11R?.
Now, with Mesa (and maybe other packages), you have a special problem.
Astonishingly, Mesa builds with compiler options that give preference to
headers in the X11 tree over those in its own source directories (or at
least did as of version 6.5.1).
The upshot of this is that, if X and Mesa headers are installed in the
same place (e.g. /usr/include) and you want to build a new version of
Mesa, you either have to hack the Mesa configuration files or remove the
old headers. Don't remove include/GL entirely, though, because X _also_
puts headers there, courtesy of glproto and xf86driproto.
Now, as it happens, all of this is moot since, if I do rewrite the
Developers' Guide, I'm only going to address build issues. Where you
install it is up to you.
More information about the xorg
mailing list