[Xquartz-dev] libX11 compilation

Ben Byer bbyer at apple.com
Sat Dec 1 19:36:29 PST 2007


It does -- see xcb_connect in http://www.opensource.apple.com/darwinsource/10.5/X11libs-16/libxcb/libxcb-1.0/src/xcb_util.c 
.

However, like I said -- I never tested it.  I made the patch because I  
was having a hard time getting the Xtrans patch working, but at some  
point after I had already made that patch, I got the Xtrans code  
working, so we just used it instead. :/

On Dec 1, 2007, at 7:26 PM, Jeremy Huddleston wrote:

> Ok... does libxcb that comes with darwin not have that patch?  If  
> that's the case, then I'll try adding a fixed libxcb and xcb-enabled  
> libX11 to the package... but that doesn't explain why it was working  
> on my macbook... unless maybe I compiled a new libxcb with that fix  
> and forgot about it...
>
> --Jeremy
>
> On Dec 1, 2007, at 19:12, Ben Byer wrote:
>
>>
>> On Dec 1, 2007, at 5:11 PM, Jeremy Huddleston wrote:
>>
>>> Ben,
>>>
>>> How did you compile the libX11 that you have in your  
>>> freedesktop.org webspace?  I compiled my own version, and it works  
>>> fine on my macbook, but when I try it on my powerbook G4 or my  
>>> powermac G5, I get an error when trying to open the display:
>>>
>>> (16:51:44 Sat Dec 01 2007 jeremy at yuffie Power Macintosh)
>>> ~ $ xmodmap
>>> xmodmap:  unable to open display '/tmp/launch-HMCPPG/:0'
>>>
>>> ---
>>>
>>> I compiled mine with:
>>> CFLAGS="${CFLAGS} -Wall -O2 -arch i386 -arch ppc -pipe -arch  
>>> x86_64 -arch ppc64 -D__DARWIN__"
>>> and
>>> ./configure -prefix=/usr/X11 --mandir=/usr/X11/man --disable- 
>>> dependency-tracking --disable-xf86bigfont --disable-static
>>
>>
>> Check out http://www.opensource.apple.com/darwinsource/10.5/X11libs-16/libX11/conf_flags
>>
>> I think it's the --disable-xcb.  Yes, this is stupid.  I have a  
>> patch to Xcb to support launchd:
>>
>> --- libxcb-1.0/src/xcb_util.c~	2006-11-21 20:20:15.000000000 -0800
>> +++ libxcb-1.0/src/xcb_util.c	2007-03-23 15:17:21.000000000 -0700
>> @@ -231,10 +231,15 @@
>>    xcb_connection_t *c;
>>    xcb_auth_info_t auth;
>>
>> +    if(displayname && strlen(displayname)>11 && ! 
>> strncmp(displayname, "/tmp/launch", 11))
>> +      fd = _xcb_open_unix(displayname);
>> +    else {
>>    if(!xcb_parse_display(displayname, &host, &display, screenp))
>>        return (xcb_connection_t *) &error_connection;
>>    fd = _xcb_open(host, display);
>>    free(host);
>> +    }
>> +
>>    if(fd == -1)
>>        return (xcb_connection_t *) &error_connection;
>>
>> @@ -254,10 +263,14 @@
>>    int fd, display = 0;
>>    char *host;
>>
>> +    if(displayname && strlen(displayname>11) && ! 
>> strncmp(displayname, "/tmp/launch", 11))
>> +      fd = _xcb_open_unix(displayname);
>> +    else {
>>    if(!xcb_parse_display(displayname, &host, &display, screenp))
>>        return (xcb_connection_t *) &error_connection;
>>    fd = _xcb_open(host, display);
>>    free(host);
>> +    }
>>    if(fd == -1)
>>        return (xcb_connection_t *) &error_connection;
>>
>> ... theoretically that patch is applied to the libxcb that shipped  
>> with Leopard, but I never got around to testing it.
>> --
>> Ben Byer
>> CoreOS / BSD Technology Group, XDarwin maintainer
>>
>> _______________________________________________
>> Xquartz-dev mailing list
>> Xquartz-dev at lists.macosforge.org
>> http://lists.macosforge.org/mailman/listinfo/xquartz-dev
>
> _______________________________________________
> Xquartz-dev mailing list
> Xquartz-dev at lists.macosforge.org
> http://lists.macosforge.org/mailman/listinfo/xquartz-dev

Ben Byer
CoreOS / BSD Technology Group, XDarwin maintainer



More information about the Xquartz-dev mailing list