| Summary: | client-side code needs to be moved out of xserver because of XID size mismatches on 64bit arch | ||
|---|---|---|---|
| Product: | xorg | Reporter: | Igor V. Kovalenko <garrison> |
| Component: | Server/General | Assignee: | Xorg Project Team <xorg-team> |
| Status: | RESOLVED FIXED | QA Contact: | Xorg Project Team <xorg-team> |
| Severity: | normal | ||
| Priority: | high | Keywords: | janitor |
| Version: | unspecified | ||
| Hardware: | x86 (IA32) | ||
| OS: | Linux (All) | ||
| Whiteboard: | |||
| i915 platform: | i915 features: | ||
The reason most of those apps are in xserver is because they use code from the xfree86 ddx directly - doing this properly means removing those dependencies or making the code they use into shared libraries with a defined API available to both the server & clients. The current discussion around replacing the PCI probe functions with such a library is one example - with that, scanpci may be able to move out of the xserver build. Sorry about the phenomenal bug spam, guys. Adding xorg-team@ to the QA contact so bugs don't get lost in future. xorgcfg (an X client), and the non-X-client utilities scanpci & xorgconfig are all now removed from the X server. The remaining utilities gtf & cvt are command line utilities, not X clients. X client code remains in the Xnest, Xdmx & Xephyr programs, but as those are both clients & servers, that's unavoidable, and have to be carefully coded to keep server & client types straight. Closing as fixed. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.
client-side code needs to be moved out of xserver because of XID size mismatches For example, on amd64 the xorgcfg program is unusable because it receives server-side typedef for XID (int32) and calls client-side library function from libXt which has client-side typedef for XID (int64) The solutions seem to be 1. Clean up the typedefs, so client and server side would agree: a) change client-side typedefs to match current server-side Keep server ABI, break client ABI - extremely undesireable b) change server-side typedefs to match current client-side Break server ABI, keep client ABI - somewhat undesireable 2. Fix every client-side app of xserver package Noone seems to care :) 3. Move client-side apps out of xserver package No issues with ABI Thus last solution seems to be the best choice.