After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 319994 - Xevie support checks in configure.in do not work on Fedora Core 4
Xevie support checks in configure.in do not work on Fedora Core 4
Status: RESOLVED FIXED
Product: at-spi
Classification: Platform
Component: build
unspecified
Other Linux
: Normal normal
: ---
Assigned To: bill.haneman
bill.haneman
Depends on:
Blocks:
 
 
Reported: 2005-10-27 16:04 UTC by Willie Walker
Modified: 2006-07-19 11:33 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Patch to configure.in (830 bytes, patch)
2005-10-27 16:04 UTC, Willie Walker
needs-work Details | Review
this one works better - adds -lXext to the AC_LIB check for XevieQueryVersion (837 bytes, patch)
2006-07-19 11:33 UTC, bill.haneman
committed Details | Review

Description Willie Walker 2005-10-27 16:04:00 UTC
Distribution/Version: Fedora Core 4

1. On Fedora Core 4, run ./autogen.sh --prefix=/usr
2. The XEvie support will never be built

The problem is that the Xevie.h file requires the include of X11/Xdefs.h to work.  So...without this, the 
AC_CHECK_HEADER test around line 165 of configure.in will fail.

I dug for docs on AC_CHECK_HEADER, and I came up with the attached patch.  I'm not fully comfortable 
with this patch, though, as I'm not quite sure what logic is going on here.  To me, it seems like the 
following:

o Some distros will wrap all extensions into one shared library, libXext (is this true?), so the first check 
sees if there is some xevie random symbol (XevieStart) in libXext.

o Failing the first check, it may be the case that the distro ships separate shared libraries for each 
extension.  So, the next check to see if there is some random xevie symbol (XevieQueryVersion) in 
libXevie.  If there is, it then makes sure the Xevie header file is OK (I'm not sure why the first check 
doesn't check for the header file as well).

The changes I made were as follows:

o For the second check, use libXevie instead of libXext to find the symbol.  It seems like this is the right 
thing to do.  But...I am puzzled by one checking for XevieStart and the other checking for 
XevieQueryExtension.  Perhaps there is some history or something else here I just don't understand.

o Add Xlib.h to the list of includes that will be used for AC_CHECK_HEADER.  Without this, the Xevie 
header file will produce compilation errors due to missing definitions (e.g., Display).

Will
Comment 1 Willie Walker 2005-10-27 16:04:39 UTC
Created attachment 53954 [details] [review]
Patch to configure.in
Comment 2 Willie Walker 2005-10-28 14:18:41 UTC
Just to follow up on this - I'm not sure one actually wants to enable the XEVIE
support in the AT-SPI on Fedora Core 4 just yet.  When I do so, the X Window
System Server seg faults somewhere in CoreProcessKeyboardEvent the first time I
press a key, apparently regardless if an assistive technology is running or not.
 I'm guessing this is in Xserver dix/events.c, but the X server I'm using has no
debug symbols in it.
Comment 3 bill.haneman 2006-07-14 11:11:39 UTC
Will, I think your patch is correct.

I also think it's probably time to go ahead and commit it; if FC4 is still busted then I suppose we can ask distros/rool-your-own users to either re-build w Xevie support turned off (--enable-xevie=no) or upgrade their X server.
Comment 4 Willie Walker 2006-07-14 12:23:14 UTC
Thanks Bill!  A bigger question here is whether XEvIE is going to be around much longer.  I was recently given the impression by Keith Packard that XEvIE is not being well supported and is on its death bed.  :-(
Comment 5 bill.haneman 2006-07-16 01:43:34 UTC
Well, Xevie is absolutely essential to accessibility.

It's a question for our X folks I suppose, as they are the ones who crafted and pushed for the specific implementation and APIs.
Comment 6 bill.haneman 2006-07-19 11:17:09 UTC
marking patch "needs work" since it breaks Xevie detection on JDS3.
Comment 7 bill.haneman 2006-07-19 11:33:02 UTC
Created attachment 69169 [details] [review]
this one works better - adds -lXext to the AC_LIB check for XevieQueryVersion

I am committing this patch - however I'd appreciate info as to whether it works correctly on other Xserver configurations.