[Xcb] toying XCB

Bart Massey bart@cs.pdx.edu
Wed, 12 Nov 2003 10:44:45 -0800

In message <16306.30863.897095.57858@scream.east.isi.edu> you wrote:
> On Nov 12, Bart Massey wrote:
>  > In some ways, I'd like to see /usr/X11R6 die.  In some ways
>  > it's nice: I switch X bits all the time, and it is nice to
>  > be able to move them out of the way with 1 command.
> Sure that's nice, but doesn't the same reasoning apply to hundreds of
> other programs as well? 

Consider /usr/local, which pkgconfig looks in also.  IMHO
it's worth admitting that users are at least as likely to
have a /usr/X11R6 as a /usr/local.

> I for one, would definitely not like to have hundreds of
> package-specific directories under /usr.

I understand.  My rule of thumb for a long time now is that
large collections of interdependent apps, libraries, etc
deserve their own subtree.  Most folks, including me, have a
/opt that fills that role, among others.  I think the
broader question of where bits should live in a modern UNIX
install is important.  The LSB folks obviously have

>  > The quick fix is just to add /usr/X11R6/lib/pkgconfig to its
>  > default search path.  (Making folks set their pkgconfig
>  > environment variable as a normal part of operation is
>  > hopeless IMHO.)
> I agree that's hopeless, but I don't agree with the
> cure. We're obviously talking about new installs here. Is
> there any reason that the xcb packages should have a
> non-standard default prefix? (where I'm defining
> /usr/X11R6 as non-standard from the point of view of
> pkgconfig).

Right now, /usr/X11R6 is a de-facto standard.  In fact, my
/usr/X11R6/lib/pkgconfig had several things in it before XCB
dumped more in there.  You may reasonably argue that
/usr/X11R6 is a stupid standard and should be changed; I
don't know how to do that. I don't want XCB/XCL to lead some
charge to fix this broader problem---we have enough to do
already. :-)

> If users were forced to set prefix=/usr/X11R6 in order to get packages
> there, then it would be reasonable to expect them to fix up
> PKG_CONFIG_PATH as well, no?

Users expect, sensibly IMHO, that giving the right flags to
autoconf is all they need to do to get their build to work.
As I said previously, one could hack up the XCB autoconf to
do the right thing, but I'm not very excited about this...

> Or am I missing something that would make it difficult to run xcb out
> of /usr/local or /usr ?

Building XCB depends on having installed Xproto and Xau
pkgconfig info.  I think one really shouldn't install a
separate copy of these packages outside of /usr/X11R6 as of
today, because things could get very confused/confusing.  So
fixing XCB to install in /usr doesn't really fix the
problem---it just moves it. :-)  (c.f. Dilbert's "phantom
pager syndrome".)

I guess I believe that as X11 libraries designed to
supplant/supplement Xlib, XCB/XCL should live in the same
place as Xlib.  The broader question of where that place
should be is interesting.  But I really don't want that to
be the XCB project's fight right now. :-)

> Just my two cents.